+
    i'W                        ^ RI t ^ RIHt ^ RIHtHt ^ RIHt ^ RIH	t	H
t
 ^ RIHt ^ RIHt ^ RIHtHt ^ R	IHtHtHtHtHtHt ^ R
IHt ^ RIHt ^ RIHt ^ RIHt ^ RI H!t! ^ RI"H#t#H$t$ R t%R t&R t'R t(R t)R t*R t+R t,R t-R t.R t/R t0R t1R t2R t3R t4R  t5] Pl                  Po                  R!R"R#.4      ] Pl                  Po                  R$]! . R+O. R,O. R-O.4      ]! ^^. R.O4      3]! . R+O. R,O. R-O.4      ]! ^^.^^.^^..4      3]! ^^]
! R%4      4      ]! ^^]
! R&4      4      3.4      R' 4       4       t8] Pl                  Po                  R(R"]3]]3.4      R) 4       t9R* t:R# )/    N)
expand_mul)IRational)S)Symbolsymbols)sympify)simplify)
ShapeErrorNonSquareMatrixError)ImmutableMatrixMatrixeyeonesImmutableDenseMatrixdotprodsimp)_det_laplace)raises)NonInvertibleMatrixError)DMShapeError)linsolve)xyc            	         \        \        R 4      4      p \        R4      ;_uu_ 4        V P                  \	        ^^4      4      \        \        R4      4      \        ^ ^. 4      38X  g   Q h RRR4       R#   + '       g   i     R# ; ia  [
        [             -3/4,       45/32 - 37*I/16,                   0,                     0],
        [-149/64 + 49*I/32, -177/128 - 1369*I/128,                   0, -2063/256 + 541*I/128],
        [                0,         9/4 + 55*I/16, 2473/256 + 137*I/64,                     0],
        [                0,                     0,                   0, -177/128 - 1369*I/128]]Ta  [
            [                          -32549314808672/3306971225785 - 17397006745216*I/3306971225785],
            [                               67439348256/3306971225785 - 9167503335872*I/3306971225785],
            [-15091965363354518272/21217636514687010905 + 16890163109293858304*I/21217636514687010905],
            [                                                          -11328/952745 + 87616*I/952745]]N)r   r   r   gauss_jordan_solver   Ms    _/var/www/html/photoedit/myenv/lib/python3.14/site-packages/sympy/matrices/tests/test_solvers.py%test_issue_17247_expression_blowup_29r       s    q c d 	eA
 
T		##DAJ/F1 >k <l 5m ouuvxy{}n~	4@ @ 	@ @ 
			s   AA55B	c                      \        \        R 4      4      p \        R4      ;_uu_ 4        V P                  \	        ^^4      4      \        \        R4      4      8X  g   Q h RRR4       R#   + '       g   i     R# ; ir   )r   r   r   cholesky_solver   r   s    r   %test_issue_17247_expression_blowup_30r#      ss    q c d 	eA
 
T		Q
+va 9k 7l 0m m 	m m 
			s   5A((A9	c                     \        \        ^,           ^,          \        ^,          ^\        ,          ,           ^,           ,
          \        .\        ^ ..4      p \        ^^.4      pR p\        ^\        ,          ^\        ^,          ) ^\        ,          ,
          \        ^,           ^,          ,           ^,
          \        ,          ,
          \        ,          .4      pW0P                  WR7      ,
          \        ^ ^ .4      8X  g   Q hR# )   c                 6    V P                  4       '       d   R # R# )FT)_random)es   &r   <lambda>)test_LUsolve_iszerofunc.<locals>.<lambda>@   s    aiikkU;t;    )
iszerofuncN)r   r   LUsolve)r   bis_zero_funcx_exps       r   test_LUsolve_iszerofuncr1   ;   s     	!a%!q!taczA~.2QF;<A1vA;LAaC!adUQqS[AaC!83a7::A=>?EIIaI99faVnLLLr+   c                     \        \        ^,           ^\        ,
          ^ ^ .^\        ,
          \        ^,           ^ \        ^,           .^ ^\        ,
          \        ^,           ^ .^ ^ ^ \        ^,           ..4      p \        R4      ;_uu_ 4        V P                  \	        ^^4      4      \        \        ^,           ^\        ,          ,          .\        ^,
          ^\        ,          ,          .\        ^,           ^\        ,          ,          .^\        ^,           ,          ..4      8X  g   Q h RRR4       R#   + '       g   i     R# ; i)r%   TN)r   r   r   r-   r   r   s    r   %test_issue_17247_expression_blowup_32r3   G   s    	
QA1!$	
QA1a!e$Aq1u!$A1a!e$	& 	'A
 
T		yya$!eac]O!eac]O!eac]OAEO	0 )  	  
			s   BD33E	c            	      n  aa \        . RO. RO. RO.4      o\        ^^. R	O4      p SV ,          oSP                  S4      pW8X  g   Q h\        . R
