+
    i	H                     
   ^ RI Ht ^ RIHt ^ RIHtHt ^ RIHt ^ RI	H
t
HtHt ^ RIHt ^ RIHt ^ RIHt ^ R	IHtHtHtHtHt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%H&t&H't'H(t(H)t)H*t*H+t+H,t,H-t-H.t.H/t/H0t0 ^ RI1H2t2 ^ RI3H4t4H5t5 ^ RI6H7t7 ^ RI8H9t9H:t: ^ RI;H<t<H=t=H>t> ^ RI?H@t@ ]! RRR7      w  tAtBtCtDtE]! R4      tF],! R]A]B4      tG],! R]B]C4      tH],! R]A]A4      tI],! R]A]A4      tJ],! R]B]A4      tK],! R]A^4      tLR tMR tNR tOR  tPR! tQR" tRR# tSR$ tTR% tUR& tVR' tWR( tXR) tYR* tZR+ t[R, t\R- t]R. t^R/ t_R0 t`R1 taR2 tbR3 tcR4 tdR5 te]=R6 4       tfR7 tgR8 thR9 tiR: tjR; tkR< tlR= tm]=R> 4       tnR? toR@ tpRA tqRB trRC tsRD ttRE tuRF tvRG# )H    )Sum)	gcd_terms)diffexpand)Eq)DummySymbolStr)KroneckerDelta)zeros)factor)SsymbolsAddMulSympifyErrorRationalFunction)sincostansqrtcbrtexp)simplify)ImmutableMatrixInverseMatAddMatMulMatPowMatrix
MatrixExprMatrixSymbolSparseMatrix	TransposeAdjoint	MatrixSet)NonSquareMatrixError)Determinantdet)MatrixElement)
ZeroMatrixIdentity)raisesXFAILskip)versionz	n m l k pTintegerxABCDEwc                    a  \        R ^^4      '       g   Q h\        R ^ ^ 4      '       g   Q h\        \        R 4       \        \        R 4       \        \        R 4       \        \        R 4       \        \        R 4       \        \        R 4       \        R4      o \        R S S 4      '       g   Q h\        RRR	7      o \        \        V 3R
 l4       \        RRR7      o \        \        V 3R l4       R# )r5   c                      \        R R^4      # r5   r#        k/var/www/html/photoedit/myenv/lib/python3.14/site-packages/sympy/matrices/expressions/tests/test_matexpr.py<lambda>-test_matrix_symbol_creation.<locals>.<lambda>%       |CQ7rA   c                      \        R R^4      # r5   g       @r?   r@   rA   rB   rC   rD   &   s    |Ca8rA   c                      \        R R^4      # r5   y               @r?   r@   rA   rB   rC   rD   '   rE   rA   c                      \        R ^R4      # r=   r?   r@   rA   rB   rC   rD   (       |CB7rA   c                      \        R ^R4      # rG   r?   r@   rA   rB   rC   rD   )   s    |CC8rA   c                      \        R ^R4      # rI   r?   r@   rA   rB   rC   rD   *   rK   rA   nFr2   c                     < \        R S S 4      # r5   r?   rN   s   rB   rC   rD   /       |CA6rA   T)negativec                     < \        R S S 4      # rP   r?   rQ   s   rB   rC   rD   1   rR   rA   N)r#   r.   
ValueErrorr   rQ   s   @rB   test_matrix_symbol_creationrV   "   s    Q""""Q""""
:78
:89
:78
:78
:89
:78AQ""""U#A
:67d#A
:67rA   c                  p   \         P                  \        \        38X  g   Q h\         \        ,          P                  \        \
        38X  g   Q h\         R,          P                  R8X  g   Q h\         R,          P                  \         8X  g   Q h\         R,          P                  P                  R8X  g   Q hR# )r   r5   Nr      r   r   )	r5   shaperN   mr6   lindicessymbolnamer@   rA   rB   test_matexpr_propertiesra   4   sz    77q!fE==QF"""T7??f$$$T7>>QT7>>#%%%rA   c                     \         \        ,          P                  \        P                  8X  g   Q h\         \        ,          P                  \        8X  g   Q h^\        ,          \        ,
          \        ,
          \        \        P                  !  8X  g   Q h\        \        ,          P                  \        \        38X  g   Q hR#    N)	r4   r5   r[   	__class__r   r,   r6   rN   r]   r@   rA   rB   test_matexprrf   <   so    aC;;!''!!!aC??f$$$Q37Q;*agg....aC;;1a&   rA   c                    aaaa \        R \        \        4      p \        R\        \        4      p\        R\        \        4      pV P	                  \        \        4      P
                  \        \        38X  g   Q hW,          P	                  W4      W,          8X  g   Q hW,          P	                  \        \        4      P                  '       g   Q h\        R^^4      o\        R^^4      o\        R^^4      o\        R\        ^4      oSP	                  SS4      S8X  g   Q h\        R4      pSP	                  \        R4      V4      P                  V^^38X  g   Q hSR,          P	                  SS4      SR,          8X  g   Q h\        \        VV3R l4       SR,          P	                  SS4      SR,          8X  g   Q hSR,          P	                  SS4      SR,          8X  g   Q h\        \        VV3R	 l4       \        \        V3R
 l4       \        ^^.^^..4      p \        ^^.^^..4      p\        R^^4      \        R^^4      rBW$,          P	                  W WA/4      \        W4      8X  g   Q hR# )r5   r6   r7   WXYZyc                  6   < S R,          P                  S S4      # )rY   rY   rY   subs)ri   rj   s   rB   rC   #test_matexpr_subs.<locals>.<lambda>[       qw||Aq1rA   c                  6   < S R,          P                  S S4      # rd   rd   rd   ro   )rh   rk   s   rB   rC   rq   b   rr   rA   c                  H   < S R,          P                  S \        ^4      4      # rt   )rp   r   )rh   s   rB   rC   rq   d   s    qw||AuQx8rA   r8   Nrn   rX   rd   rY   )r#   rN   r\   r]   rp   r[   	is_squarer
   argsr.   
