§
    OŠtj¹  ã                   ó¬   — d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ d dlmZmZ d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )é    )Úraises©Ú
PolyMatrix)ÚPoly)ÚS)ÚMatrix)ÚZZ)ÚQQ©ÚxÚyc                  ó 
  — t          t          t          dz  t          ¦  «        t          t           t          ¦  «        gt          t          dz  t          ¦  «        t          dt          z   t          ¦  «        gg¦  «        } t          ddgddggd¬¦  «        }t          ddgddggd¬¦  «        }t          t          t          dz  t          z   t          ¦  «        t          dt          ¦  «        gt          t          dz  t          z
  dz   t          ¦  «        t          dt          ¦  «        gg¦  «        }t          t          t          dz  t          ¦  «        t          t           t          ¦  «        gt          t          dz   t          ¦  «        t          t          t          ¦  «        gg¦  «        }|j        t          t                   k    sJ ‚t          | |z  t           ¦  «        sJ ‚| |z  |k    sJ ‚| |z  |k    sJ ‚|| z  |k    sJ ‚t          t          t          dz  t          d¬	¦  «        t          dt          d¬	¦  «        t          t          dz   t          d¬	¦  «        t          t          dz  t          d¬	¦  «        t          dt          d¬	¦  «        t          t          dz   t          d¬	¦  «        gg¦  «        }|j        t          t                   k    sJ ‚t          g d
¢d¬¦  «        }t          g d
¢d¬¦  «        }t          t          t          dz  t          d¬	¦  «        gg¦  «        }||z  |k    sJ ‚||z  |k    sJ ‚t          t          t          dz  t          ¦  «        t          j        ggd¬¦  «        }	t          j	        |	z  }
|
t          t          t          j	        t          dz  z  t          d¬	¦  «        t          j	        ggd¬¦  «        k    sJ ‚|	t          j	        z  |
k    sJ ‚|
j        t          t                   k    sJ ‚t          t          t          dz  t          d¬	¦  «        t          t          dz   t          d¬	¦  «        gg¦  «        }t          ddgd¬¦  «        }||z  t          t          dt          dz  z  t          d¬	¦  «        gg¦  «        k    sJ ‚t          t          t          t                   ¬¦  «        ¦  «        dk    sJ ‚t          g d¢t          ¦  «        dz  t          g d¢t          ¦  «        k    sJ ‚d S )Né   é   éÿÿÿÿé   r   zZZ[x]©Úringr
   ©Údomain)r   r   r   r   r   r   zQQ[x]r	   )r   r   r   r   )r   r   r   r   )r   r   r   r   r	   Ú
isinstancer
   r   ÚOneÚHalfÚlen)Úpm1Úv1Úm1ÚAÚBÚpm2Úv2Úm2ÚCÚpm3Úv3Úpm4Úv4s                ú_/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/polys/tests/test_polymatrix.pyÚ_test_polymatrixr)      sP  € Ý
