§
    OŠtj  ã                   óÜ  — d dl mZmZ d dlmZmZ d dlmZ d dlm	Z	 d dl
mZ d dlZd dlmZ d dlmZ d d	lmZ d
 eg de¦  «         eg de¦  «         ed¦  «        fd edgge¦  «         edgge¦  «         ed¦  «        fd edd gd dgge¦  «         edd gd dgge¦  «         ed¦  «        fd eddgddgge¦  «         eddgddgge¦  «         ed¦  «        fd eg d¢g d¢g d¢ge¦  «         eg d¢g d¢g d¢ge¦  «         ed¦  «        fd eg d¢g d¢g d ¢ge¦  «         eg d!¢g d"¢g d!¢ge¦  «         ed ¦  «        fgZej                             d#e¦  «        d$„ ¦   «         Zej                             d#e¦  «        d%„ ¦   «         Zej                             d#e¦  «        d&„ ¦   «         Zej                             d#e¦  «        d'„ ¦   «         Zej                             d#e¦  «        d(„ ¦   «         Zej                             d#e¦  «        d)„ ¦   «         Zej                             d#e¦  «        d*„ ¦   «         Zej                             d#e¦  «        d+„ ¦   «         Zd,„ ZdS )-é    )ÚZZÚMatrix)ÚDMÚDomainMatrix©Úddm_iinv)ÚDMNonInvertibleMatrixError)ÚNonInvertibleMatrixErrorN)Úraises)Ú	all_close)ÚxÚzz_1)r   r   é   Úzz_2é   Úzz_3é   Úzz_4é   éþÿÿÿéýÿÿÿÚzz_5)r   r   r   )r   r   r   )r   r   r   )r   éüÿÿÿr   )r   r   r   )r   r   r   é   Úzz_6)r   r   r   )r   é   é   )é   r   é	   )r   r   r   )r   iôÿÿÿr   zname, A, A_inv, denc                 óÚ   ‡‡‡— ˆˆˆfd„}‰j         }‰                     ¦   «         Š‰                     ¦   «         |                     ‰¦  «        z  Š |¦   «          dD ]} ||¬¦  «         Œd S )Nc                  ór   •‡ — ‰dk    r ‰j         di ‰ ¤Ž‰k    sJ ‚d S t          t          ˆˆ fd„¦  «         d S )Nr   c                  ó   •—  ‰ j         di ‰¤ŽS )N© ©Úinv)ÚAÚkwargss   €€úe/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/polys/matrices/tests/test_inverse.pyú<lambda>z1test_Matrix_inv.<locals>._check.<locals>.<lambda>S   s   ø€ °U°Q´U°_°_¸V°_°_€ ó    r#   )r%   r   r
   )r'   r&   ÚA_invÚdens   `€€€r(   Ú_checkztest_Matrix_inv.<locals>._checkO   sV   øø€ Ø�!Š8ˆ8Ø�1”5�?�?˜6�?�? eÒ+Ð+Ð+Ð+Ð+Ð+åÕ+Ð-DÐ-DÐ-DÐ-DÐ-DÑEÔEÐEÐEÐEr*   )ÚGEÚLUÚADJÚCHÚLDLÚQR©Úmethod)ÚdomainÚ	to_MatrixÚto_sympy)Únamer&   r+   r,   r-   ÚKr5   s    ```   r(   Útest_Matrix_invr;   L   s�   øøø€ ðFð Fð Fð Fð Fð Fð Fð 	
