Ë
    7^(hâ/  ã                   ó¸  — d dl mZmZ d dlmZ d dlmZmZ d dlm	Z	 d dl
mZmZmZmZmZmZmZmZmZ d dlmZ d dlmZ  edd	d	«      Z ed
d	d«      Z edd	d	«      Z eddd«      Z eddd«      Z edd d «      Z edd	d«      Z edd	d«      Zd„ Z d„ Z!d„ Z"ed„ «       Z#d„ Z$d„ Z%d„ Z&d„ Z'd„ Z(d„ Z)d„ Z*d„ Z+d„ Z,d „ Z-d!„ Z.ed"„ «       Z/d#„ Z0d$„ Z1d%„ Z2d&„ Z3d'„ Z4d(„ Z5y))*é    )ÚQÚask)ÚSymbol)Ú
DiagMatrixÚDiagonalMatrix)ÚMatrix)	ÚMatrixSymbolÚIdentityÚ
ZeroMatrixÚ	OneMatrixÚTraceÚMatrixSliceÚDeterminantÚBlockMatrixÚBlockDiagMatrix)ÚLofLU)ÚXFAILÚXé   ÚYé   ÚZÚA1x1é   ÚB1x1ÚC0x0ÚV1ÚV2c                  óþ   — t        t        j                  t        «      «      sJ ‚t        t        j                  t        «      «      rJ ‚t        t        j                  t        t        j
                  z  «      «      sJ ‚y ©N)r   r   Úsquarer   r   ÚT© ó    úc/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sympy/assumptions/tests/test_matrices.pyÚtest_squarer&      sL   € ÜŒq�x‰xœ‹{ÔÐÐÜ”1—8‘8œA“;ÔÐÐÜŒq�x‰xœœ!Ÿ#™#™‹ÔÐÑr$   c                  óì  — t        t        j                  t        «      t        j                  t        «      «      sJ ‚t        t        j                  t        «      «      du sJ ‚t        t        j                  t        t        z  «      t        j                  t        «      «      du sJ ‚t        t        j                  t        t
        z  «      t        j                  t        «      «      �J ‚t        t        j                  t        t
        z  «      t        j                  t        «      t        j                  t
        «      z  «      du sJ ‚t        t        j                  t        j                  «      «      �J ‚t        t        j                  t        j                  «      t        j                  t        «      «      du sJ ‚t        t        j                  t        j                  «      «      du sJ ‚t        t        j                  t        d«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        «      t        j                  t        «      t        j                  t        «      z  «      sJ ‚y )NFTr   r   )r   r   Ú
invertibler   r   r   r"   ÚIr
   r   r   Úfullrankr!   r#   r$   r%   Útest_invertibler+      sâ  € ÜŒq�|‰|œA‹¤§¡¬Q£Ô0Ð0Ð0ÜŒq�|‰|œA‹Ó 5Ñ(Ð(Ð(ÜŒq�|‰|œAœa™CÓ ¤!§,¡,¬q£/Ó2°eÑ;Ð;Ð;ÜŒq�|‰|œAœa™CÓ ¤!§,¡,¬q£/Ó2Ð:Ð:Ð:ÜŒq�|‰|œAœa™CÓ ¤!§,¡,¬q£/´A·L±LÄ³OÑ"CÓDÈÑLÐLÐLÜŒq�|‰|œAŸC™CÓ Ó!Ð)Ð)Ð)ÜŒq�|‰|œAŸC™CÓ ¤!§,¡,¬q£/Ó2°dÑ:Ð:Ð:ÜŒq�|‰|œAŸC™CÓ Ó! TÑ)Ð)Ð)ÜŒq�|‰|œH Q›KÓ(Ó)¨TÑ1Ð1Ð1ÜŒq�|‰|œJ q¨!Ó,Ó-Ó.°%Ñ7Ð7Ð7ÜŒq�|‰|œI a¨›OÓ,Ó-°Ñ5Ð5Ð5ÜŒq�|‰|œI a¨›OÓ,Ó-°Ñ6Ð6Ð6ÜŒq�|‰|œA‹¤§