•t�A˜q™D¥!‘}”}¥d­A¨2­q¡k¤kÐ2µT½!¸Q¹$Å±]´]ÅDÈÍaÉÕQRÁOÄOÐ4TÐUÑ
VÔ
V€CÝ	�a˜�V˜b !˜WÐ%¨GÐ	4Ñ	4Ô	4€BÝ	�a˜�V˜b !˜WÐ%¨GÐ	4Ñ	4Ô	4€BÝ•T�!˜Q™$¥™(¥AÑ&Ô&­¨Qµ©
¬
Ð3Ý�!˜Q™$¥™( Q™,­Ñ*Ô*­D°µA©J¬JÐ7ð9ñ 	:ô 	:€Aå•T�!˜Q™$¥‘]”]¥D­!¨­Q¡K¤KÐ0µ4½¸A¹¸½q±>´>Å4ÍÍ1Á:Ä:Ð2NÐOÑPÔP€AØŒ6•R�”UŠ?ˆ?ˆ?ˆ?Ý�c˜"‘f�jÑ)Ô)Ð)Ð)Ð)Øˆr‰6�QŠ;ˆ;ˆ;ˆ;Øˆr‰6�QŠ;ˆ;ˆ;ˆ;Øˆc‰6�QŠ;ˆ;ˆ;ˆ;å
•t�A˜q™D¥!¨DÐ1Ñ1Ô1µ4¸½1ÀTÐ3JÑ3JÔ3JÍDÕRSÐUVÑRVÐQVÕXYÐbfÐLgÑLgÔLgÝ�˜A™�q¨Ð.Ñ.Ô.µ°Q½À$Ð0GÑ0GÔ0GÍÍqÐRSÉtÈeÕUVÐ_cÐIdÑIdÔIdðfð gñ hô h€CàŒ8•r�!”uÒÐÐÐÝ	Ð&Ð&Ð&¨WÐ	5Ñ	5Ô	5€BÝ	Ð&Ð&Ð&¨WÐ	5Ñ	5Ô	5€BÝ•T�!˜Q™$¥¨$Ð/Ñ/Ô/Ð0Ð1Ñ2Ô2€AØˆr‰6�QŠ;ˆ;ˆ;ˆ;Øˆr‰6�QŠ;ˆ;ˆ;ˆ;å
•t�A˜q™D¥!‘}”}¥a¤eÐ,Ð-°GÐ
<Ñ
<Ô
<€CÝ	
Œ�‰€BØ•�d¥1¤6­!¨Q©$¡;µ¸$Ð?Ñ?Ô?ÅÄÐHÐIÐPWÐXÑXÔXÒXÐXÐXÐXØ�qŒv‰:˜ÒÐÐÐØŒ7•b�”eÒÐÐÐå
•t�A˜q™D¥!¨DÐ1Ñ1Ô1µ4½¸A¹¸½qÈÐ3NÑ3NÔ3NÐOÐPÑ
QÔ
Q€CÝ	�Q˜�G 'Ð	*Ñ	*Ô	*€BØˆr‰6•Z¥$ q­¨A©¡v­q¸Ð">Ñ">Ô">Ð!?Ð @ÑAÔAÒAÐAÐAÐAå�z�r¥!œuÐ%Ñ%Ô%Ñ&Ô&¨!Ò+Ð+Ð+Ð+Ý�l�l�l¥AÑ&Ô&¨Ñ+­z¸.¸.¸.Í!Ñ/LÔ/LÒLÐLÐLÐLÐLÐLó    c            	      óˆ  — t          t          t          ggt          t          t          f         ¬¦  «        } | j        t          t          t          f         k    sJ ‚| j        t          k    sJ ‚| j        t          t          fk    sJ ‚| j        dk    sJ ‚| j        dk    sJ ‚| j	        dk    sJ ‚t          | ¦  «        dk    sJ ‚t          | ¦  «        t          t          t          t          ft          ¬¦  «        t          t          t          t          ft          ¬¦  «        gk    sJ ‚t          t          t          ggt          t                   t                   ¬¦  «        }|j        t          t                   t                   k    sJ ‚|j        t          t                   k    sJ ‚|j        t          fk    sJ ‚|j        dk    sJ ‚|j        dk    sJ ‚|j	        dk    sJ ‚t          |¦  «        dk    sJ ‚t          |¦  «        t          t          t          ft          t                   ¬¦  «        t          t          t          ft          t                   ¬¦  «        gk    sJ ‚t          t          t          ggt          ¦  «        t          t          t          ggt          j        t          ¦  «        t                   ¬¦  «        k    sJ ‚t          t          t          ggd¬¦  «        t          t          t          ggt          t          t          f         ¬¦  «        k    sJ ‚t          t          t          ggt          t          f¦  «        t          t          t          ggt          t          t          f         ¬¦  «        k    sJ ‚t          t          t          ggt          t          ¦  «        t          t          t          ggt          t          t          f         ¬¦  «        k    sJ ‚t          t          t          g¦  «        t          t          gt          ggt          t          t          f         ¬¦  «        k    sJ ‚t          ddt          t          g¦  «        t          t          t          ggt          t          t          f         ¬¦  «        k    sJ ‚t          ddd„ ¦  «        t          t          t          ggt          t          t          f         ¬¦  «        k    sJ ‚t          ddg t          t          ¦  «        j        d	k    sJ ‚t          ddg t          t          ¦  «        j        d
k    sJ ‚t          g g gt          t          ¦  «        j        d
k    sJ ‚t          t          t          t          f         ¬¦  «        t          ddg t          t          t          f         ¬¦  «        cxk    r,t          g t          t          t          f         ¬¦  «        k    sn J ‚t          t           d„ ¦  «         t          t           d„ ¦  «         t          t          t          ¦  «        t          t          ¦  «        g¦  «        t          t          gt          ggt          t          t          f         ¬¦  «        k    sJ ‚t          t          t          t          ¦  «        dg¦  «        t          t          gdggt          t                   ¬¦  «        k    sJ ‚d S )Nr   )r   r   r   r   r   zZZ[x,y]c                 ó*   — t           t          g|         S ©Nr   )ÚiÚjs     r(   ú<lambda>z-test_polymatrix_constructor.<locals>.<lambda>N   s   € ­­1¨¨a¬€ r*   r   )r   r   )r   r   c                  ó   — t          ¦   «         S r-   r   © r*   r(   r0   z-test_polymatrix_constructor.<locals>.<lambda>S   s
   € �j™lœl€ r*   c                  ó    — t          d¦  «        S ©Nr   r   r2   r*   r(   r0   z-test_polymatrix_constructor.<locals>.<lambda>T   s   € �j¨™mœm€ r*   )r   r   r   r
   r   r   ÚgensÚshapeÚrowsÚcolsr   Úlistr   r	   Ú
frac_fieldr   Ú	TypeError©ÚM1ÚM2s     r(   Útest_polymatrix_constructorr?   2   s  € Ý	•a��V�H¥2¥a­ c¤7Ð	+Ñ	+Ô	+€BØŒ7•b��1˜”gÒÐÐÐØŒ9�Š?ˆ?ˆ?ˆ?ØŒ7•q�!�fÒÐÐÐØŒ8�vÒÐÐÐØŒ7�aŠ<ˆ<ˆ<ˆ<ØŒ7�aŠ<ˆ<ˆ<ˆ<Ýˆr‰7Œ7�aŠ<ˆ<ˆ<ˆ<Ý�‰8Œ8��Q¥¥A ­rÐ2Ñ2Ô2µD½½QÅ¸FÍ2Ð4NÑ4NÔ4NÐOÒOÐOÐOÐOå	•a��V�H¥2¥a¤5­¤8Ð	,Ñ	,Ô	,€BØŒ7•b�”e�A”hÒÐÐÐØŒ9��1œÒÐÐÐØŒ7•q�dŠ?ˆ?ˆ?ˆ?ØŒ8�vÒÐÐÐØŒ7�aŠ<ˆ<ˆ<ˆ<ØŒ7�aŠ<ˆ<ˆ<ˆ<Ýˆr‰7Œ7�aŠ<ˆ<ˆ<ˆ<Ý�‰8Œ8��Q¥ ­Rµ¬UÐ3Ñ3Ô3µT½!½a¸TÍ"ÍQÌ%Ð5PÑ5PÔ5PÐQÒQÐQÐQÐQå��1�v�h¥Ñ"Ô"¥jµ1µa°&°ÅÄÍaÑ@PÔ@PÕQRÔ@SÐ&TÑ&TÔ&TÒTÐTÐTÐTÝ��1�v�h YÐ/Ñ/Ô/µ:ÅÅ1¸v¸hÍRÕPQÕRSÐPSÌWÐ3UÑ3UÔ3UÒUÐUÐUÐUå��1�v�h¥¥A Ñ'Ô'­:½½1°v°hÅRÍÍ!ÈÄWÐ+MÑ+MÔ+MÒMÐMÐMÐMÝ��1�v�h¥¥1Ñ%Ô%­µa½°V°HÅ2ÅaÍÀcÄ7Ð)KÑ)KÔ)KÒKÐKÐKÐKÝ•q�!�fÑÔ¥­a¨Sµ1°#¨J½RÅÅ!À¼WÐ!EÑ!EÔ!EÒEÐEÐEÐEÝ�a˜�Q¥˜FÑ#Ô#¥zµAµq°6°(ÅÅAÅaÀCÄÐ'IÑ'IÔ'IÒIÐIÐIÐIÝ�a˜Ð0Ð0Ñ1Ô1µZÅ!ÅQÀÀÍrÕRSÕTUÐRUÌwÐ5WÑ5WÔ5WÒWÐWÐWÐWÝ�a˜˜B¥¥1Ñ%Ô%Ô+¨vÒ5Ð5Ð5Ð5Ý�a˜˜B¥¥1Ñ%Ô%Ô+¨vÒ5Ð5Ð5Ð5Ý�r˜2�h¥¥1Ñ%Ô%Ô+¨vÒ5Ð5Ð5Ð5Ý�2�a¥˜cœ7Ð#Ñ#Ô#¥z°!°Q¸ÅÅAÅaÀCÄÐ'IÑ'IÔ'IÐiÐiÒiÐiÍZÐXZÕacÕdeÕfgÐdgÔahÐMiÑMiÔMiÒiÐiÐiÐiÐiÐiÝ
�9Ð*Ð*Ñ+Ô+Ð+Ý
�9Ð+Ð+Ñ,Ô,Ð,å•t�A‘w”w¥¥Q¡¤Ð(Ñ)Ô)­Z½!¸½q¸c¸
ÍÍAÍaÈCÌÐ-QÑ-QÔ-QÒQÐQÐQÐQõ •t�A�q‘z”z 1�oÑ&Ô&­*µq°c¸A¸3°ZÅbÍÄeÐ*LÑ*LÔ*LÒLÐLÐLÐLÐLÐLr*   c                  ó„  — t          t          g¦  «        t          t          g¦  «        k    du sJ ‚t          t          g¦  «        t          t          g¦  «        k    du sJ ‚t          t          g¦  «        t          t          g¦  «        k    du sJ ‚t          t          g¦  «        t          t          g¦  «        k    du sJ ‚t          t          t          gg¦  «        t          t          t          g¦  «        cxk    r!t          t          gt          gg¦  «        k    sn J ‚t          t          gt          t                   ¬¦  «        t          t          gt          t                   ¬¦  «        k    sJ ‚t          t          g¦  «        t          t          g¦  «        k    sJ ‚t          t          g¦  «                             ¦   «         t          t          g¦  «        k    sJ ‚t          dgt          ¦  «        t          dgt          ¦  «        k    sJ ‚t          dgt          ¦  «        t          dgt          ¦  «        k    sJ ‚d S )NTFr   r   )r   r   r   r
   r	   r   Ú	to_Matrixr2   r*   r(   Útest_polymatrix_eqrB   \   sÆ  € Ý��s‰OŒO�z­1¨#™œÒ.°4Ð7Ð7Ð7Ð7Ý��s‰OŒO�z­1¨#™œÒ.°5Ð8Ð8Ð8Ð8Ý��s‰OŒO�z­1¨#™œÒ.°5Ð8Ð8Ð8Ð8Ý��s‰OŒO�z­1¨#™œÒ.°4Ð7Ð7Ð7Ð7å��1�v�hÑÔ¥:­qµ!¨fÑ#5Ô#5ÐOÐOÒOÐO½ÅaÀSÍ1È#ÀJÑ9OÔ9OÒOÐOÐOÐOÐOÐOå•q�c¥¥1¤Ð&Ñ&Ô&­*µa°S½rÅ!¼uÐ*EÑ*EÔ*EÒEÐEÐEÐEå•q�c‰?Œ?�f¥a S™kœkÒ)Ð)Ð)Ð)Ý•q�c‰?Œ?×$Ò$Ñ&Ô&­&µ!°©+¬+Ò5Ð5Ð5Ð5å�q�c�1ÑÔ¥¨Q¨CµÑ!3Ô!3Ò3Ð3Ð3Ð3Ý�q�c�1ÑÔ¥¨Q¨CµÑ!3Ô!3Ò3Ð3Ð3Ð3Ð3Ð3r*   c                  óú  — t          j        t          ddg¦  «        t          ¦  «        t          ddgt          t          t                   ¬¦  «        k    sJ ‚t          j        t          dg¦  «        t          t                   ¬¦  «        t          dgt          ¦  «        k    sJ ‚t          ddgt          ¦  «        } t          ddgt
          ¦  «        }| |k    sJ ‚|                      t
          ¦  «        |k    sJ ‚d S ©Nr   r   r   )r   Úfrom_Matrixr   r   r
   r   Úset_gens)ÚpmxÚpmys     r(   Útest_polymatrix_from_MatrixrI   m   sÑ   € ÝÔ!¥&¨!¨Q¨¡.¤.µ!Ñ4Ô4½
ÀAÀqÀ6Í1ÕSUÕVWÔSXÐ8YÑ8YÔ8YÒYÐYÐYÐYÝÔ!¥&¨!¨¡+¤+µBµq´EÐ:Ñ:Ô:½jÈ!ÈÍaÑ>PÔ>PÒPÐPÐPÐPÝ
�a˜�V�QÑ
Ô
€CÝ
�a˜�V�QÑ
Ô
€CØ�#Š:ˆ:ˆ:ˆ:Ø�<Š<�‰?Œ?˜cÒ!Ð!Ð!Ð!Ð!Ð!r*   c                  ó°   — t          t          ddggt          ¦  «        ¦  «        dk    sJ ‚t          t          ddg t          ¦  «        ¦  «        dk    sJ ‚d S )Nr   r   z PolyMatrix([[1, 2]], ring=QQ[x])r   z PolyMatrix(0, 2, [], ring=QQ[x]))Úreprr   r   r2   r*   r(   Útest_polymatrix_reprrL   v   sZ   € Ý•
˜Q ˜F˜8¥QÑ'Ô'Ñ(Ô(Ð,NÒNÐNÐNÐNÝ•
˜1˜a ¥QÑ'Ô'Ñ(Ô(Ð,NÒNÐNÐNÐNÐNÐNr*   c                  ó.  — t          ddgddggt          ¦  «        } | d d …d d …f         | k    sJ ‚| dd d …f         t          ddggt          ¦  «        k    sJ ‚| d d …df         t          ddgt          ¦  «        k    sJ ‚| d         t          dt          t          ¬¦  «        k    sJ ‚| d         t          dt          t          ¬¦  «        k    sJ ‚| d d…         t          dt          t          ¬¦  «        t          dt          t          ¬¦  «        gk    sJ ‚d S )Nr   r   r   é   r   )r   r   r   )r   r   r   r
   ©ÚMs    r(   Útest_polymatrix_getitemrQ   {   s  € Ý�Q˜�F˜Q ˜FÐ#¥QÑ'Ô'€AØˆQˆQˆQ���ˆTŒ7�aŠ<ˆ<ˆ<ˆ<ØˆQ���ˆTŒ7•j 1 a & ­1Ñ-Ô-Ò-Ð-Ð-Ð-ØˆQˆQˆQ�ˆTŒ7•j ! Q ­Ñ+Ô+Ò+Ð+Ð+Ð+ØˆTŒ7•d˜1�a­Ð+Ñ+Ô+Ò+Ð+Ð+Ð+ØˆQŒ4•4˜�1¥RÐ(Ñ(Ô(Ò(Ð(Ð(Ð(ØˆRˆaˆRŒ5•T˜!�Q¥rÐ*Ñ*Ô*­D°µA½bÐ,AÑ,AÔ,AÐBÒBÐBÐBÐBÐBÐBr*   c                  ó€  ‡— t          ddgddggt          ¦  «        Š‰‰z   t          ddgddggt          ¦  «        k    sJ ‚‰‰z
  t          ddgddggt          ¦  «        k    sJ ‚‰ t          dd	gd
dggt          ¦  «        k    sJ ‚t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         ‰‰z  t          ddgddggt          ¦  «        k    sJ ‚d‰z  t          ddgddggt          ¦  «        k    sJ ‚‰dz  t          ddgddggt          ¦  «        k    sJ ‚t	          d¦  «        ‰z  t          ddgddggt          ¦  «        k    sJ ‚‰t	          d¦  «        z  t          ddgddggt          ¦  «        k    sJ ‚t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          ddggt
          t                   ¬¦  «        } t          j        | z  t          t          j        dggt          t                   ¬¦  «        k    sJ ‚| t          j        z  t          t          j        dggt          t                   ¬¦  «        k    sJ ‚‰dz  t          t	          d¦  «        dz  dgt	          d¦  «        dz  dggt          ¦  «        k    sJ ‚‰t          dt          ¦  «        z  t          t	          d¦  «        dz  dgt	          d¦  «        dz  dggt          ¦  «        k    sJ ‚t          t          ˆfd„¦  «         d S )Nr   r   r   rN   é   é   r   r   éþÿÿÿéýÿÿÿéüÿÿÿc                  ó   •— ‰ dz   S r4   r2   rO   s   €r(   r0   z,test_polymatrix_arithmetic.<locals>.<lambda>Š   ó   ø€ ˜a !™e€ r*   c                  ó   •— ‰ dz
  S r4   r2   rO   s   €r(   r0   z,test_polymatrix_arithmetic.<locals>.<lambda>‹   rY   r*   c                  ó   •— d‰ z   S r4   r2   rO   s   €r(   r0   z,test_polymatrix_arithmetic.<locals>.<lambda>Œ   rY   r*   c                  ó   •— d‰ z
  S r4   r2   rO   s   €r(   r0   z,test_polymatrix_arithmetic.<locals>.<lambda>�   rY   r*   é   é
   é   é   c                  ó   •— g ‰ z  S r-   r2   rO   s   €r(   r0   z,test_polymatrix_arithmetic.<locals>.<lambda>”   s   ø€ ˜b 1™f€ r*   c                  ó   •— ‰ g z  S r-   r2   rO   s   €r(   r0   z,test_polymatrix_arithmetic.<locals>.<lambda>•   ó   ø€ ˜a "™f€ r*   r   c                  ó   •— ‰ g z  S r-   r2   rO   s   €r(   r0   z,test_polymatrix_arithmetic.<locals>.<lambda>œ   rc   r*   )	r   r   r   r;   r   r	   r   r
   r   )r>   rP   s    @r(   Útest_polymatrix_arithmeticre   …   s-  ø€ Ý�Q˜�F˜Q ˜FÐ#¥QÑ'Ô'€AØˆq‰5•J  A ¨¨A¨Ð/µÑ3Ô3Ò3Ð3Ð3Ð3Øˆq‰5•J  A ¨¨A¨Ð/µÑ3Ô3Ò3Ð3Ð3Ð3Øˆ2•˜b "˜X¨¨B xÐ0µ!Ñ4Ô4Ò4Ð4Ð4Ð4Ý
�9�m�m�m�mÑ$Ô$Ð$Ý
�9�m�m�m�mÑ$Ô$Ð$Ý
�9�m�m�m�mÑ$Ô$Ð$Ý
�9�m�m�m�mÑ$Ô$Ð$àˆq‰5•J  B ¨"¨b¨Ð2µAÑ6Ô6Ò6Ð6Ð6Ð6Øˆq‰5•J  A ¨¨A¨Ð/µÑ3Ô3Ò3Ð3Ð3Ð3Øˆq‰5•J  A ¨¨A¨Ð/µÑ3Ô3Ò3Ð3Ð3Ð3ÝˆQ‰4Œ4�!‰8•z A q 6¨A¨q¨6Ð"2µAÑ6Ô6Ò6Ð6Ð6Ð6Ø�q�‰tŒt‰8•z A q 6¨A¨q¨6Ð"2µAÑ6Ô6Ò6Ð6Ð6Ð6Ý
�9�n�n�n�nÑ%Ô%Ð%Ý
�9�n�n�n�nÑ%Ô%Ð%Ý	�a˜�V�H¥2¥a¤5Ð	)Ñ	)Ô	)€BÝŒ6�B‰;�*¥q¤v¨q k ]½½A¼Ð?Ñ?Ô?Ò?Ð?Ð?Ð?Ø•”‰;�*¥q¤v¨q k ]½½A¼Ð?Ñ?Ô?Ò?Ð?Ð?Ð?àˆq‰5•J¥ 1¡¤ a¡¨ ­a°©d¬d°1©f°a¨[Ð9½1Ñ=Ô=Ò=Ð=Ð=Ð=Ø�t�A•q‰zŒz‰>�Z­!¨A©$¬$¨q©&°!¨µq¸±t´t¸A±v¸q°kÐ(BÅAÑFÔFÒFÐFÐFÐFÝ
�9�n�n�n�nÑ%Ô%Ð%Ð%Ð%r*   c                  ó  — t          ddgddggt          ¦  «        } |                      ¦   «         t          ddgddggt          ¦  «        k    sJ ‚t          ddgddggt          ¦  «        }|                      |¦  «        t          g d	¢g d
¢gt          ¦  «        k    sJ ‚|                      |¦  «        t          ddgddgddgddggt          ¦  «        k    sJ ‚|                      d„ ¦  «        t          ddgddggt          ¦  «        k    sJ ‚d S )Nr   r   r   rN   é   rS   r]   rT   )r   r   rg   rS   )r   rN   r]   rT   c                 ó   — d| z  S )Nr   r2   )Úes    r(   r0   z/test_polymatrix_manipulations.<locals>.<lambda>¥   s
   €  ! A¡#€ r*   )r   r   Ú	transposeÚrow_joinÚcol_joinÚ	applyfuncr<   s     r(   Útest_polymatrix_manipulationsrn   Ÿ   s  € Ý	�a˜�V˜a ˜VÐ$¥aÑ	(Ô	(€BØ�<Š<‰>Œ>�Z¨!¨Q¨°!°Q°Ð(8½!Ñ<Ô<Ò<Ð<Ð<Ð<Ý	�a˜�V˜a ˜VÐ$¥aÑ	(Ô	(€BØ�;Š;�r‰?Œ?�j¨,¨,¨,¸¸¸Ð)EÅqÑIÔIÒIÐIÐIÐIØ�;Š;�r‰?Œ?�j¨1¨a¨&°1°a°&¸1¸a¸&À1ÀaÀ&Ð)IÍ1ÑMÔMÒMÐMÐMÐMØ�<Š<˜˜Ñ&Ô&­*°q¸!°f¸qÀ!¸fÐ5EÅqÑ*IÔ*IÒIÐIÐIÐIÐIÐIr*   c                  óæ   — t          j        ddt          ¦  «        t          ddggt          ¦  «        k    sJ ‚t          j        dt          ¦  «        t          ddgddggt          ¦  «        k    sJ ‚d S )Nr   r   r   )r   Úzerosr   Úeyer2   r*   r(   Útest_polymatrix_ones_zerosrr   ¨   sl   € ÝÔ˜A˜q¥!Ñ$Ô$­
°Q¸°F°8½QÑ(?Ô(?Ò?Ð?Ð?Ð?ÝŒ>˜!�QÑÔ¥:°°1¨v¸¸1°vÐ.>ÅÑ#BÔ#BÒBÐBÐBÐBÐBÐBr*   c                  óü   — t          ddgddggt          ¦  «        } |                      ¦   «         t          j        dt          ¦  «        dfk    sJ ‚t	          t
          d„ ¦  «         t	          t
          d„ ¦  «         d S )Nr   r   r   rN   )r   r   c                  ól   — t          ddgt          t                   ¬¦  «                             ¦   «         S rD   )r   r	   r   Úrrefr2   r*   r(   r0   z&test_polymatrix_rref.<locals>.<lambda>°   s'   € �z¨1¨a¨&µr½!´uÐ=Ñ=Ô=×BÒBÑDÔD€ r*   c                  óv   — t          dt          gt          t                   ¬¦  «                             ¦   «         S ©Nr   r   )r   r   r
   ru   r2   r*   r(   r0   z&test_polymatrix_rref.<locals>.<lambda>±   s'   € �z¨1­a¨&µr½!´uÐ=Ñ=Ô=×BÒBÑDÔD€ r*   )r   r   ru   rq   r   Ú
ValueErrorrO   s    r(   Útest_polymatrix_rrefry   ­   sv   € Ý�Q˜�F˜Q ˜FÐ#¥QÑ'Ô'€AØ�6Š6‰8Œ8�
œ q­!Ñ,Ô,¨fÐ5Ò5Ð5Ð5Ð5Ý
�:ÐDÐDÑEÔEÐEÝ
�:ÐDÐDÑEÔEÐEÐEÐEr*   c                  ó(  — t          ddgddggt          ¦  «        } |                      ¦   «         t          ddgt          ¦  «        gk    sJ ‚t          t          d„ ¦  «         t          t          d„ ¦  «         |                      ¦   «         dk    sJ ‚d S )Nr   r   r   rS   rU   c                  ól   — t          ddgt          t                   ¬¦  «                             ¦   «         S rD   )r   r	   r   Ú	nullspacer2   r*   r(   r0   z+test_polymatrix_nullspace.<locals>.<lambda>·   s'   € �z¨1¨a¨&µr½!´uÐ=Ñ=Ô=×GÒGÑIÔI€ r*   c                  óv   — t          dt          gt          t                   ¬¦  «                             ¦   «         S rw   )r   r   r
   r|   r2   r*   r(   r0   z+test_polymatrix_nullspace.<locals>.<lambda>¸   s'   € �z¨1­a¨&µr½!´uÐ=Ñ=Ô=×GÒGÑIÔI€ r*   )r   r   r|   r   rx   ÚrankrO   s    r(   Útest_polymatrix_nullspacer   ´   s‰   € Ý�Q˜�F˜Q ˜FÐ#¥QÑ'Ô'€AØ�;Š;‰=Œ=�Z¨¨Q¨µÑ3Ô3Ð4Ò4Ð4Ð4Ð4Ý
�:ÐIÐIÑJÔJÐJÝ
�:ÐIÐIÑJÔJÐJØ�6Š6‰8Œ8�qŠ=ˆ=ˆ=ˆ=ˆ=ˆ=r*   N)Úsympy.testing.pytestr   Úsympy.polys.polymatrixr   Úsympy.polysr   Úsympy.core.singletonr   Úsympy.matrices.denser   Úsympy.polys.domains.integerringr	   Ú!sympy.polys.domains.rationalfieldr
   Ú	sympy.abcr   r   r)   r?   rB   rI   rL   rQ   re   rn   rr   ry   r   r2   r*   r(   ú<module>rˆ      sa  ðØ 'Ð 'Ð 'Ð 'Ð 'Ð 'à -Ð -Ð -Ð -Ð -Ð -Ø Ð Ð Ð Ð Ð à "Ð "Ð "Ð "Ð "Ð "Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø .Ð .Ð .Ð .Ð .Ð .Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0à Ð Ð Ð Ð Ð Ð Ð ð!Mð !Mð !MðH'Mð 'Mð 'MðT4ð 4ð 4ð""ð "ð "ðOð Oð Oð
Cð Cð Cð&ð &ð &ð4Jð Jð JðCð Cð Cð
Fð Fð Fðð ð ð ð r*   