Œ€AØ	�Š‰Œ€AØ�OŠOÑÔ §
¢
¨3¡¤Ñ/€EØ
€F�H„H€HØ8ð ð ˆØˆ�fÐÑÔÐÐðð r*   c                 óÒ   ‡— |dk    rG‰                      ¦   «         \  }}|                     |¦  «        |                     |¦  «        k    sJ ‚d S t          t          ˆfd„¦  «         d S )Nr   c                  ó,   •— ‰                       ¦   «         S ©N)Úinv_den©r&   s   €r(   r)   z!test_dm_inv_den.<locals>.<lambda>c   s   ø€ °1·9²9±;´;€ r*   )r?   Úcancel_denomr   r	   )r9   r&   r+   r,   ÚA_inv_fÚden_fs    `    r(   Útest_dm_inv_denrD   ]   sq   ø€ à
ˆa‚x€xØŸš™œ‰ˆ�Ø×#Ò# EÑ*Ô*¨e×.@Ò.@ÀÑ.EÔ.EÒEÐEÐEÐEÐEÐEåÕ)Ð+>Ð+>Ð+>Ð+>Ñ?Ô?Ð?Ð?Ð?r*   c                 óÒ   ‡— ‰                      ¦   «         Š|dk    r3|                      ¦   «         |z  }‰                     ¦   «         |k    sJ ‚d S t          t          ˆfd„¦  «         d S )Nr   c                  ó,   •— ‰                       ¦   «         S r>   r$   r@   s   €r(   r)   ztest_dm_inv.<locals>.<lambda>m   ó   ø€ °1·5²5±7´7€ r*   )Úto_fieldr%   r   r	   ©r9   r&   r+   r,   s    `  r(   Útest_dm_invrJ   f   si   ø€ à	�
Š
‰Œ€AØ
ˆa‚x€xØ—’Ñ Ô  3Ñ&ˆØ�uŠu‰wŒw˜%ÒÐÐÐÐÐåÕ)¨?¨?¨?¨?Ñ;Ô;Ð;Ð;Ð;r*   c                 ó  ‡— ‰                      ¦   «                              ¦   «         Š|dk    rE|                      ¦   «         |z                       ¦   «         }‰                     ¦   «         |k    sJ ‚d S t          t          ˆfd„¦  «         d S )Nr   c                  ó,   •— ‰                       ¦   «         S r>   r$   r@   s   €r(   r)   ztest_ddm_inv.<locals>.<lambda>w   rG   r*   )rH   Úto_ddmr%   r   r	   rI   s    `  r(   Útest_ddm_invrN   p   ó�   ø€ à	�
Š
‰Œ×ÒÑÔ€AØ
ˆa‚x€xØ—’Ñ!Ô! CÑ'×/Ò/Ñ1Ô1ˆØ�uŠu‰wŒw˜%ÒÐÐÐÐÐåÕ)¨?¨?¨?¨?Ñ;Ô;Ð;Ð;Ð;r*   c                 ó  ‡— ‰                      ¦   «                              ¦   «         Š|dk    rE|                      ¦   «         |z                       ¦   «         }‰                     ¦   «         |k    sJ ‚d S t          t          ˆfd„¦  «         d S )Nr   c                  ó,   •— ‰                       ¦   «         S r>   r$   r@   s   €r(   r)   ztest_sdm_inv.<locals>.<lambda>�   rG   r*   )rH   Úto_sdmr%   r   r	   rI   s    `  r(   Útest_sdm_invrS   z   rO   r*   c                 óz  ‡‡‡— ‰                      ¦   «                              ¦   «                              ¦   «         Š‰j        Š‰                     ¦   «         Š|dk    rD|                      ¦   «         |z                       ¦   «         }t	          ‰‰‰¦  «         ‰|k    sJ ‚d S t          t          ˆˆˆfd„¦  «         d S )Nr   c                  ó&   •— t          ‰‰ ‰¦  «        S r>   r   )r&   ÚA_resultr:   s   €€€r(   r)   z%test_dense_ddm_iinv.<locals>.<lambda>Ž   s   ø€ µ8¸HÀaÈÑ3KÔ3K€ r*   )rH   rM   Úcopyr6   r   r   r	   )r9   r&   r+   r,   rV   r:   s    `  @@r(   Útest_dense_ddm_iinvrX   „   s·   øøø€ à	�
Š
‰Œ×ÒÑÔ×"Ò"Ñ$Ô$€AØ	Œ€AØ�vŠv‰xŒx€HØ
ˆa‚x€xØ—’Ñ!Ô! CÑ'×/Ò/Ñ1Ô1ˆÝ�˜1˜aÑ Ô Ð Ø˜5Ò Ð Ð Ð Ð Ð åÕ)Ð+KÐ+KÐ+KÐ+KÐ+KÐ+KÑLÔLÐLÐLÐLr*   c                 óÌ   — |                      ¦   «         }|                      ¦   «         }|                     ¦   «         |k    sJ ‚dD ]}|                     |¬¦  «        |k    sJ ‚Œd S )N)ÚbareissÚ	berkowitzÚbirdÚlaplaceÚlur4   )r7   Úadjugate)r9   r&   r+   r,   r5   s        r(   Útest_Matrix_adjugater`   ‘   sr   € à	�Š‰Œ€AØ�OŠOÑÔ€EØ�:Š:‰<Œ<˜5Ò Ð Ð Ð ØCð 2ð 2ˆØ�zŠz ˆzÑ(Ô(¨EÒ1Ð1Ð1Ð1Ð1ð2ð 2r*   c                 ó>   — |                      ¦   «         ||fk    sJ ‚d S r>   )Úadj_detrI   s       r(   Útest_dm_adj_detrc   š   s%   € à�9Š9‰;Œ;˜5 #˜,Ò&Ð&Ð&Ð&Ð&Ð&r*   c            	      óÐ  — t          t          dz
  ddgdt          dz
  dgddt          d	z
  gg¦  «        } t          d
t          dz  z  dt          z  z
  dz   dt          z  dz   dt          z  dz
  gdt          z  dz
  d
t          dz  z  dt          z  z
  dz   dt          z  dz
  gdt          z  dz   dt          z  dz
  d
t          dz  z  dt          z  z
  dz   gg¦  «        }d