¡
¬1£´·±¼³Ñ ;Ô<Ð<Ñ<r$   c                  óF  — t        t        j                  t        «      «      �J ‚t        t        j                  t        «      t        j                  t        «      «      du sJ ‚t        t        j                  t        «      t        j                  t        «       «      du sJ ‚y )NFT)r   r   Úsingularr   r(   r#   r$   r%   Útest_singularr.   '   sh   € ÜŒq�z‰zœ!‹}ÓÐ%Ð%Ð%ÜŒq�z‰zœ!‹}œaŸl™l¬1›oÓ.°%Ñ7Ð7Ð7ÜŒq�z‰zœ!‹}œqŸ|™|¬A›Ð.Ó/°4Ñ7Ð7Ñ7r$   c                  ó€   — t        t        j                  t        «      t        j                  t        «      «      du sJ ‚y )NT)r   r   r(   r   r*   r#   r$   r%   Útest_invertible_fullrankr0   ,   s'   € äŒq�|‰|œA‹¤§
¡
¬1£Ó.°$Ñ6Ð6Ñ6r$   c                  ó:  — t        t        j                  t        t	        d«      g«      «      «      dk(  sJ ‚t        t        j                  t        t        dd«      g«      «      «      dk(  sJ ‚t        g d¢g d¢g«      } t        g d¢g d¢g«      }t        t        j                  t        t        j                  dd«      |j                  g| t        j                  d«      gg«      «      «      dk(  sJ ‚t        t        j                  t        |j                  t        j                  dd«      gt        j                  d«      | gg«      «      «      dk(  sJ ‚t        t        j                  t        | t        j                  d«      gt        j                  dd«      |j                  gg«      «      «      dk(  sJ ‚t        t        j                  t        t        j                  d«      | g|j                  t        j                  dd«      gg«      «      «      dk(  sJ ‚y )	Nr   TF)r   r   r   )r   é   é   )r3   r   é   )r   r   r2   r   )
r   r   r(   r   r
   r   r   Úonesr"   Úeye©r   r   s     r%   Útest_invertible_BlockMatrixr8   1   sà  € ÜŒq�|‰|œK¬°!«¨Ó6Ó7Ó8¸DÒ@Ð@Ð@ÜŒq�|‰|œK¬°A°qÓ)9Ð(:Ó;Ó<Ó=ÀÒFÐFÐFä’	š9Ð%Ó&€AÜ’	š9Ð%Ó&€AäŒq�|‰|œKÜ	�‰�Q˜Ó	˜AŸC™CÐ Ø	
ŒF�J‰J�q‹MÐð)ó ó ó 	ð òð ð ô
 Œq�|‰|œKØ	
�‰Œf�k‰k˜!˜QÓÐ Ü	�‰�A‹˜Ðð)ó ó ó 	ð òð ð ô
 Œq�|‰|œKØ	
ŒF�J‰J�q‹MÐÜ	�‰�Q˜Ó	˜AŸC™CÐ ð)ó ó ó 	ð òð ð ô
 Œq�|‰|œKÜ	�‰�A‹˜ÐØ	