O. RO. RO.4      o\        ^^. RO4      p SV ,          oSP                  S4      pW8X  g   Q h\        ^^.^^ .^^ ..4      o\        . RO4      oSP                  S4      \        ^^.4      8X  g   Q h\        . RO4      o\        \        VV3R l4       \        . R
O. RO. RO. RO. RO. RO.4      o\        . RO4      p SV ,          oSP                  S4      pW8X  g   Q h\        . R
O. RO.4      o\        . RO4      p SV ,          o\        \        VV3R l4       \        ^^R 4      o\         P
                  ! ^^4      o\        \        VV3R l4       R# )   c                  &   < S P                  S4      # Nr-   Ar.   s   r   r)   test_LUsolve.<locals>.<lambda>g   s    qyy|r+   c                  &   < S P                  S4      # r7   r8   r9   s   r   r)   r;   u   s    		!r+   c                 @    V ^8w  d   ^W,           ^,           ,          # ^ # )    )ijs   &&r   r)   r;   w   s    qAv!QSU)"<1"<r+   c                  &   < S P                  S4      # r7   r8   r9   s   r   r)   r;   y   s    QYYq\r+   Nr5   r>      r>      r5      r>   rF   r>      rD   r   r5   rD   
   rJ   rH   r>      rL   r5   rD   )r>   r%   r%   )r>   r%   r5   )r5   r%   )rL   r5   r   )r   r-   r   
ValueErrorNotImplementedErrorzerosr   r   solnr:   r.   s     @@r   test_LUsolverX   T   s   	 	A 	q!YA	!A99Q<D99
 	A 	q!Z A	!A99Q<D99AAA'(AyA99Q<61a&>)))yA
:+,
 	A 	zA	!A99Q<D99
J'(AzA	!A
 45q!<=AQA
#%9:r+   c                     \        R RR7      w  rr#\        RRR7      w  rE\        W.W#..4      pWfP                  \        WE.4      4      ,          pVR,          P                  4       V8X  g   Q hVR,          W R,          ,          V) V) V R,          ,          V,          V,           R,          ,          V) V R,          ,          V,          V,           ,          V,           ,          W2) V R,          ,          V,          V,           R,          ,          V) V R,          ,          V,          V,           ,          ,           8X  g   Q hR# )a:4F)commutativeb:2N)r   r   )r%   r   rL   )r   r   r-   expand)a0a1a2a3b0b1r:   checks           r   test_LUsolve_noncommutativere   |   s   U6NBBU.FB2(#$A		&"*++E;2%%% ;
8bS2#b2h,r/B."55s28|B7KLrQR
c"r(l2o"b)
)B3rBx<?R+?
@	A  r+   c                     \        . RO. RO. RO.4      p \        ^^. RO4      pW,          pV P                  V4      pW18X  g   Q h\        ^^.^^.^^..4      pW,          pV P                  V4      pW18X  g   Q h\        . RO. RO. RO.4      p \        ^^. R	O4      pW,          pV P                  V4      pW18X  g   Q h\        ^^.^	^
.^^..4      pW,          pV P                  V4      pW18X  g   Q hR# )
r5   NrC   rE   rG   rI   rK   rM   rO   rQ   )r   QRsolve)r:   r   r.   rW   s       r   test_QRsolverh      s   	 	A 	q!YA	A99Q<D99AAA'(A	A99Q<D99
 	A 	q!Z A	A99Q<D99AB"b*+A	A99Q<D99r+   c                  (    \        \        R  4       R# )c                  V    \        ^.4      P                  \        ^^.^^..4      4      # r%   )r   r-   r?   r+   r   r)   test_errors.<locals>.<lambda>   s'    vqc{226Aq6Aq6:J3KLr+   N)r   r   r?   r+   r   test_errorsrm      s    
