§
    OŠtj,%  ã                   óÐ   — 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mZmZmZmZ d dlmZmZ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„ Z%d„ Z&dS )é    )Úraises)ÚZZÚQQ)ÚDDM)Úddm_transposeÚddm_iaddÚddm_isubÚddm_inegÚddm_imatmulÚddm_imulÚ	ddm_irrefÚddm_idetÚddm_iinvÚddm_iluÚddm_ilu_splitÚddm_ilu_solveÚddm_berk)ÚDMDomainErrorÚDMNonInvertibleMatrixErrorÚDMNonSquareMatrixErrorÚDMShapeErrorc                  óL   — ddgddgg} t          | ¦  «        ddgddggk    sJ ‚d S )Né   é   é   é   )r   ©Úas    úc/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/polys/matrices/tests/test_dense.pyÚtest_ddm_transposer       s@   € Ø
ˆQˆ�!�Q�Ð€AÝ˜ÑÔ  A ¨¨A¨Ð/Ò/Ð/Ð/Ð/Ð/Ð/ó    c                  ób   — ddgddgg} ddgddgg}t          | |¦  «         | ddgd	d
ggk    sJ ‚d S )Nr   r   r   r   é   é   é   é   é
   é   )r   ©r   Úbs     r   Útest_ddm_iaddr+      sW   € Ø
ˆQˆ�!�Q�Ð€AØ
ˆQˆ�!�Q�Ð€AÝˆQ��N„N€NØ�!�Q�˜"˜b˜Ð"Ò"Ð"Ð"Ð"Ð"Ð"r!   c                  ób   — ddgddgg} ddgddgg}t          | |¦  «         | d	d	gd	d	ggk    sJ ‚d S )
Nr   r   r   r   r#   r$   r%   r&   éüÿÿÿ)r	   r)   s     r   Útest_ddm_isubr.      sW   € Ø
ˆQˆ�!�Q�Ð€AØ
ˆQˆ�!�Q�Ð€AÝˆQ��N„N€NØ�"�b�˜B ˜8Ð$Ò$Ð$Ð$Ð$Ð$Ð$r!   c                  óP   — ddgddgg} t          | ¦  «         | ddgddggk    sJ ‚d S )	Nr   r   r   r   éÿÿÿÿéþÿÿÿéýÿÿÿr-   )r
   r   s    r   Útest_ddm_inegr3   &   sC   € Ø