�‰Œf�k‰k˜!˜QÓÐ ð)ó ó ó 	ð òð ñ r$   c                  ó‚  — t        t        j                  t        t	        d«      t	        d«      «      «      «      dk(  sJ ‚t        t        j                  t        t        dd«      t	        d«      «      «      «      dk(  sJ ‚t        t        j                  t        t	        d«      t        dd«      «      «      «      dk(  sJ ‚y )Nr   r2   TF)r   r   r(   r   r
   r   r   r#   r$   r%   Útest_invertible_BlockDiagMatrixr:   M   s‰   € ÜŒq�|‰|œO¬H°Q«K¼À!»ÓEÓFÓGÈ4ÒOÐOÐOÜŒq�|‰|œO¬J°q¸!Ó,<¼hÀq»kÓJÓKÓLÐPUÒUÐUÐUÜŒq�|‰|œO¬H°Q«K¼À1Àa»ÓIÓJÓKÈuÒTÐTÑTr$   c            	      óº  — t        t        j                  t        «      t        j                  t        «      «      sJ ‚t        t        j                  t        t        z  «      t        j                  t        «      «      �J ‚t        t        j                  t        t        z  «      t        j                  t        «      t        j                  t        «      z  «      du sJ ‚t        t        j                  t        t        z   «      t        j                  t        «      t        j                  t        «      z  «      du sJ ‚t        t        j                  t
        «      «      du sJ ‚t        t        j                  t
        t
        j                  z  «      «      du sJ ‚t        t        j                  t
        j                  t        z  t
        z  «      «      �J ‚t        t        j                  t
        j                  t        z  t
        z  «      t        j                  t        «      «      du sJ ‚t        t        j                  t        dz  «      t        j                  t        «      «      du sJ ‚t        t        j                  t        «      «      du sJ ‚t        t        j                  t        t        z   «      «      du sJ ‚t        t        j                  t        t        z  «      «      du sJ ‚t        t        j                  t        j                  t        z  «      «      du sJ ‚t        t        j                  t        j                  t        t        z   z  «      «      du sJ ‚t        t        j                  t        j                  t        t        z   z  t        z   «      «      du sJ ‚t        t        j                  t        t
        dd«      «      «      du sJ ‚t        t        j                  t        d«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚y )NTFé
   ©r   r   ©r   r   r   )r   r   Ú	symmetricr   r   r   r"   r   r   r   r   r   r
   r   r   r#   r$   r%   Útest_symmetricr@   S   sØ  € ÜŒq�{‰{œ1‹~œqŸ{™{¬1›~Ô.Ð.Ð.ÜŒq�{‰{œ1œQ™3Ó¤§¡¬Q£Ó0Ð8Ð8Ð8ÜŒq�{‰{œ1œQ™3Ó¤§¡¬Q£´!·+±+¼a³.Ñ!@ÓAÀTÑIÐIÐIÜŒq�{‰{œ1œq™5Ó!¤1§;¡;¬q£>´A·K±KÄ³NÑ#BÓCÀtÑKÐKÐKÜŒq�{‰{œ1‹~Ó %Ñ'Ð'Ð'ÜŒq�{‰{œ1œQŸS™S™5Ó!Ó" dÑ*Ð*Ð*ÜŒq�{‰{œ1Ÿ3™3œq™5¤™7Ó#Ó$Ð,Ð,Ð,ÜŒq�{‰{œ1Ÿ3™3œq™5¤™7Ó#¤Q§[¡[´£^Ó4¸Ñ<Ð<Ð<ÜŒq�{‰{œ1˜b™5Ó!¤1§;¡;¬q£>Ó2°dÑ:Ð:Ð:ÜŒq�{‰{œ4Ó Ó! TÑ)Ð)Ð)ÜŒq�{‰{œ4¤$™;Ó'Ó(¨DÑ0Ð0Ð0ÜŒq�{‰{œ4¤$™;Ó'Ó(¨DÑ0Ð0Ð0ÜŒq�{‰{œ2Ÿ4™4¤™7Ó#Ó$¨Ñ,Ð,Ð,ÜŒq�{‰{œ2Ÿ4™4¤¤b¡™>Ó*Ó+¨tÑ3Ð3Ð3ÜŒq�{‰{œ2Ÿ4™4¤¤b¡™>¬DÑ0Ó1Ó2°dÑ:Ð:Ð:ÜŒq�{‰{œ;¤q¨&°&Ó9Ó:Ó;¸tÑCÐCÐCÜŒq�{‰{œ8 A›;Ó'Ó(¨DÑ0Ð0Ð0ÜŒq�{‰{œ: a¨Ó+Ó,Ó-°Ñ5Ð5Ð5ÜŒq�{‰{œ9 Q¨›?Ó+Ó,°Ñ4Ð4Ñ4r$   c                 óÐ  — t         | t        «       | t        «      «      sJ ‚t         | t        j                  «       | t        «      «      du sJ ‚t         | t        j                  «       | t        «      «      du sJ ‚t         | t        dz  «       | t        «      «      sJ ‚t         | t        «      «      du sJ ‚t         | t        «      «      �J ‚t         | t        «      t        j                  t        «       «      du sJ ‚t         | t        t        z  t        z  «       | t        «       | t        «      z  «      du sJ ‚t         | t        d«      «      «      du sJ ‚t         | t        dd«      «      «      du sJ ‚t        t        j                  t        «       | t        «      «      sJ ‚t         | t        t        z   «       | t        «       | t        «      z  «      rJ ‚y )NTr   Fr   )
r   r   r"   r)   r   r   r(   r   r
   r   )Ú	predicates    r%   Ú_test_orthogonal_unitaryrC   h   sw  € Ü‰yœ‹|™Y¤q›\Ô*Ð*Ð*Ü‰yœŸ™‹~™y¬›|Ó,°Ñ4Ð4Ð4Ü‰yœŸ™‹~™y¬›|Ó,°Ñ4Ð4Ð4Ü‰yœ˜A™‹¡	¬!£Ô-Ð-Ð-Ü‰yœ‹|Ó Ñ%Ð%Ð%Ü‰yœ‹|ÓÐ$Ð$Ð$Ü‰yœ‹|œaŸl™l¬1›oÐ-Ó.°%Ñ7Ð7Ð7Ü‰yœœ1™œQ™Ó¡¬1£±	¼!³Ñ!<Ó=ÀÑEÐEÐEÜ‰yœ !›Ó%Ó&¨$Ñ.Ð.Ð.Ü‰yœ A qÓ)Ó*Ó+¨uÑ4Ð4Ð4ÜŒq�|‰|œA‹¡	¬!£Ô-Ð-Ð-Ü‘9œQ¤™UÓ#¡Y¬q£\±I¼a³LÑ%@ÔAÐAÐAÐAr$   c                  ó6   — t        t        j                  «       y r    )rC   r   Ú