:LMr+   c                     \        . RO. RO. RO.4      p \        ^^. RO4      pW,          pV P                  V4      pW18X  g   Q h\        . RO. R	O. R
O.4      p \        ^^. RO4      pW,          pV P                  V4      pW18X  g   Q h\        R4      p \        R4      pW,          pV P                  V4      pW18X  g   Q h\        ^	^\        ,          3R\        ,          ^334      p \        R4      pW,          pV P                  V4      p\        V4      V8X  g   Q h\        ^	\        ,          ^3R\        ,           ^334      p \        ^^\        ,          ,           R34      pW,          pV P                  V4      p\        V4      V8X  g   Q h\	        R4      w  rErgp\        WE3WV334      p \        Wx34      pV P                  V4      p\        W,          4      V8X  g   Q hR# )r5   za00, a01, a11, b0, b1NrC   rE   rG   rI   rL   rK   rM   rO   rQ   ))r%   rD   )rD   r%   )rP   ro   r%   )r   r"   r   r   r   r
   )	r:   r   r.   rW   a00a01a11rb   rc   s	            r   test_cholesky_solveru      s   	 	A 	q!YA	AAD99
 	A 	q!Z A	AAD99 AwA	AAD99AaC2a4)$%AwA	AADdq   1a261+&'AAaC}A	AADdq   #$;<Ccr
SJ'(AxA	AAC=Ar+   c                    aa \        . RO. RO. RO.4      o\        ^^. RO4      p SV ,          oSP                  S4      pW8X  g   Q h\        . RO. R	O. R
O.4      o\        ^^. RO4      p SV ,          oSP                  S4      pW8X  g   Q h\        ^	^\        ,          3R\        ,          ^334      o\        R4      p SV ,          oSP                  S4      p\        V4      V 8X  g   Q h\        ^	\        ,          ^3R\        ,           ^334      o\        ^^\        ,          ,           R34      p SV ,          oSP                  S4      p\        V4      V 8X  g   Q h\        R4      o\        R4      p SV ,          oSP                  S4      p\        V4      V 8X  g   Q h\        . RO. RO.4      o\        ^.^.R..4      p SV ,          o\	        \
        VV3R l4       R# )r5   c                  &   < S P                  S4      # r7   )LDLsolver9   s   r   r)   test_LDLsolve.<locals>.<lambda>   s    

1r+   NrC   rE   rG   rI   rL   rK   rM   rO   rQ   ro   rq   rp   ))	   r>   )r>   rz   )r%   r%   )ro   rR   )ro   irJ   )r   rx   r   r   r   rT   rV   s     @@r   test_LDLsolver|      s   	 	A 	q!YA	!A::a=D99
 	A 	q!Z A	!A::a=D99AaC2a4)$%AwA	!A::a=Ddq   1a261+&'AAaC}A	!A::a=Ddq    AvA	AA::a=Ddq   k*+AaS2$ A	AA
 56r+   c                  R   \        \        R  4       \        \        R 4       \        \        R 4       \	        ^^ .^ ^..4      p \	        \
        \        .\        \
        ..4      p\	        ^^.^^	..4      pV P                  V4      V8X  g   Q hV P                  V4      V8X  g   Q hR# )c                  P    \        ^^ .4      P                  \        ^ ^.4      4      # rk   r   lower_triangular_solver?   r+   r   r)   -test_lower_triangular_solve.<locals>.<lambda>       1v55faVnEr+   c                  V    \        ^^ .^ ^..4      P                  \        ^.4      4      # rk   r   r?   r+   r   r)   r      '    AA'(??sLr+   c                  `    \        ^^.^^..4      P                  \        ^^ .^ ^..4      4      # r5   r   r?   r+   r   r)   r      6    AA'(??QFQF#$&r+   N)r   r   r   rS   r   r   r   r   r:   BCs      r   test_lower_triangular_solver      s    