t          dz  z  dt          dz  z  z
  d t          z  z   d!z
  }||z  }|                      ¦   «         }|                     ¦   «         }|                     ¦   «         \  }}|                     ¦   «         \  }}	|                      ¦   «         |                     ¦   «         |z                       ¦   «         |                     ¦   «         |	z                       ¦   «         |                     ¦   «         |                     ¦   «         z  |                     ¦   «         |	                     ¦   «         z  g}
|
D ]N}t          | 
                    ¦   «         | 
                    ¦   «         ¦  «        D ]\  }}t          ||¦  «        sJ ‚ŒŒOd S )"Ng333333Ó?g¸…ëQ¸®¿g)\�Âõ(Ì¿gq=
×£pÝ¿g¸…ëQ¸Þ?g=
×£p=Ú¿gìQ¸…ëÁ¿gö(\�ÂõØ¿g{®Gázä?g      ð?r   gìQ¸…ëñ?gÐ³Yõ¹ÚÂ?g¸…ëQ¸®?g0*©ÐD¨?g)\�Âõ(Ì?g#Ûù~j¼´?gq=
×£pÝ?g¼t“VÎ?g®Gázî?gà¾œ3¢Ä?g=
×£p=Ú?g46<½R–?gìQ¸…ëÁ?gšwœ¢#¹¼?gö(\�ÂõØ?g>yX¨5Í»?gö(\�Âõè?g\ AñcÌ½?r   g¸…ëQ¸ö?go�Å�1Û?g€ð0í›û«?)r   r   Úto_DMÚto_denser?   r%   rH   r7   Úas_exprÚzipÚflatr   )ÚMÚMnÚdÚMiÚM_dmÚM_dmdÚM_dm_numÚM_dm_denÚ	M_dmd_numÚ	M_dmd_denÚMinvsÚMinvÚMi1ÚMi2s                 r(   Útest_inverse_inexactrx   Ÿ   sS  € å•�3‘˜˜uÐ%Ø�˜$™ Ð&Ø˜�q ™vÐ&ð(ñ 	)ô 	)€Aõ 
�#•a˜‘d‘(˜T¥!™VÑ# fÑ,¨dµ1©f°v©o¸tÅA¹vÈ¹~ÐNØ•q‘&˜5‘. #¥a¨¡d¡(¨Tµ!©VÑ"3°fÑ"<¸dÅ1¹fÀv¹oÐNØ•q‘&˜6‘/ 4­¡6¨F¡?°C½¸1¹±H¸tÅA¹vÑ4EÈÑ4NÐOðQñ 
Rô 
R€Bð 	�Aˆq‰D‰�4�˜1™‘9Ñ˜v¥a™xÑ'Ð*<Ñ<€Aà	ˆa‰€Bà�7Š7‰9Œ9€DØ�MŠM‰OŒO€EØŸš™œÑ€HˆhØ Ÿ=š=™?œ?Ñ€Iˆyð 	
�Š‰ŒØ	×	Ò	Ñ	Ô	˜xÑ	'×2Ò2Ñ4Ô4Ø	×	Ò	Ñ	Ô	 	Ñ	)×4Ò4Ñ6Ô6Ø×ÒÑÔ˜x×/Ò/Ñ1Ô1Ñ1Ø×ÒÑÔ 	× 1Ò 1Ñ 3Ô 3Ñ3ð€Eð ð 'ð 'ˆÝ˜DŸIšI™KœK¨¯ª©¬Ñ3Ô3ð 	'ð 	'‰HˆC�Ý˜S #Ñ&Ô&Ð&Ð&Ð&Ð&ð	'ð'ð 'r*   )Úsympyr   r   Úsympy.polys.matricesr   r   Úsympy.polys.matrices.denser   Úsympy.polys.matrices.exceptionsr	   Úsympy.matrices.exceptionsr
   ÚpytestÚsympy.testing.pytestr   Úsympy.core.numbersr   Ú	sympy.abcr   ÚINVERSE_EXAMPLESÚmarkÚparametrizer;   rD   rJ   rN   rS   rX   r`   rc   rx   r#   r*   r(   ú<module>r…      sa  ðØ Ð Ð Ð Ð Ð Ð Ð Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø /Ð /Ð /Ð /Ð /Ð /Ø FÐ FÐ FÐ FÐ FÐ FØ >Ð >Ð >Ð >Ð >Ð >à €€€Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø (Ð (Ð (Ð (Ð (Ð (à Ð Ð Ð Ð Ð ð 	Øˆ�R˜ Ñ$Ô$Øˆ�R˜ Ñ$Ô$Ø
ˆˆ1‰Œð	ð 	Ø
ˆˆQˆCˆ5�"‰ŒØ
ˆˆQˆCˆ5�"‰ŒØ
ˆˆ1‰Œð	ð 	Ø
ˆˆQ�ˆFØ�ˆFðØñ	ô 	à
ˆˆQ�ˆFØ�ˆFðØñ	ô 	à
ˆˆ1‰Œðð 	Ø
ˆˆQ�ˆFØ�ˆFðØñ	ô 	à
ˆˆa�ˆHØ�!ˆHðØñ	ô 	à
ˆˆ2‰Œðð 	Ø
ˆˆIˆIˆIØˆIˆIØˆIˆIðàñ	ô 	ð 	ˆˆJˆJˆJØˆJˆJØˆJˆJðàñ	ô 	ð 	ˆˆ1‰Œð	ð 	Ø
ˆˆIˆIˆIØˆIˆIØˆIˆIðàñ	ô 	ð 	ˆˆMˆMˆMØˆMˆMØˆMˆMðàñ	 ô 	 ð 	ˆˆ1‰Œð	ð[7Ð ðt „×ÒÐ.Ð0@ÑAÔAðð ñ BÔAðð  „×ÒÐ.Ð0@ÑAÔAð@ð @ñ BÔAð@ð „×ÒÐ.Ð0@ÑAÔAð<ð <ñ BÔAð<ð „×ÒÐ.Ð0@ÑAÔAð<ð <ñ BÔAð<ð „×ÒÐ.Ð0@ÑAÔAð<ð <ñ BÔAð<ð „×ÒÐ.Ð0@ÑAÔAð	Mð 	Mñ BÔAð	Mð „×ÒÐ.Ð0@ÑAÔAð2ð 2ñ BÔAð2ð „×ÒÐ.Ð0@ÑAÔAð'ð 'ñ BÔAð'ð"'ð "'ð "'ð "'ð "'r*   