ˆQˆ�!�Q�Ð€AÝˆQ�K„K€KØ�"�b�˜B ˜8Ð$Ò$Ð$Ð$Ð$Ð$Ð$r!   c                  óž   — ddgddgg} t          | d¦  «         | ddgddggk    sJ ‚ddgddgg} t          | d¦  «         | ddgddggk    sJ ‚d S )Nr   r   r   r   r$   r&   r   )r   r   s    r   Útest_ddm_matmulr5   ,   s‚   € Ø
ˆQˆ�!�Q�Ð€AÝˆQ��N„N€NØ�!�Q�˜!˜Q˜Ð Ò Ð Ð Ð à
ˆQˆ�!�Q�Ð€AÝˆQ��N„N€NØ�!�Q�˜!˜Q˜Ð Ò Ð Ð Ð Ð Ð r!   c                  ó*  — g d¢g d¢g} ddgddgddgg}d	d	gd	d	gg}t          || |¦  «         |d
dgddggk    sJ ‚g d¢g d¢g d¢g}t          ||| ¦  «         |g d¢g d¢g d¢gk    sJ ‚dgdgdgg}d	gd	gg}t          || |¦  «         |dgdggk    sJ ‚d S )N)r   r   r   )r   r#   r$   r   r   r   r   r#   r$   r   é   é   é1   é@   )r   r   r   )é	   r(   é   )é   é   é!   )é   é(   é3   é   é    )r   )r   r*   Úc1Úc2Úb3Úc3s         r   Útest_ddm_imatmulrI   6   s  € Ø	ˆˆ�I�I�IÐ€AØ
ˆQˆ�!�Q�˜!˜Q˜Ð €Aàˆaˆ&�1�a�&Ð	€BÝ��A�qÑÔÐØ�2�r�(˜R ˜HÐ%Ò%Ð%Ð%Ð%à
ˆ)ˆ)�Y�Y�Y 	 	 	Ð	*€BÝ��A�qÑÔÐØ�+�+�+˜|˜|˜|¨\¨\¨\Ð:Ò:Ð:Ð:Ð:àˆ#�ˆs�Q�Cˆ€BØˆ#�ˆsˆ€BÝ��A�rÑÔÐØ�2�$˜˜�ÒÐÐÐÐÐr!   c                  ó°	  — g } g }g }t          | ¦  «        |k    sJ ‚| |k    sJ ‚t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg}ddg}t          | ¦  «        |k    sJ ‚| |k    sJ ‚t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg}ddg}t          | ¦  «        |k    sJ ‚| |k    sJ ‚t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg}ddg}t          | ¦  «        |k    sJ ‚| |k    sJ ‚t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg}ddg}t          | ¦  «        |k    sJ ‚| |k    sJ ‚t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg}ddg}t          | ¦  «        |k    sJ ‚| |k    sJ ‚t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg}ddg}t          | ¦  «        |k    sJ ‚| |k    sJ ‚d S )Nr   r   r   r   r   r0   )r   r   )ÚAÚArÚpivotss      r   Útest_ddm_irrefrN   H   sÿ  € à
€AØ	€BØ€FÝ�Q‰<Œ<˜6Ò!Ð!Ð!Ð!Ø�Š7ˆ7ˆ7ˆ7õ ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜Ð(€AÝˆa‰5Œ5•"�Q‘%”%ˆ.�2˜a™5œ5¥" Q¡%¤%˜.Ð	)€BØ�ˆV€FÝ�Q‰<Œ<˜6Ò!Ð!Ð!Ð!Ø�Š7ˆ7ˆ7ˆ7õ ˆQ‰%Œ%•�A‘”�˜1™œÐ	¥ A¡¤­¨1©¬­r°!©u¬uÐ 5Ð6€AÝˆa‰5Œ5•"�Q‘%”%�˜B™œÐ
 ¥2 a¡5¤5­"¨Q©%¬%µ°A±´Ð"7Ð	8€BØ�ˆV€FÝ�Q‰<Œ<˜6Ò!Ð!Ð!Ð!Ø�Š7ˆ7ˆ7ˆ7õ ˆQ‰%Œ%•�A‘”�˜1™œÐ	¥ A¡¤­¨1©¬­r°!©u¬uÐ 5Ð6€AÝˆa‰5Œ5•"�Q‘%”%�˜B™œÐ
 ¥2 a¡5¤5­"¨Q©%¬%µ°A±´Ð"7Ð	8€BØ�ˆV€FÝ�Q‰<Œ<˜6Ò!Ð!Ð!Ð!Ø�Š7ˆ7ˆ7ˆ7õ ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜­"¨Q©%¬%µ°A±´¨Ð8€AÝˆa‰5Œ5•"�Q‘%”%ˆ.�2˜a™5œ5¥" Q¡%¤%˜.­2¨a©5¬5µ"°Q±%´%¨.Ð	9€BØ�ˆV€FÝ�Q‰<Œ<˜6Ò!Ð!Ð!Ð!Ø�Š7ˆ7ˆ7ˆ7õ ˆQ‰%Œ%•�A‘”�˜1™œÐ	¥ A¡¤­¨1©¬­r°!©u¬uÐ 5Ð6€AÝˆa‰5Œ5•"�Q‘%”%�˜A™œÐ