EG
:LN
:	&' 	AA AAA AAA A##A&!+++##A&!+++r+   c                  R   \        \        R  4       \        \        R 4       \        \        R 4       \	        ^^ .^ ^..4      p \	        \
        \        .\        \
        ..4      p\	        ^^.^^..4      pV P                  V4      V8X  g   Q hV P                  V4      V8X  g   Q hR# )c                  P    \        ^^ .4      P                  \        ^ ^.4      4      # rk   r   upper_triangular_solver?   r+   r   r)   -test_upper_triangular_solve.<locals>.<lambda>	  r   r+   c                  V    \        ^^ .^ ^..4      P                  \        ^.4      4      # rk   r   r?   r+   r   r)   r     r   r+   c                  `    \        ^^.^^..4      P                  \        ^^ .^ ^..4      4      # r   r   r?   r+   r   r)   r     r   r+   N)r   r   r   	TypeErrorr   r   r   r   r   s      r   test_upper_triangular_solver     s    
EG
:LN
9	&' 	AA AAA AAA A##A&!+++##A&!+++r+   c                  (  a a \        \        R  4       \        ^^ .^ ^..4      ^,          o \        \        \        .\        \        ..4      oS P                  S4      S^,          8X  g   Q h\        ^^ .^^..4      o \        \        V V3R l4       R# )c                  N    \        ^^.4      P                  \        ^.4      4      # rk   )r   diagonal_solver?   r+   r   r)   %test_diagonal_solve.<locals>.<lambda>  s    faVn;;FA3KHr+   c                  &   < S P                  S4      # r7   )r   r:   r   s   r   r)   r     s    a..q1r+   N)r   r   r   r   r   r   r   s   @@r   test_diagonal_solver     s    
9HIAA "AAA AA!A#%%%AA A
912r+   c                  l   \        ^^.^^	..4      p \        ^^.4      pV P                  V4      V P                  V4      8X  g   Q hV P                  V4      V P                  V4      8X  g   Q hV P                  V4      \        \	        R4      \	        R4      .4      8X  g   Q hW P                  4       ,          V,          V8X  g   Q h\        . RO. RO.4      pV P                  V4      V P                  V4      8X  g   Q hV P                  V4      V P                  V4      8X  g   Q hV P                  V4      \        . R	O. R
O.4      ^,          8X  g   Q hW P                  4       ,          V,          V8X  g   Q h\        . RO. RO.4      p \        ^^.4      pV P                  V4      p/ pVP                  \        4       F  pWCVP                  &   K  	  V\        VR,          ^,          VR,          ^,          ,           VR,          ^,          ,
          ^,           .VR,          ^,          VR,          ^,          ,           VR,          ^,          ,
          ^,           .VR,          ) ^,          VR,          ^,          ,
          VR,          ^,          ,           ^,           ..4      8X  g   Q hW P                  4       ,          V,          V8X  g   Q h\        ^^ .^ ^ .^ ^..4      p \        . RO4      pV P                  V4      \        ^^.4      8X  g   Q hW P                  4       ,          V,          V8w  g   Q hR# )r%   z-43/26z71/26w0_0w1_0w2_0N)         )         )iii)E   K   Q   )r%   r   r%   )r   r%   r%   )r>   r5   r%   )	r   