orthogonalr#   r$   r%   Útest_orthogonalrF   v   s   € ÜœQŸ\™\Õ*r$   c                  ó®   — t        t        j                  «       t        t        j                  t        «      t        j
                  t        «      «      sJ ‚y r    )rC   r   Úunitaryr   r   rE   r#   r$   r%   Útest_unitaryrI   y   s.   € ÜœQŸY™YÔ'ÜŒq�y‰yœ‹|œQŸ\™\¬!›_Ô-Ð-Ñ-r$   c                  ó¶  — t        t        j                  t        «      t        j                  t        «      «      sJ ‚t        t        j                  t        dz  «      t        j                  t        «      «      sJ ‚t        t        j                  t        j                  «      t        j                  t        «      «      du sJ ‚t        t        j                  t        «      «      �J ‚t        t        j                  t
        «      «      �J ‚t        t        j                  t        t        z  «      t        j                  t        «      t        j                  t        «      z  «      du sJ ‚t        t        j                  t        d«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        «      t        j                  t        «       «      dk(  sJ ‚y )Nr   Tr   Fr   )r   r   r*   r   r"   r   r   r
   r   r   r(   r#   r$   r%   Útest_fullrankrK   }   s†  € ÜŒq�z‰zœ!‹}œaŸj™j¬›mÔ,Ð,Ð,ÜŒq�z‰zœ!˜Q™$Ó¤§¡¬A£Ô/Ð/Ð/ÜŒq�z‰zœ!Ÿ#™#‹¤§
¡
¬1£Ó.°$Ñ6Ð6Ð6ÜŒq�z‰zœ!‹}ÓÐ%Ð%Ð%ÜŒq�z‰zœ!‹}ÓÐ%Ð%Ð%ÜŒq�z‰zœ!œA™#‹¤§
¡
¬1£´·
±
¼1³Ñ =Ó>À$ÑFÐFÐFÜŒq�z‰zœ( 1›+Ó&Ó'¨4Ñ/Ð/Ð/ÜŒq�z‰zœ* Q¨Ó*Ó+Ó,°Ñ5Ð5Ð5ÜŒq�z‰zœ) A q›/Ó*Ó+¨tÑ3Ð3Ð3ÜŒq�z‰zœ) A q›/Ó*Ó+¨uÑ4Ð4Ð4ÜŒq�|‰|œA‹¤§¡¬A£ Ó/°5Ò8Ð8Ñ8r$   c                  óŽ  — t        t        j                  t        «      t        j                  t        «      «      sJ ‚t        t        j                  t        j                  «      t        j                  t        «      «      du sJ ‚t        t        j                  t        j
                  «      t        j                  t        «      «      du sJ ‚t        t        j                  t        «      «      du sJ ‚t        t        j                  t        «      «      �J ‚t        t        j                  t        dz  «      t        j                  t        «      «      sJ ‚t        t        j                  t        t        z  t        z  «      t        j                  t        «      t        j                  t        «      z  «      du sJ ‚t        t        j                  t        «      t        j                  t        «      «      sJ ‚t        t        j                  t        j                  t        z  t        z  «      t        j                  t        «      t        j                  t        «      z  «      du sJ ‚t        t        j                  t        j                  t        z  t        z  «      t        j                  t        «      «      rJ ‚t        t        j                  t        d«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        t        z   «      t        j                  t        «      t        j                  t        «      z  «      du sJ ‚t        t        j                  t         «      t        j                  t        «      «      rJ ‚t        t        j                  t        d   «      t        j                  t        «      «      sJ ‚y )NTFr   r   )r   r   )r   r   Úpositive_definiter   r"   r)   r   r   rE   r*   r
   r   r   Úpositiver#   r$   r%   Útest_positive_definiterO   ‹   s  € ÜŒq×"Ñ"¤1Ó%¤q×':Ñ':¼1Ó'=Ô>Ð>Ð>ÜŒq×"Ñ"¤1§3¡3Ó'¬×)<Ñ)<¼QÓ)?Ó@ÀDÑHÐHÐHÜŒq×"Ñ"¤1§3¡3Ó'¬×)<Ñ)<¼QÓ)?Ó@ÀDÑHÐHÐHÜŒq×"Ñ"¤1Ó%Ó&¨%Ñ/Ð/Ð/ÜŒq×"Ñ"¤1Ó%Ó&Ð.Ð.Ð.ÜŒq×"Ñ"¤1 a¡4Ó(¬!×*=Ñ*=¼aÓ*@ÔAÐAÐAÜŒq×"Ñ"¤1¤Q¡3¤q¡5Ó)Ü×Ñ¤Ó"¤Q×%8Ñ%8¼Ó%;Ñ;ó=Ø@DñEð Eð EäŒq×"Ñ"¤1Ó%¤q§|¡|´A£Ô7Ð7Ð7ÜŒq×"Ñ"¤1§3¡3¤q¡5¬¡7Ó+Ü×Ñ¤Ó"¤Q§Z¡Z´£]Ñ2ó4Ø7;ñ<ð <ð <ä”1×&Ñ&¤q§s¡s¬1¡u¬Q¡wÓ/´×1DÑ1DÄQÓ1GÔHÐHÐHÜŒq×"Ñ"¤8¨A£;Ó/Ó0°DÑ8Ð8Ð8ÜŒq×"Ñ"¤:¨a°Ó#3Ó4Ó5¸Ñ>Ð>Ð>ÜŒq×"Ñ"¤9¨Q°£?Ó3Ó4¸Ñ<Ð<Ð<ÜŒq×"Ñ"¤9¨Q°£?Ó3Ó4¸Ñ=Ð=Ð=ÜŒq×"Ñ"¤1¤q¡5Ó)¬1×+>Ñ+>¼qÓ+AÜ×Ñ¤Ó"ñ,#ó $Ø'+ñ,ð ,ð ,ä”1×&Ñ&¬ rÓ*¬A×,?Ñ,?ÄÓ,BÔCÐCÐCÜŒq�z‰zœ!˜D™'Ó"¤A×$7Ñ$7¼Ó$:Ô;Ð;Ñ;r$   c                  óš  — t        t        j                  t        t        j
                  z   t        d«      z   «      t        j                  t        «      t        j                  t        «      z  «      du sJ ‚t        t        j                  t        t        j
                  z  «      t        j                  t        «      t        j                  t        «      z  «      du sJ ‚t        t        j                  t        d«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        «      t        j                  t        «      «      sJ ‚t        t        j                  t        dz  «      t        j                  t        «      «      sJ ‚t        t        j                  t        dz  «      t        j                  t        «      «      sJ ‚y )Nr   Tr   r   F)r   r   Úupper_triangularr   r   r"   r
   Úlower_triangularr   r   Ú