IndexErrorr$   r!   r   )	r5   r6   r7   rl   r8   rh   ri   rj   rk   s	        @@@@rB   test_matexpr_subsr{   C   s   S!QAS!QAS!QA66!Q<!Q'''C::aqs"""C::a%%%%%S!QAS!QAS!QAS!QA66!Q<1CA66#c(A##1ay000T7<<14(((
 :12T7<<14((( T7<<14(((
:12
:89q!fq!f%&AAA AQ"La$;qC::qQl#va|333rA   c                  L  a \        R \        \        4      o\        R\        \        4      p \        SV ,           \        4      '       g   Q hSV ,           P
                  SP
                  8X  g   Q h\        SS,
          ^V ,          ,           \        4      '       g   Q h\        \        V3R l4       \        \        V3R l4       \        \        V3R l4       S\        \        \        4      ,           S,
          \        \        \        4      8X  g   Q h\        \        R 4       R# )r5   r6   c                     < S ^,           # rY   r@   rP   s   rB   rC   test_addition.<locals>.<lambda>u   	    a!erA   c                     < ^S ,           #    r@   rP   s   rB   rC   r   v   r   rA   c                     < ^S ,
          # r   r@   rP   s   rB   rC   r   w   r   rA   c                  T    \        \        \        4      \        P                  ,           # N)r,   rN   r\   r   Zeror@   rA   rB   rC   r   z   s    jA.7rA   N)
r#   rN   r\   
isinstancer   r[   r   r.   	TypeErrorr,   )r6   r5   s    @rB   test_additionr   m   s    S!QAS!QAa!eV$$$$E==AGG###a!eack6****
9m$
9m$
9m$z!Q!#z!Q'7777
978rA   c                  n  a \        R \        \        4      p \        R\        \        4      o\        R\        \        4      p^V ,          S,          P                  \        \        38X  g   Q hV ^ ,          S,          \        \        \        4      8X  g   Q h^V ,          P                  V P                  8X  g   Q hV \        \        \        4      ,          S,          \        \        \        4      8X  g   Q hV\        \        4      ,          VP                  ,          \        \        4      8X  g   Q hS^,          \        P                  S,          8X  g   Q h\        \        V3R l4       \        R \        \        4      p \        R\        \        4      o\        \        4      V S,           ,          V S,           8X  g   Q hV ^,          V ,          V ^,          8X  g   Q hV ^,          V P                  ^,          ,          V P                  8X  g   Q hV ^,          V P                  ^,          ,          V 8X  g   Q hR# )r5   r6   r7   c                     < ^S ,          # rd   r@   r6   s   rB   rC   %test_multiplication.<locals>.<lambda>   s	    !rA   N)r#   rN   r\   r]   r[   r,   r-   Ir   Halfr.   NotImplementedError)r5   r7   r6   s     @rB   test_multiplicationr   }   s   S!QAS!QAS!QAaCE==QF"""aCEjA&&&&aC;;!''!!!z!Q!#z!Q'7777x{?QSS HQK///Q3!&&(??
,S!QAS!QAA;!a% AE)))a46QT>>a4q=ACCa4q=ArA   c                     \        R \        \        4      p \        V ^4      pVP                  ^8X  g   Q hVP                  V 8X  g   Q hV \        ,          P                  \        8X  g   Q hV ^ ,          \        \        4      8X  g   Q hV ^,          V 8X  g   Q hV ^,          V8X  g   Q hV R,          \        V 4      8X  g   Q hV R,          R,          V 8X  g   Q hV ^,          ^,          V ^,          8X  g   Q hV \        P                  ,          \        V 4      8X  g   Q hV \        ^^4      ,          \        V 4      8X  g   Q h\        \        R 4       R# )r5   c                  *    \        R ^^4      ^,          # r   r?   r@   rA   rB   rC   test_MatPow.<locals>.<lambda>   s    c1a)@!)CrA   Nr>   )r#   rN   r    r   baser-   r   r   r   r   r   r   r.   r(   )r5   AAs     rB   test_MatPowr      s   S!QA	1B66Q;;77a<<qD::??a48A;a4199a42::b5GAJrEB;!qD191aff9Qhq!nQ'''
!CDrA   c                     aaa \        R 4      w  ooo\        RSS4      p V P                  SS38X  g   Q h\        \        VVV3R l4       V P                  4       V 8X  g   Q hR# )zn,m,tri   c                  *   < \        R SS 4      ! S4      # ri   r?   )r\   rN   ts   rB   rC   #test_MatrixSymbol.<locals>.<lambda>   s    l315a8rA   N)r   r#   r[   r.   r   doit)ri   r\   rN   r   s    @@@rB   test_MatrixSymbolr      sT    gGAq!S!QA77q!f
989668q==rA   c                     a  \        R ^^4      o \        S 4      \        ^^V 3R l4      8X  g   Q h\        S 4      \        ^^V 3R l4      8X  g   Q hR# )ri   c                    < SW3,          # r   r@   ijri   s   &&rB   rC   'test_dense_conversion.<locals>.<lambda>   s    AadGrA   c                    < SW3,          # r   r@   r   s   &&rB   rC   r      s    !AD'rA   N)r#   r   r!   r   s   @rB   test_dense_conversionr      sJ    S!QA1A7K!LLLL!9q!%9::::rA   c                  ^    \         \        ,          P                  \         \        08X  g   Q hR # r   )r7   r8   free_symbolsr@   rA   rB   test_free_symbolsr      s    aC!Q'''rA   c                  v    \        \        P                  \        R ^^4      ,          \        4      '       g   Q hR# )ri   N)r   r   r   r#   r"   r@   rA   rB   test_zero_matmulr      s'    aff|CA66
CCCCrA   c                      \        R ^^4      p \        \        V \        \	        \
        4      ^,          \        \
        4      ^,          ,           ..4      4      4      \        V \        ^..4      4      8X  g   Q hR# r5   N)r#   r   r   r   r   r4   r   r!   rP   s    rB   test_matadd_simplifyr      `    S!QAF1oA	CFAI0E/F.GHIJq&1#- ! ! !rA   c                      \        R ^^4      p \        \        V \        \	        \
        4      ^,          \        \
        4      ^,          ,           ..4      4      4      \        V \        ^..4      4      8X  g   Q hR# r   )r#   r   r   r   r   r4   r   r!   rP   s    rB   test_matmul_simplifyr      r   rA   c                     \        R \        \        4      p \        R\        \        4      p\        R\        \        4      p\	        \        4      \        \        \        4      V \        W4      \        W 4      \        V 4      \        V 4      \        V4      \        V^4      \        VR4      \        V^ 4      .pV F#  pWDP                  ! VP                  !  8X  d   K#  Q h	  R# )r5   r6   ri   Nr>   )r#   rN   r\   r]   r-   r,   r   r   r%   r&   r   r    re   ry   )r5   r6   ri   objsobjs        rB   test_invariantsr      s    S!QAS!QAS!QAQKAq)1fQlF1LaL'!*gaj&A,q"1aLD mmSXX.... rA   c                  $   \        R \        \        4      p V R,           V \        \        3,           V \        ^,           \        ^,           3,           \        R ^^4      p \        R^4       F   p\        R^4       F  pWV3,           K  	  K"  	  R# )r5   NrY   rd   r>   )r#   rN   r\   r]   krange)r5   r   r   s      rB   test_matexpr_indexingr      sn    S!QAdGadGa!eQUlOS!QA2q\r1AdGG  rA   c                  $  a a \        R ^^4      o S ^,          S R,          8X  g   Q hS \        ^4      ,          S R,          8X  g   Q hS ^,          S R,          8X  g   Q h\        S R,          4      S R	,          S R,          S R,          S R
,          .8X  g   Q h\        \        V 3R l4       \        \        V 3R l4       \        R\
        \        4      o\        \        V3R l4       \        R\
        ^4      oS^,          SR,          8X  g   Q hR# )r5   c                     < S ^,          # )   r@   rP   s   rB   rC   &test_single_indexing.<locals>.<lambda>   	    qtrA   c                     < S \         ,          # r   rQ   rP   s   rB   rC   r      s	    qtrA   r6   c                     < S ^,          # r~   r@   r   s   rB   rC   r      r   rA   NrX   rY   r   )Nrd   Nr   rZ   rn   )r#   intlistr.   rz   rN   r\   r5   r6   s   @@rB   test_single_indexingr      s    S!QAQ41T7??SV9$Q41T7??&	?qw$4!D'BBBB
:|$
:|$S!QA
:|$S!QAQ41T7??rA   c                      \         R,          \         R,          ,          \         R,          \         R,          ,          8X  g   Q hR# )r   NrX   r   rP   r@   rA   rB   test_MatrixElement_commutativer      s(    T71T7?agago---rA   c                     \        R ^^4      p V P                  4       P                  4       V R,          V R,          ,          V R,          ,          V R,          ,          V R,          V R,          ,          V R,          ,          V R,          ,          ,
          V R,          V R	,          ,          V R
,          ,          V R,          ,          ,
          V R,          V R	,          ,          V R,          ,          V R,          ,          ,           V R,          V R,          ,          V R
,          ,          V R,          ,          ,           V R,          V R,          ,          V R,          ,          V R,          ,          ,
          V R,          V R,          ,          V R,          ,          V R,          ,          ,
          V R,          V R,          ,          V R,          ,          V R,          ,          ,           V R,          V R	,          ,          V R,          ,          V R,          ,          ,           V R,          V R	,          ,          V R,          ,          V R,          ,          ,
          V R,          V R,          ,          V R,          ,          V R,          ,          ,
          V R,          V R,          ,          V R,          ,          V R,          ,          ,           V R,          V R,          ,          V R
,          ,          V R,          ,          ,           V R,          V R,          ,          V R,          ,          V R,          ,          ,
          V R,          V R,          ,          V R,          ,          V R,          ,          ,
          V R,          V R,          ,          V R,          ,          V R,          ,          ,           V R,          V R,          ,          V R,          ,          V R,          ,          ,           V R,          V R,          ,          V R
,          ,          V R,          ,          ,
          V R,          V R,          ,          V R
,          ,          V R,          ,          ,
          V R,          V R,          ,          V R,          ,          V R,          ,          ,           V R,          V R,          ,          V R,          ,          V R,          ,          ,           V R,          V R,          ,          V R,          ,          V R,          ,          ,
          V R,          V R	,          ,          V R,          ,          V R,          ,          ,
          V R,          V R	,          ,          V R
,          ,          V R,          ,          ,           8X  g   Q h\        R^^4      p\        W,           4      P	                  4       \        W,           4      u;8X  d   W,           P                  4       8X  g   Q h Q hR# )r5   r6   NrZ   rn   ru   )   r   )rd   r   )r   rd   r   rw   )r   rY   )rY   r   rX   r   )rd   r   r   r   r   rd   )r   r   )r#   as_explicitr*   r)   r   r   s     rB   test_MatrixSymbol_determinantr      s3   S!QA==? AdGAdGOAdG$;AdG$C	$$$$'%(*+D'!D'/!D'*A!D'*I%J	$$$$'%(*+D'!D'/!D'*A!D'*I%J 	
$$$$'%( +,D'!D'/!D'*A!D'*I%J 	
$$$$'	%( +,D'!D'/!D'*A!D'*I	%J
 	
$$$$'%(
 +,D'!D'/!D'*A!D'*I%J 	
$$$$'%( +,D'!D'/!D'*A!D'*I%J 	
$$$$'%( +,D'!D'/!D'*A!D'*I%J 	
$$$$'%( +,D'!D'/!D'*A!D'*I%J 	
$$$$'	%( +,D'!D'/!D'*A!D'*I	%J 	
$$$$'
%( +,D'!D'/!D'*A!D'*I
%J 	
$$$$'%( +,D'!D'/!D'*A!D'*I%J 	
$$$$'%( ( ( ( 	S!QAqu""$AE
CqukkmCCCCCrA   c                      \         R,          \         R,          ,          P                  \         R,          4      \         R,          8X  g   Q hR# )r   Nr   rZ   )r5   r   r@   rA   rB   test_MatrixElement_diffr     s/    dGAdGO!!!D'*ag555rA   c                      \        R ^^4      p \        ^^.4      pV R,          P                  W4      P                  4       VR,          8X  g   Q hR# )uNrZ   )r#   r   rp   r   )r   vs     rB   test_MatrixElement_doitr     sF    S!QAAAT7<<""$$///rA   c                     \        \        4      p \        V ^4      P                  4       V ^,          8X  g   Q hV \        ,          V 8X  g   Q h\        V ^ 4      P                  4       V ^,          8X  g   Q hV R,          V 8X  g   Q h\        V R4      P                  4       V ^ ,          8X  g   Q h\        ^4      p\        V^4      P                  4       V\        ,          8X  g   Q h\        V^4      P                  4       V8X  g   Q h\        VR4      P                  4       V^,          8X  g   Q h\        V^4      P                  4       V^ ,          8X  g   Q hR# )r   Nr   )r-   rN   r    r   )MNs     rB   test_identity_powersr     s   A!Q<!Q$&&&a4199!Q<!Q$&&&b5A::!R=1a4'''A!Q<!Q$&&&!Q<!###!R=1a4'''!Q<!Q$&&&rA   c                  f  a a \        \        \        4      o S ^,          S 8X  g   Q h\        \        V 3R l4       S ^ ,          \	        \        4      8X  g   Q h\        S ^4      P                  4       S ^,          8X  g   Q h\        \        V 3R l4       \        ^^4      o\        S^4      P                  4       S^,          8X  g   Q h\        \        V3R l4       S^,          \        S^4      P                  4       8X  g   Q hS^ ,          \	        ^4      8X  g   Q h\        \        V3R l4       R# )   c                     < S R,          # rd   r   r@   z1s   rB   rC   !test_Zero_power.<locals>.<lambda>"  	    b"frA   c                  8   < \        S R4      P                  4       # r   r    r   r   s   rB   rC   r   %      fRn113rA   c                     < S R,          # )r   r@   z2s   rB   rC   r   (  r   rA   c                  8   < \        S R4      P                  4       # rY   r>   r   r   s   rB   rC   r   +  r   rA   N)r,   rN   r.   rU   r-   r    r   )r   r   s   @@rB   test_Zero_powerr     s    	Aq	Bq5B;;
:}%q5HQK"a=2q5(((
:34	Aq	B"a=2q5(((
:}%q5F2qM&&((((q5HQK
:34rA   c                     \        \        \        ,          \        ^ 3,          \        \        ^ 3,          4      p \        \        \        3,          P                  \        \        \        3,          4      ^8X  g   Q h\        \        \        3,          P                  \        R,          4      \        ^ \        ^ \        ^,
          34      \        ^ \        R4      ,          8X  g   Q h\        R4      pV P                  \        \        V\        ^ \        ^,
          34      \        \        V3,          ,          V^ \        ^,
          34      4      '       g   Q hV P                  4       \        \        \        3,          8X  g   Q hR# )r   _i_1NrZ   )r   r8   r:   r   pr   rN   r   dummy_eqr   r   )dexprr   s     rB   test_matrixelement_diffr   .  s    !A#qsQqsV$EQT7<<!Q$ A%%%QT7<<$ N1a!QqS$B>RSUVX^C_$____=D>>#nT1q!A#h?!T'
JTSTVWZ[V[L\]^^^^::<1QT7"""rA   c                    aa \        R 4      w  rr#\        W.W#..4      o\        R4      w  opSSV3,          p\        V\        4      '       g   Q h\	        ^^.^^..4      pVSV3,          p\        V\        4      '       g   Q hR FK  w  rVP                  SWV	/4      SW3,          8X  g   Q hVP                  SWV	/4      WhV	3,          8X  d   KK  Q h	  \        R^^4      p
V
R,          P                  V
S4      V 8X  g   Q hV
SV3,          P                  V
S4      SSV3,          8X  g   Q hSSV3,          P                  SV
4      V
SV3,          8X  g   Q h\        S^S,          ^,
          V3,          \        4      '       g   Q hS^S,          ^,
          V3,          P                  S^V^ /4      SR
,          8X  g   Q h\        SS^ 3,          \        4      '       g   Q hSS^ 3,          P                  S^ 4      SR,          8X  g   Q hS^ S3,          P                  S^4      SR	,          8X  g   Q hSSV3,          P                  V 4      \        ^^ .^ ^ ..4      SV3,          8X  g   Q h\        \        VV3R l4       \        \        VV3R l4       \        \        VV3R l4       \        \        VV3R l4       R# )zx y z wzi, jr5   c                     < S S^3,          # r   r@   r   r   s   rB   rC   0test_MatrixElement_with_values.<locals>.<lambda>Q      qAwrA   c                     < S SR3,          # r   r@   r   s   rB   rC   r   R  s    qBxrA   c                     < S ^S3,          # r   r@   r   s   rB   rC   r   S  r   rA   c                     < S RS3,          # r   r@   r   s   rB   rC   r   T  s    qQxrA   NrZ   rX   r   )rZ   rX   r   rn   )
r   r!   r   r+   r$   rp   r#   r   r.   rU   )r4   rl   zr:   r   MijMsmsijoiojr5   r   r   s              @@rB   test_MatrixElement_with_valuesr  8  sy   #JA! A6?DAq
AqD'Cc=))))	1v1v&	'Bad8DdM****2xxB2'1RV9444yy!RB(B2vJ666 3 	S!QAT7<<1"""QT7<<11a4(((QT7<<11a4(((a!a
m]3333QqS1WaZ=q!Ql+qw666a1g}----QT7<<14(((QT7<<14(((QT7<<?fq!fq!f%56q!t<<<<
:'
:'(
:'
:'(rA   c                  (   \        R ^^4      p V P                  4       V R,          8X  g   Q h\        R^^4      P                  4       pVP                  4       \        ^VR,          ,          ..4      8X  g   Q h\        R^^4      P                  4       pVR,          VR,          ,          VR,          VR,          ,          ,
          p\        VR,          VR,          ) .VR,          ) VR,          ..4      V,          pVP                  4       V8X  g   Q hR# )r6   ri   Nr>   rZ   rn   rX   r   )r#   invr   r!   )r6   ri   detXinvXs       rB   test_invr  W  s    S!QA557ae 	S!Q++-A557fq4yk]++++S!Q++-AT71T7?QtWQtW_,DQtWqwh'tWHqw') *,01D557d??rA   c                  &   \        R \        \        4      p \        R\        \        4      pW,           \        \        ,           ,          pV \        ,          V\        ,          ,           V \        ,          ,           V\        ,          ,           pW#8w  g   Q h\	        V4      V8X  g   Q h\        V4      V8X  g   Q hVR,          V R,          VR,          ,          V R,          \        ,          VR,          ,          ,
          R,          ,          V R,          ,          p\        \        4      p\        V4      V\        ,
          VR,          V R,          V\        ,
          ,          VR,          ,          R,          ,          V R,          ,          39   g   Q hR# )r5   r6   Nr>   )r#   rN   r7   r8   r   r   r-   )r5   r6   expr1expr2exprr   s         rB   test_factor_expandr  f  s   S!QAS!QAUQUOEaC!A#I!Oac!E>>%=E!!!%=E!!!r7AGAGOa"gaiB&772>>q2wFDA$<AE1b5!R%Q-2*=)B#B1b5#HIIIIrA   c            	        aa  ^ RI HoHp  \        R^^4      oS! \        S^ ^ 4      \        S^ ^4      .\        S^^ 4      \        S^^4      ..4      pX ! S! S4      V4      '       g   Q hV ! S! SRR7      V4      '       g   Q h\        \        R4      P                  R4      ^ ,          4      ^8  d   \        \        VV3R l4       R	# R	#   \         d    \	        R4        Li ; i)
r   )arrayarray_equalz?NumPy must be available to test creating matrices from ndarraysr5   Tcopynumpy.c                     < S! S R R7      # )Fr  r@   )r5   r  s   rB   rC   'test_numpy_conversion.<locals>.<lambda>  s    %"6rA   N)r  r  r  ImportErrorr0   r#   r+   r   r1   splitr.   r   )r  np_arrayr5   r  s     @@rB   test_numpy_conversionr  u  s    P, 	S!QA}Q1-}Q1/EF1a]1a346 7HuQx****uQT*H5555
77!!#&q)*a/y67 0  PNOPs   C C$#C$c                     \        R ^^4      p V P                  V ,          P                  P                  4       \	        V P                  V ,          P                  R,          V P                  V ,          P                  R,          .V P                  V ,          P                  R,          V P                  V ,          P                  R,          ..4      8X  g   Q hR# )r5   NrZ   rX   r   rn   )r#   Tr   r   r!   rP   s    rB   test_issue_2749r    s    S!QACC!G;;""$!##'T1BQSS1WKKPTDU0VccAg[[qD)*0, )- - - -rA   c                      \        R ^^4      p V P                  V ,          P                  4       R,          \        V R,          R,          ..4      8X  g   Q hR# )r4   Nr>   rZ   r   )r#   r  r   r!   )r4   s    rB   test_issue_2750r    sF    S!QACCE "$42/@(AAAArA   c                     \        R ^^4      p \        R^^4      p\        W4      R8X  g   Q h\        V R,          VR,          4      P                  \        J g   Q h\        ^^4      p \        ^^4      p\        W4      R8X  g   Q hR# )r5   r6   FTNr   )r#   r   funcr,   r   s     rB   test_issue_7842r"    s}    S!QAS!QAa8uafag##r)))1aA1aAa8trA   c                  T   \        R 4      p \        R4      ! V 4      pVP                  V 4      p\        V4      \        V4      V,          ,           p\	        V4      \        V4      VP                  V 4      ,          ,           p\	        V4      \	        V 4      ,          VP                  V 4      P                  V 4      ,          p\        V.V.V..4      p\        VP                  V4      .VP                  V4      .VP                  V4      ..4      pVP                  V4      V8X  g   Q hR# )r   r4   N)r   r   r   r   r   r   r!   )r   r4   dxexp1exp2exp3r5   r6   s           rB   test_issue_21195r(    s    AaA	
Bq6CF2IDq6CFBGGAJ''Dq6#a&="''!***1--D'(A111?@A66!9>>rA   c                     \        R ^^4      p \        R^^4      pW,          p\        V4      P                  4       p\        R^^4      pVP                  W \        V,          ,           4      pVR,          VR,          ,          VR,          VR,          ,          ,           VR,          VR,          ,          ,           pVR	,          P                  \        4      V8X  g   Q h\        VR	,          \        4      P                  4       V8X  g   Q hR# )
r5   r6   r   NrX   r   rn   rw   r   rZ   )r#   r!   adjugaterp   r4   r   r   )r5   r6   JJinvr   Jkexpecteds          rB   test_issue_24859r/    s    S!QAS!QA	A!9DS!QA	1!A#g	Bwqw4401T71T7?BHd8==x'''4!!!#x///rA   c                     \        ^4      p \        ^^4      p\        ^ V 4      \        V ^ 4      u;8X  d
   W39   g   Q h Q h\        ^^.^^..4      p\        \        ^\        ,          .^\        ,          ^\        ,          ..4      p\        \        V4      \        V\        4      u;8X  d	   V8X  g   Q h Q h\        R^^4      p\        WB4      \        WB4      8X  g   Q h\        W$4      \        W$4      8X  g   Q h\        \        W$4      p\        V\        V4      p\        W$\        4      pYVu;8X  d   Tu;8X  d   \        W44      8X  g   Q h Q h\        \        WB4      p\        V\        V4      p\        WB\        4      pYVu;8X  d   Tu;8X  d   \        WC4      8X  g   Q h Q h\        W"4      V^,          8X  g   Q h\        WBV4      \        WB^,          4      8X  g   Q h\        W"V4      \        V^,          V4      8X  g   Q h\        W$V4      \        W$V4      8X  g   Q h\        V\        W"\        4      \        WC^,          4      8X  g   Q hR# rd   r5   N)r   r,   r   r!   r4   r#   r   )r   r   r   Mxr5   abcs           rB   test_MatMul_postprocessorr6    s   aA	Aq	Bq!9Aq	,aW,,,,,AA A	!QqSAaC1:&	'Bq!9Aq	'R'''''S!QAq9q$$$q9q$$$AqAAq!AA!A'Q'&-'''''AqAAq!AA!A'Q'&-'''''q91qQ<6!T?***qQ<6!Q$?***qQ<6!?***q!Q1q5!1111rA   c                      \        ^4      p \        V \        P                  4      \        \        P                  V 4      8X  g   Q hR# rc   )r   r   r   NaN)r   s    rB   test_MatAdd_postprocessor_xfailr9    s/     	aAq!%%=CqM)))rA   c                  "   \        ^4      p \        ^ V 4      \        V ^ 4      u;8X  d	   V 8X  g   Q h Q h\        \        P                  V 4      pV\        V \        P                  4      8X  g   Q h\	        V\        4      '       g   Q hVP
                  \        P                  V 38X  g   Q h\        \        P                  V 4      pV\        V \        P                  4      8X  g   Q h\	        V\        4      '       g   Q hVP
                  \        P                  V 38X  g   Q h\        V \        P                  4      p\	        V\        4      '       g   Q hVP
                  \        P                  V 38X  g   Q h\        ^^.^^..4      p\        \        V4      pV\        V\        4      8X  g   Q h\	        V\        4      '       g   Q hVP
                  \        V38X  g   Q h\        R^^4      p\        W24      \        W#4      u;8X  d   W2,           8X  g   Q h Q h\        \        W#4      pV\        V\        V4      u;8X  dZ   \        W#\        4      u;8X  dD   \        \        W24      u;8X  d.   \        V\        V4      u;8X  d   \        W2\        4      8X  g   Q h Q h\	        V\        4      '       g   Q hVP
                  \        W2,           38X  g   Q h\        W"4      ^V,          8X  g   Q h\        W#V4      \        W"V4      u;8X  d)   \        W2V4      u;8X  d   V^V,          ,           8X  g   Q h Q h\        V\        W"\        4      p\	        V\        4      '       g   Q hVP
                  ^\        ,          V^V,          ,           38X  g   Q hR# r1  )r   r   r   Infinityr   ry   ComplexInfinityr8  r!   r4   r#   )r   r3  r   r5   s       rB   test_MatAdd_postprocessorr=    s   
 	aAq!9Aq	&Q&&&&&AJJAAqzz""""a66ajj!_$$$Aq!AAq(())))a66a''++++AquuAa66aeeQZAA AAq	AAq	>>a66aVS!QAq9A	*QU***** 	AqAAq!\A!\Aq\Aq!\PSTUZ[P\\\\\\a66aZq9!qQ<3qQ<B3qQ<B1qs7BBBBBAq!Aa66ac1qs7^###rA   c                     \        \        \        \        ,          \        \        ,          ,           4      4      \        8X  g   Q h\        ^\        ,          \        ,          ^\        ,          \        ,          ,           4      p \        V 4      \        8X  g   Q hV P
                  ^\        ,          \        ,          ^\        ,          \        ,          38X  g   Q hR# rc   )typer   r7   r8   r   ry   )r3  s    rB    test_simplify_matrix_expressionsr@    s|    	!A#!)$%///!A#a%!A#a%- A7f66ac!eQqSU^###rA   c                  4   \        R ^^4      p \        R^^4      p\        V 4      \        V4      ,          p\        V4      \        V 4      ,          pW#8w  g   Q hW#,
          ^ 8w  g   Q h\        V\        4      '       d   Q h\        V\        4      '       d   Q hR# r5   r6   N)r#   r   r   )r5   r6   r
  r  s       rB   test_exprC    s    S!QAS!QAF3q6MEF3q6ME>>=A%%%%%%%%%%%rA   c                  (    \        \        R  4       R# )c                      \        ^^R4      # )rY   r5   r?   r@   rA   rB   rC   #test_invalid_args.<locals>.<lambda>  s    aC!8rA   N)r.   r   r@   rA   rB   test_invalid_argsrG    s    
<89rA   c                     \        R RR7      p \        V ^^4      pVP                  4       pVP                  ^^4      pVP                  VP                  8X  g   Q hVP                  ^ ,          VP                  ^ ,          8X  g   Q hR# )r5   T)complexN)r	   r#   r   rp   ry   )A_labelr5   A_1A_2s       rB   test_matrixsymbol_from_symbolrM    sj    S$'GWa#A
&&(C
&&A,C88qvv88A;!&&)###rA   c                      \        R ^^4      p V P                  4       \        V R,          V R,          V R,          .V R,          V R,          V R,          ..4      8X  g   Q h\        \        R 4       R# )	rk   c                  *    \         P                  4       # r   )r5   r   r@   rA   rB   rC   "test_as_explicit.<locals>.<lambda>,  s
    q}}rA   NrZ   rX   r   r   rn   r   )r#   r   r   r.   rU   )rk   s    rB   test_as_explicitrQ  &  sm    S!QA==?o	
4!D'1T7#	
4!D'1T7#/     :./rA   c                  8  aa \        ^^\        P                  R7      oSP                  R
8X  g   Q hSP                  \        P                  8X  g   Q h\        ^^.^^..4      oSS9   g   Q h\        ^^4      oSS9   g   Q h\        \        V3R l4       \        \        V3R l4       \        \        \        \        P                  R7      o\        S9   g   Q h\        \        V3R l4       \        \        VV3R l4       \        ^^0 RmR7      o\        ^^.^^..4      o\        ^^..4      p SS9   \        P                  8X  g   Q hV S9   \        P                  8X  g   Q h\        \        R 4       \        \        R 4       \        \        R 4       R	# )rd   )setc                     < \         S 9   # r   rP   r   s   rB   rC    test_MatrixSet.<locals>.<lambda>7  	    a1frA   c                     < ^S 9   # r~   r@   rU  s   rB   rC   rV  8  	    a1frA   c                     < \         S 9   # r   )r7   rU  s   rB   rC   rV  ;  rW  rA   c                     < SS 9   # r   r@   )r   ri   s   rB   rC   rV  <  rY  rA   c                  8    \        ^R\        P                  4      # r   r'   r   Realsr@   rA   rB   rC   rV  B  s    yB8rA   c                  8    \        R R\        P                  4      # )g333333@r>   r]  r@   rA   rB   rC   rV  C  s    yb!'':rA   c                      \        ^^R4      # )rd   )rY   rd   r   )r'   r@   rA   rB   rC   rV  D  s    i1i8rA   Nru   >   rY   rd   r   )r'   r   r^  r[   rS  r!   r,   r.   r   rN   r\   r5   falserU   )rj   r   ri   s    @@rB   test_MatrixSetrb  /  s=   !QAGG$A77f55AGGAA A6M61aA6M6
9n%
9n%!QAGG$A6M6
9n%
9n%!QI&AAA AAxAFqwwFqww
:89
::;
989rA   c                  :   \        R ^^4      p \        R^^4      p\        ^^4      pV ) V,           ) V ,
          V,           V8X  g   Q hV ) V,           ) V ,
          V,           P                  4       V8X  g   Q hV ) V,           ) V ,
          V,           P                  4       V8X  g   Q hV ) V,           ) V ,
          V,           V,
          P                  4       V8X  g   Q hV ) V,           ) V ,
          V,           V,
          P                  4       V8X  g   Q hW V,           ,          WP                  VP                  ,           ,          ,           P                  4       V ^,          W,          ,           WP                  ,          ,           WP                  ,          ,           8X  g   Q hR# rB  )r#   r,   r   r   r  )r5   r6   rk   s      rB   test_matrixsymbol_solvingrd  G  sC   S!QAS!QA1aAR!V9q=1!!!b1fIMA'')Q...b1fIMA%%'1,,,b1fIMA!++-222b1fIMA!))+q0001uI339%--/1a4!#:##3E##3MMMMrA   N)wsympy.concrete.summationsr   sympy.core.exprtoolsr   sympy.core.functionr   r   sympy.core.relationalr   sympy.core.symbolr   r	   r
   (sympy.functions.special.tensor_functionsr   sympy.matrices.denser   sympy.polys.polytoolsr   
sympy.corer   r   r   r   r   r   r   sympy.functionsr   r   r   r   r   r   sympy.simplifyr   sympy.matricesr   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   sympy.matrices.exceptionsr(   &sympy.matrices.expressions.determinantr)   r*   "sympy.matrices.expressions.matexprr+   "sympy.matrices.expressions.specialr,   r-   sympy.testing.pytestr.   r/   r0   importlib.metadatar1   rN   r\   r]   r   r   r4   r5   r6   r7   r8   r9   r:   rV   ra   rf   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/  r6  r9  r=  r@  rC  rG  rM  rQ  rb  rd  r@   rA   rB   <module>rw     s   ) * . $ 2 2 C & (   : : #5 5 5 5 ; C < C 4 4 &T21aACLaaaaaa8$&!'4T9 2E&;(D!!/.D(60'5#)> J J8-B
	
02: * *,$^$&:$0:0	NrA   