¥" Q¡%¤%­¨A©¬µ°1±´Ð!6Ð	7€BØ�ˆV€FÝ�Q‰<Œ<˜6Ò!Ð!Ð!Ð!Ø�Š7ˆ7ˆ7ˆ7õ ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜­"¨Q©%¬%µ°A±´¨Ð8€AÝˆa‰5Œ5•"�Q‘%”%ˆ.�2˜a™5œ5¥" Q¡%¤%˜.­2¨a©5¬5µ"°Q±%´%¨.Ð	9€BØ�ˆV€FÝ�Q‰<Œ<˜6Ò!Ð!Ð!Ð!Ø�Š7ˆ7ˆ7ˆ7ˆ7ˆ7r!   c                  ó  — g } t          | t          ¦  «        t          d¦  «        k    sJ ‚t          d¦  «        gg} t          | t          ¦  «        t          d¦  «        k    sJ ‚t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg} t          | t          ¦  «        t          d¦  «        k    sJ ‚t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg} t          | t          ¦  «        t          d¦  «        k    sJ ‚t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg} t          | t          ¦  «        t          d¦  «        k    sJ ‚t          dd¦  «        t          dd¦  «        gt          dd¦  «        t          dd¦  «        gg} t          | t          ¦  «        t          dd	¦  «        k    sJ ‚d S )
Nr   r   r   r   r1   r#   r0   r   é   )r   r   r   ©rK   s    r   Útest_ddm_idetrR   {   sä  € Ø
€AÝ�A•r‰?Œ?�b ™eœeÒ#Ð#Ð#Ð#å
ˆQ‰%Œ%ˆˆ	€AÝ�A•r‰?Œ?�b ™eœeÒ#Ð#Ð#Ð#å
ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜Ð(€AÝ�A•r‰?Œ?�b ™fœfÒ$Ð$Ð$Ð$å
ˆQ‰%Œ%•�A‘”�˜1™œÐ	¥ A¡¤­¨1©¬­r°!©u¬uÐ 5½¸1¹¼½rÀ!¹u¼uÅbÈÁeÄeÐ7LÐM€AÝ�A•r‰?Œ?�b ™fœfÒ$Ð$Ð$Ð$å
ˆQ‰%Œ%•�A‘”�˜1™œÐ	¥ A¡¤­¨1©¬­r°!©u¬uÐ 5½¸1¹¼½rÀ!¹u¼uÅbÈÁeÄeÐ7LÐM€AÝ�A•r‰?Œ?�b ™eœeÒ#Ð#Ð#Ð#å
ˆQ�‰(Œ(•B�q˜!‘H”HÐ	¥ 1 a¡¤­"¨Q°©(¬(Ð3Ð4€AÝ�A•r‰?Œ?�b  R™jœjÒ(Ð(Ð(Ð(Ð(Ð(r!   c                  ó  ‡‡— g Šg Št          ‰‰t          ¦  «         ‰‰k    sJ ‚g Šg Št          t          ˆˆfd„¦  «         t          d¦  «        t          d¦  «        ggŠt          d¦  «        t          d¦  «        ggŠt          t          ˆˆfd„¦  «         t          dd¦  «        t          dd¦  «        gt          dd¦  «        t          dd¦  «        ggŠt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        ggŠt          dd¦  «        t          dd¦  «        gt          dd¦  «        t          d	d¦  «        gg} t          ‰‰t          ¦  «         ‰| k    sJ ‚t          dd¦  «        t          dd¦  «        gt          dd¦  «        t          dd¦  «        ggŠt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        ggŠt          t
          ˆˆfd
„¦  «         d S )Nc                  ó0   •— t          ‰‰ t          ¦  «        S ©N)r   r   ©rK   ÚAinvs   €€r   ú<lambda>ztest_ddm_inv.<locals>.<lambda>—   s   ø€ ¥(¨4°µBÑ"7Ô"7€ r!   r   r   r   c                  ó0   •— t          ‰‰ t          ¦  «        S rU   ©r   r   rV   s   €€r   rX   ztest_ddm_inv.<locals>.<lambda>›   s   ø€ ­8°D¸!½RÑ+@Ô+@€ r!   r   r   r1   r0   c                  ó0   •— t          ‰‰ t          ¦  «        S rU   rZ   rV   s   €€r   rX   ztest_ddm_inv.<locals>.<lambda>¥   s   ø€ ­x¸¸aÅÑ/DÔ/D€ r!   )r   r   r   r   r   r   )ÚAinv_expectedrK   rW   s    @@r   Útest_ddm_invr]   �   sÙ  øø€ Ø
€AØ€DÝˆT�1•bÑÔÐØ�1Š9ˆ9ˆ9ˆ9à
€AØ€DÝ
�=Ð7Ð7Ð7Ð7Ð7Ñ8Ô8Ð8å
ˆQ‰%Œ%•�A‘”ˆÐ€AÝ�‰UŒU•B�q‘E”EˆNÐ€DÝ
Õ!Ð#@Ð#@Ð#@Ð#@Ð#@ÑAÔAÐAå
ˆQ�‰(Œ(•B�q˜!‘H”HÐ	¥ 1 a¡¤­"¨Q°©(¬(Ð3Ð4€AÝ�‰UŒU•B�q‘E”EˆN�R ™UœU¥B q¡E¤E˜NÐ+€DÝ˜˜Q‘i”i¥ A q¡¤Ð*­R°°1©X¬Xµr¸"¸a±y´yÐ,AÐB€MÝˆT�1•bÑÔÐØ�=Ò Ð Ð Ð å
ˆQ�‰(Œ(•B�q˜!‘H”HÐ	¥ 1 a¡¤­"¨Q°©(¬(Ð3Ð4€AÝ�‰UŒU•B�q‘E”EˆN�R ™UœU¥B q¡E¤E˜NÐ+€DÝ
Õ%Ð'DÐ'DÐ'DÐ'DÐ'DÑEÔEÐEÐEÐEr!   c                  óÊ
  — g } g }t          | ¦  «        }| |k    sJ ‚|g k    sJ ‚g g} g g}t          | ¦  «        }| |k    sJ ‚|g k    sJ ‚t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg}t          | ¦  «        }| |k    sJ ‚|g k    sJ ‚t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg}t          | ¦  «        }| |k    sJ ‚|dgk    sJ ‚t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d	¦  «        gt          d