pinv_solver"   rx   r	   pinvatomsr   name)r:   r   solutionwss        r   test_pinv_solver   !  s   AA ABxA<<?a..q1111<<?ajjm+++<<?fgh&79I%JKKKKvvx<!q   l+,A<<?a..q1111<<?ajjm+++<<?fo|%DEJJJJvvx<!q   	9%&A1vA||AH
A^^F#!&&	 $ v&	!aik 9AfIaK G! KL !&	!aik 9AfIaK G! KL!"6
1qy{ :QvYq[ H1 LMO P P P P vvx<!q   AAA'(AyA<<?faVn,,,vvx<!q   r+   c                     \        . RO. RO.4      \        ^^ .^ ^ ..4      \        ^^.^^.^^..4      .p V  F{  pVP                  RR7      pW,          pW!,          p\        W1,          4      V8X  g   Q h\        WB,          4      V8X  g   Q hVP                  V8X  g   Q hVP                  V8X  d   K{  Q h	  V  F{  pVP                  RR7      pW,          pW!,          p\        W1,          4      V8X  g   Q h\        WB,          4      V8X  g   Q hVP                  V8X  g   Q hVP                  V8X  d   K{  Q h	  \        ^^ .^ ^ ..4      p\        ^^ .4      pVP	                  V4      pVP                  \        4      P                  4       pVP                  R8X  g   Q hV\        ^V.4      8X  g   Q hWP                  4       ,          V,          V8X  g   Q h\        ^^.4      pVP	                  V4      pVP                  \        4      P                  4       pVP                  R8X  g   Q hV\        ^V.4      8X  g   Q hWP                  4       ,          V,          V8w  g   Q hR# )r%   RD)methodEDr   Nr%   r%   r%   )r5   r5   r5   )	r   r   r
   Hr   r   r   popr   )Asr:   A_pinvAApApAr   r   w1s           r   test_pinv_rank_deficientr   B  s/   
)Y'
(
1a&1a&!
"
1a&1a&1a&)
*
,B t$jj A%%%%///uu||uu||  t$jj A%%%%///uu||uu||  	AA A1vA||AH			#	#	%B77fvq"g&&&vvx<!q   1vA||AH			#	#	%B77fvq"g&&&vvx<!q   r+   c            
        a
aa \        . RO. RO. RO.4      o
\        . RO4      oS
P                  S4      w  rV \        R.^.^ ..4      8X  g   Q hV\        ^ ^. 4      8X  g   Q h\        ^4      o
\        . RO. RO. RO.4      oS
P                  S4      w  rV S8X  g   Q hV\        ^ ^. 4      8X  g   Q h\        . RO. RO. RO.4      o
\        . RO4      oS
P                  SRR7      w  rp/ pV P                  \        4       F  pWCVP
                  &   K  	  V \        VR,          ^,
          .RVR,          ,          ^,           .VR,          ..4      8X  g   Q hV\        VR,          ..4      8X  g   Q hV^.8X  g   Q h\        . RO. RO. RO.4      o
\        ^^.^^.^	^..4      oS
P                  SRR7      w  rp/ pV P                  \        4       F  pWCVP
                  &   K  	  V \        VR,          ^,
          VR,          \        ^^4      ,
          .RVR,          ,          ^,           RVR,          ,          \        ^^4      ,           .VR,          VR,          ..4      8X  g   Q hV\        VR,          VR,          ..4      8X  g   Q hV^.8X  g   Q h\        . RO. RO. RO.4      o
\        . RO4      oS
P                  S4      w  r/ pV P                  \        4       F  pWCVP
                  &   K  	  V \        RVR,          ,          ^VR,          ,          ,
          .VR,          .VR,          ..4      8X  g   Q hV\        VR,          .VR,          ..4      8X  g   Q h\        . RO. RO. RO.4      o
\        . RO4      oS
P                  S4      w  r/ pV P                  \        4       F  pWCVP
                  &   K  	  V \        VR,          .VR,          .VR,          ..4      8X  g   Q hV\        VR,          .VR,          .VR,          ..4      8X  g   Q h\        . RO. RO. RO.4      o
