
    i                         S r SSKrSSKrSSKJrJr  S rS rS r	S r
\R                  R                  S/ S	Q5      S
 5       rS rS rS rS rS rS rS rg)zO
Tests the input parsing for opt_einsum. Duplicates the np.einsum input tests.
    N)contractcontract_pathc                    Sn[         R                  " / SQ5      n[        X5       VVs0 s H  u  p4X4_M	     nnn/ nU R                  SS5      n U R	                  S5      S   R	                  S5      nU HC  nU Vs/ s H  oU   PM	     n	nUR                  [         R                  R                  " U	6 5        ME     U$ s  snnf s  snf )N
abcdefghij)
            r	   r   r      r
   r	   z...ijz->r   ,)nparrayzipreplacesplitappendrandomrand)
stringcharssizescsviewstermstermxdimss
             [/var/www/html/banglarbhumi/venv/lib/python3.13/site-packages/opt_einsum/tests/test_input.pybuild_viewsr!      s    EHH34E!%/0/daQT/E0E^^E4(FLLq!'',E"&'$Qa$'RYY^^T*+  L 1 (s   B<:Cc                  
   [         R                  " [        5         [        SS5        S S S 5        [         R                  " [        5         [        SSSS9  S S S 5        [         R                  " [        [        45         [        SSSS9  S S S 5        [         R                  " [        5         [        SSSS9  S S S 5        [         R                  " [        5         [        SSS	S
9  S S S 5        [         R                  " [        5         [        SSSS9  S S S 5        [         R                  " [        5         [        S6   S S S 5        [         R                  " [        5         [        SSS5        S S S 5        [         R                  " [        5         [        SSS5        S S S 5        [         R                  " [        5         [        SSS5        S S S 5        [         R                  " [        5         [        SSS5        S S S 5        Sn [        U 5      n[         R                  " [        5         [        US   [        S/[        S//5        S S S 5        [         R                  " [        5         [        US   [        [        5       /[        S/5        S S S 5        g ! , (       d  f       GN{= f! , (       d  f       GN_= f! , (       d  f       GN== f! , (       d  f       GN!= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GNv= f! , (       d  f       GNX= f! , (       d  f       GN= f! , (       d  f       g = f)Nr    testoutW)orderblah)castingbad_data_type)dtype)bad_arg)?NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNz->,->r
   z&,a->za,a->&
...a->...aa)pytestraises	TypeErrorr   
ValueErrorr!   Ellipsisdict)r   r   s     r    test_type_errorsr6      s9   	y	!A 
" 
y	!QF# 
"
 
	:.	/Qc" 
0 
z	"Q' 
# 
y	!Qo. 
" 
y	!Q" 
" 
y	!-  
" 
z	"!Q 
# 
z	"!Q 
# 
z	"1a  
# 
z	"1a  
# FE 
y	!qHa=8cU*;< 
" 
y	!qHdf-#? 
"	!g 
"	! 
"	!
 
0	/ 
#	" 
"	! 
"	! 
"	! 
#	" 
#	" 
#	" 
#	" 
"	! 
"	!s   J
J.>K ,KK$K66	L!LL,L>1M.M".%M4
J+.
J= 
K
K!$
K36
L
L
L),
L;>
M
M"
M14
Nc            	         [         R                  " [        5         [        S5        S S S 5        [         R                  " [        5         [        SS5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        S5        S S S 5        [         R                  " [        5         [        SSS5        S S S 5        [         R                  " [        5         [        SSS/S/5        S S S 5        [         R                  " [        5         [        SS/5        S S S 5        [         R                  " [        5         [        SS5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        S	S5        S S S 5        [         R                  " [        5         [        S
SS/5        S S S 5        [         R                  " [        5         [        SS5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        SSS/5        S S S 5        [         R                  " [        5         [        SSS/SS//5        S S S 5        [         R                  " [        5         [        S[
        R                  " S5      R                  SS5      5        S S S 5        [         R                  " [        5         [        S[
        R                  " S5      R                  SS5      5        S S S 5        [         R                  " [        5         [        S[
        R                  " S5      R                  SS5      5        S S S 5        [         R                  " [        5         [        SSS/SS//[
        R                  " S5      R                  SS5      S9  S S S 5        g ! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GNf= f! , (       d  f       GNG= f! , (       d  f       GN+= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GNu= f! , (       d  f       GNV= f! , (       d  f       GN9= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN`= f! , (       d  f       GNA= f! , (       d  f       GN"= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN}= f! , (       d  f       GN<= f! , (       d  f       g = f)Nr#   r   zi%...z...j$zi->&r   ir   z...izi...jzi...zij...zi..z.i...zj->..jzj->.j...zi->ijzij->jijiir   r   r   zii->ii->i   r	   r%   )r0   r1   r3   r   r2   r   arangereshape     r    test_value_errorsr@   T   s   	z	" 
# 
y	!A 
" 
z	"1a&! 
#	z	"1a&! 
#	z	"!Q  
# 
z	" 
# 
z	"Q 
#	z	"a!qc" 
#	z	"qc 
# 
z	"a 
#	z	"1v 
#	z	" 
#	z	"1a&! 
#	z	" 
#	z	"1a&! 
# 
z	"A 
#	z	"1a&! 
#	z	"Aq6" 
#	z	"aV$ 
# 
z	"1a&! 
#	z	"1a&! 
#	z	"!Q  
# 
z	"1a&! 
# 
z	"aVaV,- 
# 
z	"ryy|++Aq12 
#	z	""))A,..q!45 
# 
z	"biil**1a01 
#	z	"1a&1a&)ryy|/C/CAq/IJ 
#	"U 
#	" 
"	! 
#	"	"	"	"	" 
#	" 
#	"	"	"	"	" 
#	"	"	"	"	"	"	"	"	"	"	" 
#	"	"	"	"	"	"	" 
#	"	"	"	"	" 
#	" 
#	" 
#	"	"	" 
#	"	"	"sO  W!	W38X)XX)X;9Y)YY1Z;Z,Z'Z9[;[,[/\\?\%0\7!]	]]-4]?)1^<1^#1^5"6_!
W03
X
X
X&)
X8;
Y

Y
Y.1
Z 
Z
Z$'
Z69
[
[
[,/
[>
\
\"%
\47
]	
]
]*-
]<?
^
^ #
^25
_
_c                     [         R                  " [        5         [        SSS/SS//SS9  S S S 5        [         R                  " [        5         [        SSS/SS//SS9  S S S 5        g ! , (       d  f       NC= f! , (       d  f       g = f)Nr:   r   r;   T)	bad_kwarg)memory_limit)r0   r1   r2   r   r3   r>   r?   r    test_contract_inputsrE      sm    	y	!f1v1v.$? 
" 
z	"f1v1v.R@ 
#	" 
"	! 
#	"s   A*A;*
A8;
B	r   )	...a->...z	a...->...za...a->...az...,...za,bz	...a,...bc                     [        U 5      n[        U /UQ7SS06n[        U /UQ76 n[        R                  " X#5      (       d   e[        U /UQ7SS06n[        R                  " X#5      (       d   eg )NoptimizeFoptimal)r!   r   r   allcloser   r   einopts       r    test_comparerN      so     E
6
2E
2E
2C
6
"E
"C;;s    
6
6E
6I
6C;;s    r?   c                      Sn [        U 5      n[        U /UQ7SS06n[        US   [        S/[        /5      n[        R                  " X#5      (       d   eg )NrF   rH   Fr   r!   r   r4   r   rJ   rK   s       r    test_ellipse_input1rQ      sR    FE
6
2E
2E
2C
58h]XJ
7C;;s    r?   c                      Sn [        U 5      n[        U /UQ7SS06n[        US   [        S/5      n[        R                  " X#5      (       d   eg )Nz...arH   Fr   rP   rK   s       r    test_ellipse_input2rS      sN    FE
6
2E
2E
2C
58h]
+C;;s    r?   c                      Sn [        U 5      n[        U /UQ7SS06n[        US   [        S/[        S/5      n[        R                  " X#5      (       d   eg )Nr.   rH   Fr   rP   rK   s       r    test_ellipse_input3rU      sT    FE
6
2E
2E
2C
58h]XqM
:C;;s    r?   c                      Sn [        U 5      n[        U /UQ7SS06n[        US   [        S/US   [        S/[        /5      n[        R                  " X#5      (       d   eg )Nz...b,...a->...rH   Fr   r;   rP   rK   s       r    test_ellipse_input4rW      s^    FE
6
2E
2E
2C
58h]E!HxmhZ
PC;;s    r?   c                  :   [         R                  " S5      n [         R                  " S5      n[        SXSS9n[        SXSS9n[         R                  " X#5      (       d   e[         R                  " USS/5      (       d   e[         R                  " S5      n [         R                  " S	5      nS
 Hj  n[        SX US94n[        SXUS9n[         R                  " XV5      (       d   e[         R                  " U[         R                  " SS5      5      (       a  Mj   e   g )N)
   r   )r;   r   zij,ij->jF)rH   Tg      $@)r;   r
   )r
   r
   )TFz...ij,...jk->...ikr
   )r   onesr   rJ   full)pqrL   rM   rH   res1res2s          r    "test_singleton_dimension_broadcastr`      s    
A
A
:qe
4C
:qd
3C;;s    ;;sS#J''''
A
A!,aXFG,aXF{{4&&&&{{4!34444	 "r?   c                  (   Sn [        U 5      u  pn[        XX#5      n[        USUSUS5      n[        R                  " XE5      (       d   e[	        S5       H:  n[        XS-   U45      n[        R                  " XqR
                  5      (       a  M:   e   g )Nab,bc,cd)i    )rc     )rd   i  rY   r;   r!   r   r   rJ   rangeT)r   r   yzstring_output
int_outputr8   transpose_outputs           r    test_large_int_input_formatrm      s    F&!GA!V-M!\1lA|LJ;;}11112Y#AAqz2{{+SS1111 r?   c            	         Sn [        U 5      u  pn[        XX#5      n[        USUSUS5      n[        USUSUSS5      n[        R                  " XE5      (       d   e[        R                  " XV5      (       d   e[	        SS5       H>  n[        USU-  S	U-  45      n[        R                  " XR
                  5      (       a  M>   e   g )
Nrb   )leftbond1)rp   bond2)rq   right)ro   rr   r;   rY   br/   re   )	r   r   rh   ri   rj   hash_output1hash_output2r8   rl   s	            r    !test_hashable_object_input_formatrv     s    F&!GA!V-MA0!5GL^_LA0!5GL^`qrL;;}3333;;|22221b\#Aaq'9:{{+SS1111 r?   )__doc__numpyr   r0   
opt_einsumr   r   r!   r6   r@   rE   markparametrizerN   rQ   rS   rU   rW   r`   rm   rv   r>   r?   r    <module>r|      s}      . 6@rLK^A 
!
!!!!!5(2
2r?   