¦  «        t          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gt          d
¦  «        t          d¦  «        t          d¦  «        gg}t          | ¦  «        }| |k    sJ ‚|g k    sJ ‚t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg}t          | ¦  «        }| |k    sJ ‚|dgk    sJ ‚t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d	¦  «        gg} t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg}t          | ¦  «        }| |k    sJ ‚|g k    sJ ‚t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gt          d¦  «        t          d	¦  «        gg} t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg}t          | ¦  «        }| |k    sJ ‚|g k    sJ ‚d S )Nr   r   r   r   r1   r   ©r   r   r#   r$   r%   r&   r;   r2   éúÿÿÿr0   )r   r   )r   r   )rK   ÚAluÚswapss      r   Útest_ddm_ilurc   ¨   sF  € Ø
€AØ
€CÝ�A‰JŒJ€EØ�Š8ˆ8ˆ8ˆ8Ø�BŠ;ˆ;ˆ;ˆ;à	ˆ€AØˆ$€CÝ�A‰JŒJ€EØ�Š8ˆ8ˆ8ˆ8Ø�BŠ;ˆ;ˆ;ˆ;å
ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜Ð(€AÝˆq‰EŒE•2�a‘5”5ˆ>�B˜q™EœE¥2 b¡6¤6˜?Ð
+€CÝ�A‰JŒJ€EØ�Š8ˆ8ˆ8ˆ8Ø�BŠ;ˆ;ˆ;ˆ;å
ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜Ð(€AÝˆq‰EŒE•2�a‘5”5ˆ>�B˜q™EœE¥2 a¡5¤5˜>Ð
*€CÝ�A‰JŒJ€EØ�Š8ˆ8ˆ8ˆ8Ø�V�HÒÐÐÐå
ˆQ‰%Œ%•�A‘”�˜1™œÐ	¥ A¡¤­¨1©¬­r°!©u¬uÐ 5½¸1¹¼½rÀ!¹u¼uÅbÈÁeÄeÐ7LÐM€AÝˆq‰EŒE•2�a‘5”5�"˜Q™%œ%Ð ¥2 a¡5¤5­"¨R©&¬&µ"°R±&´&Ð"9½B¸q¹E¼EÅ2ÀaÁ5Ä5Í"ÈQÉ%Ì%Ð;PÐ
Q€CÝ�A‰JŒJ€EØ�Š8ˆ8ˆ8ˆ8Ø�BŠ;ˆ;ˆ;ˆ;å
ˆQ‰%Œ%•�A‘”�˜1™œÐ	¥ A¡¤­¨1©¬­r°!©u¬uÐ 5½¸1¹¼½rÀ!¹u¼uÅbÈÁeÄeÐ7LÐM€AÝˆq‰EŒE•2�a‘5”5�"˜Q™%œ%Ð ¥2 a¡5¤5­"¨Q©%¬%µ°A±´Ð"7½"¸Q¹%¼%ÅÀAÁÄÍÈ2ÉÌÐ9OÐ
P€CÝ�A‰JŒJ€EØ�Š8ˆ8ˆ8ˆ8Ø�V�HÒÐÐÐå
ˆQ‰%Œ%•�A‘”�˜1™œÐ	¥ A¡¤­¨1©¬­r°!©u¬uÐ 5Ð6€AÝˆq‰EŒE•2�a‘5”5�"˜Q™%œ%Ð ¥2 a¡5¤5­"¨R©&¬&µ"°R±&´&Ð"9Ð
:€CÝ�A‰JŒJ€EØ�Š8ˆ8ˆ8ˆ8Ø�BŠ;ˆ;ˆ;ˆ;å
ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜­"¨Q©%¬%µ°A±´¨Ð8€AÝˆq‰EŒE•2�a‘5”5ˆ>�B˜q™EœE¥2 b¡6¤6˜?­R°©U¬UµB°q±E´E¨NÐ
;€CÝ�A‰JŒJ€EØ�Š8ˆ8ˆ8ˆ8Ø�BŠ;ˆ;ˆ;ˆ;ˆ;ˆ;r!   c                  óÒ	  — g } g }g }g }t          || t          ¦  «        }| |k    sJ ‚||k    sJ ‚|g k    sJ ‚g g} t          d¦  «        gg}g g}t          d¦  «        gg}t          || t          ¦  «        }| |k    sJ ‚||k    sJ ‚|g k    sJ ‚t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg}t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg}t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg}t          || t          ¦  «        }| |k    sJ ‚||k    sJ ‚|g k    sJ ‚t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg}t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d	¦  «        t          d
¦  «        gg}t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg}t          || t          ¦  «        }| |k    sJ ‚||k    sJ ‚|g k    sJ ‚t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg} t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg}t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gg}t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gg}t          || t          ¦  «        }| |k    sJ ‚||k    sJ ‚|g k    sJ ‚d S )Nr   r   r   r   r   r1   r#   r$   r2   r`   )r   r   )ÚUÚLÚUexpÚLexprb   s        r   Útest_ddm_ilu_splitri   Ú   sø  € Ø
€AØ
€AØ€DØ€DÝ˜!˜Q¥Ñ#Ô#€EØ�Š9ˆ9ˆ9ˆ9Ø�Š9ˆ9ˆ9ˆ9Ø�BŠ;ˆ;ˆ;ˆ;à	ˆ€AÝ
ˆQ‰%Œ%ˆˆ	€AØˆ4€DÝ�‰UŒUˆGˆ9€DÝ˜!˜Q¥Ñ#Ô#€EØ�Š9ˆ9ˆ9ˆ9Ø�Š9ˆ9ˆ9ˆ9Ø�BŠ;ˆ;ˆ;ˆ;å
ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜Ð(€AÝ
ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜Ð(€AÝ�‰UŒU•B�q‘E”EˆN�R ™UœU¥B r¡F¤F˜OÐ,€DÝ�‰UŒU•B�q‘E”EˆN�R ™UœU¥B q¡E¤E˜NÐ+€DÝ˜!˜Q¥Ñ#Ô#€EØ�Š9ˆ9ˆ9ˆ9Ø�Š9ˆ9ˆ9ˆ9Ø�BŠ;ˆ;ˆ;ˆ;å
ˆQ‰%Œ%•�A‘”�˜1™œÐ	¥ A¡¤­¨1©¬­r°!©u¬uÐ 5Ð6€AÝ
ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜Ð(€AÝ�‰UŒU•B�q‘E”E�2˜a™5œ5Ð!¥B q¡E¤E­2¨b©6¬6µ2°b±6´6Ð#:Ð;€DÝ�‰UŒU•B�q‘E”EˆN�R ™UœU¥B q¡E¤E˜NÐ+€DÝ˜!˜Q¥Ñ#Ô#€EØ�Š9ˆ9ˆ9ˆ9Ø�Š9ˆ9ˆ9ˆ9Ø�BŠ;ˆ;ˆ;ˆ;å
ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜­"¨Q©%¬%µ°A±´¨Ð8€AÝ
ˆQ‰%Œ%•�A‘”�˜1™œÐ	¥ A¡¤­¨1©¬­r°!©u¬uÐ 5½¸1¹¼½rÀ!¹u¼uÅbÈÁeÄeÐ7LÐM€AÝ�‰UŒU•B�q‘E”EˆN�R ™UœU¥B r¡F¤F˜O­b°©e¬eµR¸±U´U¨^Ð<€DÝ�‰UŒU•B�q‘E”E�2˜a™5œ5Ð!¥B q¡E¤E­2¨a©5¬5µ"°Q±%´%Ð#8½2¸a¹5¼5Å"ÀQÁ%Ä%ÍÈAÉÌÐ:OÐP€DÝ˜!˜Q¥Ñ#Ô#€EØ�Š9ˆ9ˆ9ˆ9Ø�Š9ˆ9ˆ9ˆ9Ø�BŠ;ˆ;ˆ;ˆ;ˆ;ˆ;r!   c                  ó  ‡‡‡‡‡‡— t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        ggŠt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        ggŠg Št          t          d¦  «        gt          d¦  «        ggdt           ¦  «        Št          t          d¦  «        gt          d¦  «        ggdt           ¦  «        Št          t          d¦  «        gt          dd¦  «        ggdt           ¦  «        } t          ‰‰‰‰‰¦  «         ‰| k    sJ ‚t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        ggŠt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        ggŠdgŠt          t          d¦  «        gt          d¦  «        ggdt           ¦  «        Št          t          d¦  «        gt          d¦  «        ggdt           ¦  «        Št          t          d¦  «        gt          dd¦  «        ggdt           ¦  «        } t          ‰‰‰‰‰¦  «         ‰| k    sJ ‚t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        ggŠt          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gt          d	¦  «        t          d¦  «        t          d¦  «        ggŠg Št          t          d¦  «        gt          d¦  «        gt          d¦  «        ggd
t           ¦  «        Št          t          d¦  «        gt          d¦  «        ggdt           ¦  «        Št          t          d¦  «        gt          dd¦  «        ggdt           ¦  «        } t          ‰‰‰‰‰¦  «         ‰| k    sJ ‚t          t          d¦  «        gt          d¦  «        gt          d¦  «        ggd
t           ¦  «        Št          t          ˆˆˆˆˆfd„¦  «         t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        ggŠt          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        ggŠg Št          t          d¦  «        gt          d¦  «        ggdt           ¦  «        Št          t          ˆˆˆˆˆfd„¦  «         t          d¦  «        t          d¦  «        ggŠt          d¦  «        ggŠg Št          t          d¦  «        ggdt           ¦  «        Št          t
          ˆˆˆˆˆfd„¦  «         t          t          d¦  «        gt          d¦  «        gt          d¦  «        ggd
t           ¦  «        Št          t          ˆˆˆˆˆfd„¦  «         t          d¦  «        ggŠt          d¦  «        ggŠg Št          d¦  «        ggŠg Št          t          ˆˆˆˆˆfd„¦  «         g Šg Šg Šg Šg Št          ‰‰‰‰‰¦  «         ‰g k    sJ ‚d S )Nr   r   r   r1   r   )r   r   r   r_   r#   )r   r   c                  ó*   •— t          ‰‰ ‰‰‰¦  «        S rU   ©r   ©rf   re   r*   rb   Úxs   €€€€€r   rX   z$test_ddm_ilu_solve.<locals>.<lambda>-  ó   ø€ ­}¸QÀÀ1ÀeÈQÑ/OÔ/O€ r!   c                  ó*   •— t          ‰‰ ‰‰‰¦  «        S rU   rl   rm   s   €€€€€r   rX   z$test_ddm_ilu_solve.<locals>.<lambda>5  ro   r!   )r   r   c                  ó*   •— t          ‰‰ ‰‰‰¦  «        S rU   rl   rm   s   €€€€€r   rX   z$test_ddm_ilu_solve.<locals>.<lambda>=  s   ø€ ­°a¸¸A¸uÀaÑ(HÔ(H€ r!   c                  ó*   •— t          ‰‰ ‰‰‰¦  «        S rU   rl   )rf   re   rG   rb   rn   s   €€€€€r   rX   z$test_ddm_ilu_solve.<locals>.<lambda>A  s   ø€ ¥¨q°!°Q¸¸rÑ!BÔ!B€ r!   c                  ó*   •— t          ‰‰ ‰‰‰¦  «        S rU   rl   rm   s   €€€€€r   rX   z$test_ddm_ilu_solve.<locals>.<lambda>I  s   ø€ ¥¨q°!°Q¸¸qÑ!AÔ!A€ r!   )r   r   r   r   r   ÚNotImplementedErrorr   )Úxexprf   re   r*   rG   rb   rn   s    @@@@@@r   Útest_ddm_ilu_solverv   	  s“  øøøøøø€ õ ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ B¡¤˜Ð)€AÝ
ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜Ð(€AØ€EÝ�b�‰eŒeˆW•r˜!‘u”u�gÐ ­Ñ+Ô+€AÝ�b�‰eŒeˆW•r˜!‘u”u�gÐ ­Ñ+Ô+€AÝ•�A‘”��"˜Q ™(œ(˜Ð$ f­bÑ1Ô1€DÝ�!�Q˜˜5 !Ñ$Ô$Ð$Ø�Š9ˆ9ˆ9ˆ9õ ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜Ð(€AÝ
ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜Ð(€AØˆH€EÝ�b�‰eŒeˆW•r˜!‘u”u�gÐ ­Ñ+Ô+€AÝ�b�‰eŒeˆW•r˜!‘u”u�gÐ ­Ñ+Ô+€AÝ•�A‘”��"˜Q ™(œ(˜Ð$ f­bÑ1Ô1€DÝ�!�Q˜˜5 !Ñ$Ô$Ð$Ø�Š9ˆ9ˆ9ˆ9õ ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ B¡¤˜­2¨a©5¬5µ"°Q±%´%¨.Ð9€AÝ
ˆQ‰%Œ%•�A‘”�˜1™œÐ	¥ A¡¤­¨1©¬­r°!©u¬uÐ 5½¸1¹¼½rÀ!¹u¼uÅbÈÁeÄeÐ7LÐM€AØ€EÝ�b�‰eŒeˆW•r˜!‘u”u�g¥ 1¡¤˜wÐ'¨µÑ4Ô4€AÝ�b�‰eŒeˆW•r˜!‘u”u�gÐ ­Ñ+Ô+€AÝ•�A‘”��"˜Q ™(œ(˜Ð$ f­bÑ1Ô1€DÝ�!�Q˜˜5 !Ñ$Ô$Ð$Ø�Š9ˆ9ˆ9ˆ9õ 	�b�‰eŒeˆW•r˜!‘u”u�g¥ 1¡¤˜wÐ'¨µÑ4Ô4€AÝ
Õ%Ð'OÐ'OÐ'OÐ'OÐ'OÐ'OÐ'OÐ'OÑPÔPÐPõ ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜Ð(€AÝ
ˆQ‰%Œ%•�A‘”ˆ�"˜Q™%œ%¥ A¡¤˜Ð(€AØ€EÝ�b�‰eŒeˆW•r˜!‘u”u�gÐ ­Ñ+Ô+€AÝ
Õ%Ð'OÐ'OÐ'OÐ'OÐ'OÐ'OÐ'OÐ'OÑPÔPÐPõ ˆQ‰%Œ%•�A‘”ˆÐ€AÝ
ˆQ‰%Œ%ˆˆ	€AØ€EÝ�b�‰eŒeˆWˆI�v�rÑ"Ô"€AÝ
ÕÐ HÐ HÐ HÐ HÐ HÐ HÐ HÐ HÑIÔIÐIõ 
�r�!‰uŒuˆg�˜1™œ�w¥ A¡¤ Ð(¨&µ"Ñ	5Ô	5€BÝ
�<ÐBÐBÐBÐBÐBÐBÐBÐBÑCÔCÐCõ ˆQ‰%Œ%ˆˆ	€AÝ
ˆQ‰%Œ%ˆˆ	€AØ€EÝ
ˆQ‰%Œ%ˆˆ	€AØ
€AÝ
�<ÐAÐAÐAÐAÐAÐAÐAÐAÑBÔBÐBð 	€AØ
€AØ€EØ
€AØ
€AÝ�!�Q˜˜5 !Ñ$Ô$Ð$Ø�Š7ˆ7ˆ7ˆ7ˆ7ˆ7r!   c                  ó®  ‡— g Št          ‰t          ¦  «        t          d¦  «        ggk    sJ ‚t          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d¦  «        gt          d¦  «        t          d¦  «        t          d	¦  «        ggŠt          d¦  «        gt          d
¦  «        gt          d¦  «        gt          d¦  «        gg} t          ‰t          ¦  «        | k    sJ ‚t          t          d¦  «        t          d¦  «        ggdt          ¦  «        Št          t          ˆfd„¦  «         d S )Nr   r   r   r   r#   r$   r%   r&   r;   iñÿÿÿiîÿÿÿr   )r   r   c                  ó.   •— t          ‰ t          ¦  «        S rU   )r   r   rQ   s   €r   rX   z#test_ddm_charpoly.<locals>.<lambda>^  s   ø€ ¥¨!­R¡¤€ r!   )r   r   r   r   r   )ÚAvecrK   s    @r   Útest_ddm_charpolyrz   U  s  ø€ Ø
€AÝ�A•r‰?Œ?¥ 1¡¤˜w˜iÒ'Ð'Ð'Ð'å
ˆQ‰%Œ%•�A‘”�˜1™œÐ	¥ A¡¤­¨1©¬­r°!©u¬uÐ 5½¸1¹¼½rÀ!¹u¼uÅbÈÁeÄeÐ7LÐM€AÝ�‰UŒUˆG•b˜‘g”g�Y¥ C¡¤ 	­B¨q©E¬E¨7Ð3€DÝ�A•r‰?Œ?˜dÒ"Ð"Ð"Ð"å�b�‰eŒe•R˜‘U”Uˆ^Ð˜f¥bÑ)Ô)€AÝ
�<Ð0Ð0Ð0Ð0Ñ1Ô1Ð1Ð1Ð1r!   N)'Úsympy.testing.pytestr   Úsympy.polysr   r   Úsympy.polys.matrices.ddmr   Úsympy.polys.matrices.denser   r   r	   r
   r   r   r   r   r   r   r   r   r   Úsympy.polys.matrices.exceptionsr   r   r   r   r    r+   r.   r3   r5   rI   rN   rR   r]   rc   ri   rv   rz   © r!   r   ú<module>r�      s  ðØ 'Ð 'Ð 'Ð 'Ð 'Ð 'à Ð Ð Ð Ð Ð Ð Ð à (Ð (Ð (Ð (Ð (Ð (ðMð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð Mð
ð ð ð ð ð ð ð ð ð ð ð ð0ð 0ð 0ð
#ð #ð #ð%ð %ð %ð%ð %ð %ð!ð !ð !ðð ð ð$0ð 0ð 0ðf)ð )ð )ð(Fð Fð Fð2/ð /ð /ðd,ð ,ð ,ð^Ið Ið IðX	2ð 	2ð 	2ð 	2ð 	2r!   