\        . RO4      o\        \        V
V3R l4       \        . RO. RO. RO. RO.4      o
\        . R O4      oS
P                  S4      w  rV \        \        R^4      .^ .\        ^^4      ..4      8X  g   Q hV\        ^ ^. 4      8X  g   Q h\        . RO. RO. RO. RO.4      o
\        ^ ^ .^ ^ .^^.^ ^ ..4      oS
P                  S4      w  rV \        \        R^4      \        R^4      .^ ^ .\        ^^4      \        ^^4      ..4      8X  g   Q hV\        ^ ^. 4      8X  g   Q h\        . RO. RO. RO. RO.4      o
\        . R!O4      o\        \        V
V3R l4       \        . RO. RO. RO. RO.4      o
\        ^ ^ .^ ^ .^^ .^ ^..4      o\        \        V
V3R l4       \        . RO. RO. RO. RO.4      o
\        ^ ^ .^ ^ .^ ^.^^ ..4      o\        \        V
V3R	 l4       \        . RO. R"O. R#O. RO.4      o
\        . R!O4      oS
P                  S4      w  r/ pV P                  \        4       F  pWCVP
                  &   K  	  V \        R$VR,          ,          ^,           .R.VR,          ..4      8X  g   Q hV\        VR,          ..4      8X  g   Q h\        . RO. R"O. R#O. RO.4      o
\        . R%O4      o\        \        V
V3R
 l4       \        . RO. RO. R&O.4      o
\        . R'O4      oS
P                  S4      w  r/ pV P                  \        4       F  pWCVP
                  &   K  	  V \        ^VR,          ,          ^,
          .R$VR,          ,          ^,           .^ .VR,          ..4      8X  g   Q hV\        VR,          ..4      8X  g   Q h\        . RO. RO. R(O.4      o
\        . R)O4      oS
P                  S4      w  r/ pV P                  \        4       F  pWCVP
                  &   K  	  V \        VR,          ^VR,          ,          ,           \        P                  ,           .RVR,          ,          ^VR,          ,          ,
          \        ^^4      ,
          .VR,          .VR,          ..4      8X  g   Q hV\        VR,          .VR,          ..4      8X  g   Q h\        R4      w  rVrx\        . R*O^ ^ ^ ^^ V..4      p	V	RRR13,          o
V	RRR13,          oS
P                  S4      w  rV\        ^^WVV.4      8X  g   Q hV \        ^^V^ WhV.4      8X  g   Q h\        . RO. RO. R(O.4      o
\        . R'O4      o\        \        V
V3R l4       \        ^^ .^ ^..4      o
\        ^^.4      oS
P                  S4      w  rV \        ^^.4      8X  g   Q hV\        ^ ^. 4      8X  g   Q hV P                  \        8X  g   Q hVP                  \        8X  g   Q h\        . R+O. R!O.4      o
\        ^^.4      oS
P                  S4      w  r/ pV P                  \        4       F  pWCVP
                  &   K  	  V \        ^.VR,          .VR,          .^..4      8X  g   Q hV\        VR,          .VR,          ..4      8X  g   Q hR# ),r%   T)freevartau0tau1tau2c                  &   < S P                  S4      # r7   r   r9   s   r   r)   )test_gauss_jordan_solve.<locals>.<lambda>      q33A6r+   c                  &   < S P                  S4      # r7   r   r9   s   r   r)   r     r   r+   c                  &   < S P                  S4      # r7   r   r   s   r   r)   r     r   r+   c                  &   < S P                  S4      # r7   r   r   s   r   r)   r     r   r+   c                  &   < S P                  S4      # r7   r   r9   s   r   r)   r     r   r+   z_tau0 _tau1 _tau2 tau1NNNNc                  &   < S P                  S4      # r7   r   r9   s   r   r)   r     r   r+   )r%   r5   r>   )rP   rD   rF   )rJ   rH   rN   )r>   rF   rz   rL   )r%   r5   r>   rP   )rD   rF   rJ   rH   )rz   rN      r   )rJ   rH   rz   rq   )r5   rP   rF   )r   r   r   )r   r   r%   )r%   rD   r>   )r5   r%   rF   )r%   rJ   rz   )r%   rP   r>   )r   r   r%   r   )r   r   r   r%   )r5   rN   rF   )r>   r   rz   ro   )r   r   r%   r%   )rz   rN   r%   r   r   )r5   rP   rF   rH   )r   r%   r   )r   r%   r   r   r   r   )r%   r   r   r   )r   r   r   r   r   r   r   r   rS   r   Halfr   r   	__class__r   )solparamsr   r   r   x0x1x2_x0r   r:   r   r.   s             @@@r   test_gauss_jordan_solver   k  sQ
    		9j12AyA&&q)KC&2$aS)****VAq"%%%% 	AAlO<=A&&q)KC!8O8VAq"%%%% 		9i01AyA//4/@C