triangularÚunit_triangularr#   r$   r%   Útest_triangularrU   ¡   s  € ÜŒq×!Ñ!¤!¤a§c¡c¡'¬H°Q«KÑ"7Ó8¼!×:LÑ:LÌQÓ:OÜ×ÑœqÓ!ñ;"ó #Ø&*ñ+ð +ð +äŒq×!Ñ!¤!¤A§C¡C¡%Ó(¬!×*<Ñ*<¼QÓ*?Ü×ÑœqÓ!ñ+"ó #Ø&*ñ+ð +ð +äŒq×!Ñ!¤(¨1£+Ó.Ó/°4Ñ7Ð7Ð7ÜŒq×!Ñ!¤*¨Q°Ó"2Ó3Ó4¸Ñ<Ð<Ð<ÜŒq×!Ñ!¤*¨Q°Ó"2Ó3Ó4¸Ñ<Ð<Ð<ÜŒq×!Ñ!¤)¨A¨q£/Ó2Ó3°tÑ;Ð;Ð;ÜŒq×!Ñ!¤)¨A¨q£/Ó2Ó3°tÑ;Ð;Ð;ÜŒq×!Ñ!¤)¨A¨q£/Ó2Ó3°uÑ<Ð<Ð<ÜŒq×!Ñ!¤)¨A¨q£/Ó2Ó3°uÑ<Ð<Ð<ÜŒq�|‰|œA‹¤× 1Ñ 1´!Ó 4Ô5Ð5Ð5ÜŒq×!Ñ!¤! Q¡$Ó'¬×);Ñ);¼AÓ)>Ô?Ð?Ð?ÜŒq×!Ñ!¤! Q¡$Ó'¬×);Ñ);¼AÓ)>Ô?Ð?Ñ?r$   c            	      óÈ  — t        t        j                  t        t        j
                  z   t        d«      z   «      t        j                  t        «      t        j                  t        «      z  «      du sJ ‚t        t        j                  t        dd«      «      «      sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        dd«      «      «      du sJ ‚t        t        j                  t        «      t        j                  t        «      z  t        j                  t        «      «      sJ ‚t        t        j                  t        «      t        j                  t        «      t        j                  t        «      z  «      sJ ‚t        t        j                  t        «      t        j                  t        «      «      sJ ‚t        t        j                  t        «      t        j                  t        «      «      sJ ‚t        t        j                  t        «      «      sJ ‚t        t        j                  t        «      «      sJ ‚t        t        j                  t        t        z   «      «      sJ ‚t        t        j                  t        t        z  «      «      sJ ‚t        t        j                  t         j
                  t"        z  «      «      sJ ‚t        t        j                  t         j
                  t        t        z   z  t         z  «      «      sJ ‚t        t        j                  t%        t&        dd«      «      «      du sJ ‚t        t        j                  t         j
                  t         t"        z   z  «      «      du sJ ‚t        t        j                  t        dz  «      t        j                  t        «      «      sJ ‚t        t        j                  t        d«      «      «      sJ ‚t        t        j                  t)        t         «      «      «      sJ ‚t        t        j                  t+        t        «      «      «      sJ ‚y )Nr   Tr   r   Fr=   r>   )r   r   Údiagonalr   r   r"   r
   r   r   rR   rQ   r?   rS   r   r   r   r   r   r   r   r   r   r#   r$   r%   Útest_diagonalrX   ²   sÈ  € ÜŒq�z‰zœ!œaŸc™c™'¤H¨Q£KÑ/Ó0´!·*±*¼Q³-Ü�z‰zœ!‹}ñ3ó Ø!%ñ&ð &ð &äŒq�z‰zœ* Q¨Ó*Ó+Ô,Ð,Ð,ÜŒq�z‰zœ) A q›/Ó*Ó+¨tÑ3Ð3Ð3ÜŒq�z‰zœ) A q›/Ó*Ó+¨uÑ4Ð4Ð4ÜŒq×!Ñ!¤!Ó$¤q×'9Ñ'9¼!Ó'<Ñ<¼a¿j¹jÌ»mÔLÐLÐLÜŒq�z‰zœ!‹}œa×0Ñ0´Ó3´a×6HÑ6HÌÓ6KÑKÔLÐLÐLÜŒq�{‰{œ1‹~œqŸz™z¬!›}Ô-Ð-Ð-ÜŒq�|‰|œA‹¤§