AYYv!&&	  &1V9q=/BqyL1,<+=&	{KLLLLVai[M****qc>> 		9i01AAAB()A//4/@C
AYYv!&&	  &1V9q=!F)hq!n*DEai<!+R&	\HQN-JKV9ai03 4 4 4 4 Vai6345555qc>> 		9i01AyA&&q)KC
AYYv!&&	 &2ai<!AfI+56F)qyk3 4 4 4 4Vai[1V9+67777 		9i01AyA&&q)KC
AYYv!&&	 &1V9+&	{QvYK@AAAAVai[1V9+&	{CDDDD 		9i01AyA
:67 		9i;<A|A&&q)KC&8B?+aS8Aq>2BCDDDDVAq"%%%% 		9i;<A11v1v1v./A&&q)KC&8B?HRO<q!fxPQST~W_`acdWeFfghhhhVAq"%%%% 		9i;<A|A
:67 		9i;<A11v1v1v./A
:67 		9i;<A11v1v1v./A
:67 		:z9=>A|A&&q)KC
AYYv!&&	 &2ai<!+,rdQvYK@AAAAVai[M**** 		:z9=>A|A
:67 	lN;<AyA&&q)KC
AYYv!&&	 &1QvY;?+b6lQ.>-?!F)& ' ' ' 'Vai[M**** 	lL9:AyA&&q)KC
AYYv!&&	 &1V9q6{2QVV;<QvY,1V94x1~EFF)qyk3 4 4 4 4 Vai[1V9+6777767OBB"Q1aC$89:A	!SbS&	A	!RS&	A&&q)KCVAq22,////&AAr34444 	lL9:AyA
:67 	!Q!Q()AAA&&q)KC/1a&))))_Q2....==00003333 	l+,A1vA&&q)KC
AYYv!&&	 &1#&	{QvYK!=>>>>Vai[1V9+67777r+   c                     \        . RO. RO. RO. RO. RO. RO. RO. RO.4      p \        . RO4      pV P                  V4      w  r#/ pVP                  \        4       F  pWTVP                  &   K  	  V\        VR,          .VR,          .VR,          .VR,          .VR,          .VR,          ..4      8X  g   Q hV\        ^^VR,          ,          ,
          .VR,          .^^VR,          ,          ,
          VR,          ,           .VR,          .VR,          VR,          ,           .RVR,          ,          ^VR,          ,          ,
          ^VR,          ,          ,
          .^^VR,          ,          ,
          .VR,          .VR,          .VR,          .VR,          .^^VR,          ,          ,
          .VR,          .^..4      8X  g   Q h^ RIHpHp \        . RO^ R^ R^ R^ RV) .	^ ^ ^ ^ ^^^^V.	.4      p \        \        \        V 4      4      ^ ,          4      p\        R4      w  rrpV\        V) V,
          V	,
          V,           V,           ^,           .Wj,
          V,
          V,
          .V	.V
.W{,
          V,
          V,
          .V.V.V..4      8X  g   Q hV R	R
R13,          V,          V R,          ,
          pV\        ^ .^ .^ ..4      8X  g   Q hR
# )r%   r   r   r   tau3tau4tau5)rA   fztau:5r   N)r%   r%   r   r   r   r   r   r   r   r   r   r   r   r   )r%   r%   r%   r%   r%   r%   r   r   r   r   r   r   r   r   )r   r%   r   r   r   r   r%   r   r   r   r   r   r   r   )r   r%   r   r   r%   r%   r%   r%   r   r   r   r   r   r   )r   r   r   r   r   r   r%   r   r%   r   r   r   r   r   )r   r   r   r   r   r%   r%   r%   r%   r%   r%   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r%   r%   r   )r   r   r   r   r   r   r   r   r   r   r   r%   r%   r%   )r%   r5   r%   r%   r%   r%   r%   r5   rL   )	r%   r%   r%   r%   r%   r%   r%   r%   r%   )r   rL   )r   r   r   r   r   	sympy.abcrA   r   listr   r   )r:   r   r   r   r   r   rA   r   sol_1r   r   r   r   r   sol_2s                  r   4test_linsolve_underdetermined_AND_gauss_jordan_solver     s   ::::::::< 	=A 
(	)A&&q)KC
AYYv!&&	 Vai[1V9+&	{i[1V9+&	{D E E E E&1q6{?+V9+q6{?QvY67V9+V9qy01ai<!AfI+5!F)CDq6{?+V9+V9+V9+V9+q6{?+V9+#         $Ar1b!R!$A1q!a!$ 	A hqk"1%
&E#*7#3 DDFaR!Vd]T1D81<=8d?T12&&8d?T12&&&" # # # # a2gK%!E)+EFQC!qc?++++r+   
det_methodbirdlaplacezM, rhsrZ   r\   c                     \        VP                  W R 7      VP                  V4      ,
          4      \        P                  ! VP
                  VP                  4      8X  g   Q hR# )r   N)r
   cramer_solver-   r   rU   rowscols)r   r   rhss   &&&r   test_cramer_solver   M  sK     ANN3N>3O affchh78 8 8r+   zdet_method, errorc                 l   a aa \        . RO. RO.4      o\        R^.4      o\        VVVV 3R l4       R# )r   c                  *   < S P                  SSR 7      # )r   )r   )r:   r.   r   s   r   r)   *test_cramer_solve_errors.<locals>.<lambda>_  s    !..z.Br+   NrK   rM   rq   )r   r   )r   errorr:   r.   s   f&@@r   test_cramer_solve_errorsr   Y  s-     	
J'(ABxA
5BCr+   c                     a a \        ^^.^^..4      o \        ^.^..4      o\        \        V V3R l4       \        ^.^..4      o\        \        V V3R l4       R# )r%   c                  &   < S P                  S4      # r7   solver9   s   r   r)   test_solve.<locals>.<lambda>e      qwwqzr+   c                  &   < S P                  S4      # r7   r   r9   s   r   r)   r   g  r   r+   N)r   r   rS   r9   s   @@r   
test_solver   b  sS    1!u~AaSzA
:)*!qc{A
:)*r+   rC   rE   rG   rI   );pytestsympy.core.functionr   sympy.core.numbersr   r   sympy.core.singletonr   sympy.core.symbolr   r   sympy.core.sympifyr	   sympy.simplify.simplifyr
   sympy.matrices.exceptionsr   r   sympy.matricesr   r   r   r   r   r   sympy.matrices.determinantr   sympy.testing.pytestr   r   sympy.polys.matrices.exceptionsr   sympy.solvers.solvesetr   r   r   r   r    r#   r1   r3   rX   re   rh   rm   ru   r|   r   r   r   r   r   r   r   markparametrizer   r   r   r?   r+   r   <module>r     s    * , " / & , HK K 3 ' > 8 + @m8	M%;P2N"J&7R,$,$3!B'!Re8P7,t 	':;Y	9-.q!Y0GHY	9-.aVaVaV$%'Aq'%.!6!Q#?@	$ 8 <8
 ,\\+?@/B CDCD+r+   