¡
¬1£Ô.Ð.Ð.ÜŒq�z‰zœ$ÓÔ Ð Ð ÜŒq�z‰zœ$ÓÔ Ð Ð ÜŒq�z‰zœ$¤™+Ó&Ô'Ð'Ð'ÜŒq�z‰zœ$œt™)Ó$Ô%Ð%Ð%ÜŒq�z‰zœ"Ÿ$™$œr™'Ó"Ô#Ð#Ð#ÜŒq�z‰zœ"Ÿ$™$¤¤A¡™,¤r™/Ó*Ô+Ð+Ð+ÜŒq�z‰zœ+¤a¨°Ó8Ó9Ó:¸dÑBÐBÐBÜŒq�z‰zœ"Ÿ$™$¤¤R¡™.Ó)Ó*¨dÑ2Ð2Ð2ÜŒq�z‰zœ!˜Q™$Ó¤§¡¬A£Ô/Ð/Ð/ÜŒq�z‰zœ( 1›+Ó&Ô'Ð'Ð'ÜŒq�z‰zœ*¤R›.Ó)Ô*Ð*Ð*ÜŒq�z‰zœ.¬Ó+Ó,Ô-Ð-Ñ-r$   c                  ó    — t        t        j                  t        t        «      «      t        j
                  t        t        «      «      «      sJ ‚y r    )r   r   Úrealr   r   rN   r#   r$   r%   Útest_non_atomsr[   Ê   s,   € ÜŒq�v‰v”eœA“hÓ¤§¡¬E´!«HÓ!5Ô6Ð6Ñ6r$   c                  óà  — t        ddd«      } t        ddd«      }t        t        j                  | |z   «      t        j                  | «      t        j                  |«      z  «      du sJ ‚t        t        j                  | «      t        j                  | «      «      du sJ ‚t        t        j                  | |z   «      t        j                  | «      t        j                  |«      z  «      du sJ ‚y )Nr   r   r   T)r	   r   r   rR   rS   r7   s     r%   Útest_non_trivial_impliesr]   Í   sÚ   € ä�S˜!˜QÓ€AÜ�S˜!˜QÓ€AÜŒq×!Ñ! ! A¡#Ó&¬×(:Ñ(:¸1Ó(=Ü×!Ñ! !Ó$ñ)%ó &Ø)-ñ.ð .ð .äŒq�|‰|˜A‹¤× 2Ñ 2°1Ó 5Ó6¸$Ñ>Ð>Ð>ÜŒq�|‰|˜A˜a™CÓ ¤!×"4Ñ"4°QÓ"7Ü×!Ñ! !Ó$ñ#%ó &Ø)-ñ.ð .ñ .r$   c                  ób  — t        ddd«      } t        | dd«      }t        | dd«      }t        t        j                  |«      t        j                  | «      «      sJ ‚t        t        j
                  |«      t        j
                  | «      «      sJ ‚t        t        j                  |«      t        j                  | «      «      sJ ‚t        t        j                  |«      t        j                  | «      «      sJ ‚t        t        j                  |«      t        j                  | «      «      sJ ‚t        t        j                  |«      t        j                  | «      «      rJ ‚t        t        j
                  |«      t        j
                  | «      «      rJ ‚t        t        j                  |«      t        j                  | «      «      rJ ‚t        t        j                  |«      t        j                  | «      «      rJ ‚t        t        j                  |«      t        j                  | «      «      rJ ‚y )Nr   r3   )r   r   )r   r   )	r	   r   r   r   r?   r(   rW   rE   rQ   )r   ÚBÚCs      r%   Útest_MatrixSlicera   ×   s{  € Ü�S˜!˜QÓ€AÜ�A�v˜vÓ&€AÜ�A�v˜vÓ&€AÜŒq�{‰{˜1‹~œqŸ{™{¨1›~Ô.Ð.Ð.ÜŒq�|‰|˜A‹¤§¡¨Q£Ô0Ð0Ð0ÜŒq�z‰z˜!‹}œaŸj™j¨›mÔ,Ð,Ð,ÜŒq�|‰|˜A‹¤§¡¨Q£Ô0Ð0Ð0ÜŒq×!Ñ! !Ó$¤a×&8Ñ&8¸Ó&;Ô<Ð<Ð<ä”1—;‘;˜q“>¤1§;¡;¨q£>Ô2Ð2Ð2Ü”1—<‘< “?¤A§L¡L°£OÔ4Ð4Ð4Ü”1—:‘:˜a“=¤!§*¡*¨Q£-Ô0Ð0Ð0Ü”1—<‘< “?¤A§L¡L°£OÔ4Ð4Ð4Ü”1×%Ñ% aÓ(¬!×*<Ñ*<¸QÓ*?Ô@Ð@Ð@Ð@r$   c                  ó  — t        ddd«      } t        t        j                  t	        | «      «      t        j
                  | «      «      sJ ‚t        t        j                  t        | «      «      t        j
                  | «      «      sJ ‚y )Nr   r3   )r	   r   r   rN   r   rM   r   ©r   s    r%   Útest_det_trace_positiverd   ç   s`   € Ü�S˜!˜QÓ€AÜŒq�z‰zœ% ›(Ó#¤Q×%8Ñ%8¸Ó%;Ô<Ð<Ð<ÜŒq�z‰zœ+ a›.Ó)¬1×+>Ñ+>¸qÓ+AÔBÐBÑBr$   c                  ó~	  — t        ddd«      } t        ddd«      }t        t        j                  | «      t        j                  | «      «      sJ ‚t        t        j                  | «      t        j                  | «      «      rJ ‚t        t        j
                  | «      t        j                  | «      «      sJ ‚t        t        j
                  | dz  «      t        j                  | «      «      sJ ‚t        t        j                  | dz  «      t        j                  | «      «      sJ ‚t        t        j                  | |z   «      t        j                  | «      «      �J ‚t        t        j                  | |z   «      t        j                  | «      t        j                  |«      z  «      sJ ‚ddlm} t        t        j                   || |«      «      t        j                  | «      t        j                  |«      z  «      sJ ‚t        t        j
                  | |z   «      t        j                  | «      t        j
                  |«      z  «      sJ ‚t        t        j                  | j                  «      t        j                  | «      «      sJ ‚t        t        j                  | j                  «      t        j                  | «      t        j                  | «      z  «      sJ ‚t        t        j                  t        | «      «      t        j                  | «      «      sJ ‚t        t        j                  t        | «      «      t        j                  | «      «      sJ ‚t        t        j                  | j                  «      t        j                  | «      «      rJ ‚t        d«      }t        t        j                  || z  «      t        j                  | «      t        j                  |«      z  «      sJ ‚t        t        j                  t        | «      «      t        j                  | «      «      sJ ‚t        dd	d	¬
«      }t        t        j                  | |z  «      t        j                  | «      t        j                  | «      z  «      sJ ‚t        t        j                  | |z  «      t        j                  | «      «      �J ‚y )Nr   r3   r   r   r   )ÚHadamardProductÚalphaÚeT)ÚintegerÚnegative)r	   r   r   Úreal_elementsÚinteger_elementsÚcomplex_elementsÚ#sympy.matrices.expressions.hadamardrf   r"   r)   r(   r   r   r   rZ   r   )r   r   rf   rg   rh   s        r%   Útest_field_assumptionsro   ì   sN  € Ü�S˜!˜QÓ€AÜ�S˜!˜QÓ€AÜŒq�‰˜qÓ!¤1§?¡?°1Ó#5Ô6Ð6Ð6Ü”1×%Ñ% aÓ(¬!¯/©/¸!Ó*<Ô=Ð=Ð=ÜŒq×!Ñ! !Ó$¤a§o¡o°aÓ&8Ô9Ð9Ð9ÜŒq×!Ñ! ! Q¡$Ó'¬¯©¸Ó);Ô<Ð<Ð<ÜŒq�‰˜q !™tÓ$¤a×&8Ñ&8¸Ó&;Ô<Ð<Ð<ÜŒq�‰˜q ™sÓ#¤Q§_¡_°QÓ%7Ó8Ð@Ð@Ð@ÜŒq�‰˜q ™sÓ#¤Q§_¡_°QÓ%7¼!¿/¹/È!Ó:LÑ%LÔMÐMÐMÝCÜŒq�‰™¨q°!Ó4Ó5Ü—O‘O AÓ&¬¯©¸Ó);Ñ;ô=ð =ð =äŒq×!Ñ! ! A¡#Ó&¬¯©¸Ó(:¼Q×=OÑ=OÐPQÓ=RÑ(RÔSÐSÐSäŒq�‰˜qŸs™sÓ#¤Q§_¡_°QÓ%7Ô8Ð8Ð8ÜŒq�‰˜qŸs™sÓ#¤Q§_¡_°QÓ%7¼!¿,¹,Àq»/Ñ%IÔJÐJÐJÜŒq�‰œu Q›xÓ(¬!¯/©/¸!Ó*<Ô=Ð=Ð=ÜŒq×!Ñ!¤+¨a£.Ó1´1×3EÑ3EÀaÓ3HÔIÐIÐIÜ”1×%Ñ% a§c¡cÓ*¬A×,>Ñ,>¸qÓ,AÔBÐBÐBÜ�7‹O€EÜŒq�‰˜u Q™wÓ'¬¯©¸Ó);¼a¿f¹fÀU»mÑ)KÔLÐLÐLÜŒq�‰œu Q›xÓ(¬!¯/©/¸!Ó*<Ô=Ð=Ð=Üˆs˜D¨4Ô0€AÜŒq�‰˜q !™tÓ$¤a§o¡o°aÓ&8¼1¿<¹<È»?Ñ&JÔKÐKÐKÜŒq�‰˜q !™tÓ$¤a§o¡o°aÓ&8Ó9ÐAÐAÑAr$   c                  óº  — t        ddd«      } t        t        j                  | d   «      t        j                  | «      «      sJ ‚t        t        j
                  | d   «      t        j                  | «      «      sJ ‚t        t        j                  | d   «      t        j                  | «      «      sJ ‚t        t        j                  t        d«      «      «      sJ ‚t        t        j                  t        dd«      «      «      sJ ‚t        t        j                  t        dd«      «      «      sJ ‚ddlm} t        t        j                   |d«      «      «      sJ ‚y )Nr   r3   r>   r   r   )ÚDFT)r	   r   r   rZ   rk   ri   rl   Úcomplexrm   r
   r   r   Ú"sympy.matrices.expressions.fourierrq   )r   rq   s     r%   Útest_matrix_element_setsrt     s  € Ü�S˜!˜QÓ€AÜŒq�v‰v�a˜‘g‹¤§¡°Ó 2Ô3Ð3Ð3ÜŒq�y‰y˜˜4™Ó!¤1×#5Ñ#5°aÓ#8Ô9Ð9Ð9ÜŒq�y‰y˜˜4™Ó!¤1×#5Ñ#5°aÓ#8Ô9Ð9Ð9ÜŒq×!Ñ!¤(¨1£+Ó.Ô/Ð/Ð/ÜŒq×!Ñ!¤*¨Q°Ó"2Ó3Ô4Ð4Ð4ÜŒq×!Ñ!¤)¨A¨q£/Ó2Ô3Ð3Ð3Ý6ÜŒq×!Ñ!¡# a£&Ó)Ô*Ð*Ñ*r$   c                  ó  — t        ddd«      } t        t        j                  | d d …df   «      t        j                  | «      «      sJ ‚t        t        j                  t	        | g| gg«      «      t        j                  | «      «      sJ ‚y )Nr   r3   r   )r	   r   r   rl   r   rc   s    r%   Ú&test_matrix_element_sets_slices_blocksrv     sx   € Ü�S˜!˜QÓ€AÜŒq×!Ñ! !¢A q D¡'Ó*¬A×,>Ñ,>¸qÓ,AÔBÐBÐBÜŒq×!Ñ!¤+°¨s°Q°C¨jÓ"9Ó:Ü×*Ñ*¨1Ó-ô/ð /ñ /r$   c                  ó  — t        t        j                  t        t        «      «      t        j
                  t        «      «      sJ ‚t        t        j                  t        t        «      «      t        j
                  t        «      «      sJ ‚y r    )r   r   ri   r   r   rl   r   r#   r$   r%   Ú*test_matrix_element_sets_determinant_tracerx     sR   € ÜŒq�y‰yœ¤Q›Ó(¬!×*<Ñ*<¼QÓ*?Ô@Ð@Ð@ÜŒq�y‰yœœq›Ó"¤A×$6Ñ$6´qÓ$9Ô:Ð:Ñ:r$   N)6Úsympy.assumptions.askr   r   Úsympy.core.symbolr   Ú#sympy.matrices.expressions.diagonalr   r   Úsympy.matrices.denser   Úsympy.matrices.expressionsr	   r
   r   r   r   r   r   r   r   Ú)sympy.matrices.expressions.factorizationsr   Úsympy.testing.pytestr   r   r   r   r   r   r   r   r   r&   r+   r.   r0   r8   r:   r@   rC   rF   rI   rK   rO   rU   rX   r[   r]   ra   rd   ro   rt   rv   rx   r#   r$   r%   ú<module>r€      s+  ðß *Ý $ß LÝ '÷R÷ Rõ Rå ;Ý &á��a˜Ó€Ù��a˜Ó€Ù��a˜Ó€Ù�F˜A˜qÓ!€Ù�F˜A˜qÓ!€Ù�F˜A˜qÓ!€Ù�$˜˜1Ó€Ù�$˜˜1Ó€ò ò
=ò8ð
 ñ7ó ð7òò8Uò5ò*Bò+ò.ò9ò<ò,@ò".ò07ð ñ.ó ð.òAò Cò
Bò6	+ò/ó;r$   