§
    OŠtjS#  ã                   ó„   — d dl mZ d dlmZmZmZ d dlmZmZm	Z	m
Z
mZmZmZmZ d dlmZ d„ Zd„ Zd„ Zd„ Zd	„ Zd
„ Zd„ ZdS )é    )Úring)ÚZZÚQQÚAlgebraicField)Úmodgcd_univariateÚmodgcd_bivariateÚ._chinese_remainder_reconstruction_multivariateÚmodgcd_multivariateÚ_to_ZZ_polyÚ_to_ANP_polyÚfunc_field_modgcdÚ_func_field_modgcd_m)Úsqrtc                  ó
  — t          dt          ¦  «        \  } }| j        | j        }}t          ||¦  «        dk    sJ ‚| j        |}}t          ||¦  «        |ddfk    sJ ‚t          ||¦  «        |ddfk    sJ ‚| j        | }}t          ||¦  «        |ddfk    sJ ‚t          ||¦  «        |ddfk    sJ ‚d|z   | d¦  «        }}t          ||¦  «        d|dfk    sJ ‚d|z  dz   d|dz  z  dz
  }}t          ||¦  «        d|z  dz   dd|z  dz
  fk    sJ ‚|d	z  d
|dz  z  z   d|dz  z  z   d|z  z   d
z   }|dz  d|dz  z  z   d|z  z   dz   }|dz  d|z  z   dz   }|dz  d|z  z   d	z   }|dz   }t          ||¦  «        |||fk    sJ ‚|d	z  d	z
  }|d	z  d	|dz  z  z   d	z   }|dz  dz   }|dz  dz
  }|dz  dz   }t          ||¦  «        |||fk    sJ ‚|d
z  |dz  z   d|d	z  z  z
  d|dz  z  z
  d
|dz  z  z   d|z  z   dz
  }d|dz  z  d|d	z  z  z   d	|dz  z  z
  d|z  z
  dz   }d}|}|}t          ||¦  «        |||fk    sJ ‚d|dz  z  d|dz  z  z   d|dz  z  z   d|dz  z  z   d|dz  z  z
  d|dz  z  z   d|dz  z  z   dz   }d|dz  z  d|dz  z  z   d |dz  z  z
  dz
  }t          ||                     |¦  «        ¦  «        d         |k    sJ ‚d!|z  d"z   }d#|z  d$z   }d#|z  d$z   }d%}d}t          ||¦  «        |||fk    sJ ‚d S )&NÚx©r   r   r   r   é   éÿÿÿÿé   é   é   é   é   é   é   é   é   é	   lìÿÿÿ     p¢ƒ>�Zè6-(È·3Ã{ CÃzˆìVgÚsóR&é1   l       À	Í`”ç ò%³'(Õ'»@ó$@¥9$` ÑV é*   l      `µ%³Nw‚g¹ej^íôr�0c’u`Z§hD é#   l      ]%³5…œu[o¦vÈ&Á+Ú/
có>_o],é   l    @ü)-ÀPµ/Í'X=‚vØw+U9+; l    _ÖIÈ	†,ü4~XsRò`Y?t
U¼ é   l   y[Ùpñ?÷uÿ;ÃZàW`±( é   l   ñEÙA‘y·\¼^
l     Àmc@Ats lÍ\o#MkïEœ6w# l    @¼r/sÜL—xFJŽG jëA�l   €3ƒsèd%uÒ%ƒg%9 Œi[T l         qRvl        @Ñû	l        P\l        `àiÂ*  )r   r   Úzeror   Údiff)ÚRr   ÚfÚgÚhÚcffÚcfgs          ú_/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/polys/tests/test_modulargcd.pyÚtest_modgcd_univariate_integersr.      s�  € Ý�•R‰=Œ=�D€A€qàŒ6�1”6€q€AÝ˜Q Ñ"Ô" iÒ/Ð/Ð/Ð/àŒ6�1€q€AÝ˜Q Ñ"Ô" q¨!¨Q iÒ/Ð/Ð/Ð/Ý˜Q Ñ"Ô" q¨!¨Q iÒ/Ð/Ð/Ð/àŒ6�A�2€q€AÝ˜Q Ñ"Ô" q¨!¨R jÒ0Ð0Ð0Ð0Ý˜Q Ñ"Ô" q¨"¨a jÒ0Ð0Ð0Ð0àˆQ‰3���!‘”€q€AÝ˜Q Ñ"Ô" q¨!¨Q iÒ/Ð/Ð/Ð/àˆQ‰3�‰7�A�a˜‘d‘F˜Q‘J€q€AÝ˜Q Ñ"Ô" q¨¡s¨Q¡w°°1°Q±3¸±7Ð&;Ò;Ð;Ð;Ð;à	ˆ1‰ˆq��A‘‰v‰˜˜1˜a™4™Ñ " Q¡$Ñ&¨Ñ*€AØ	ˆ1‰ˆq��A‘‰v‰˜˜1™Ñ˜qÑ €Aà	ˆ1‰ˆq�‰s‰
�Q‰€Aà
ˆQ‰$��1‘‰*�q‰.€CØ
ˆa‰%€Cå˜Q Ñ"Ô" q¨#¨s mÒ3Ð3Ð3Ð3à	ˆ1‰ˆq‰€AØ	ˆ1‰ˆq��A‘‰v‰˜Ñ€Aà	ˆ1‰ˆq‰€Aà
ˆQ‰$�‰(€CØ
ˆQ‰$�‰(€Cå˜Q Ñ"Ô" q¨#¨s mÒ3Ð3Ð3Ð3à	ˆ1‰ˆq�!‰t‰�a˜˜1™‘fÑ˜q  A¡™vÑ%¨¨!¨Q©$©Ñ.°°1±Ñ4°qÑ8€AØ	ˆ!ˆQ‰$‰��1�a‘4‘‰˜!˜A˜q™D™&Ñ  1 Q¡3Ñ&¨Ñ+€Aà	€Aà
€CØ
€Cå˜Q Ñ"Ô" q¨#¨s mÒ3Ð3Ð3Ð3àdÐefÐhjÑejÑjØ
]Ð^_ÐacÑ^cÑ
cñ	dà
XÐYZÐ\^ÑY^Ñ
^ñ	_ð SÐSTÐVXÑSXÑ
Xñ	Yð LÈAÈrÉEÑ
Qñ		Rð
 DÀAÀrÁEÑ
Iñ	Jð :¸!¸Q¹$Ñ
>ñ	?ð /ñ	/€Að GÀqÈ"ÁuÑ
LØ
@ÀÀBÁÑ
FñGà
8¸¸A¹Ñ
=ñ>ð /ñ/€Aõ
 ˜Q §¢ q¡	¤	Ñ*Ô*¨1Ô-°Ò2Ð2Ð2Ð2à˜qÑ Ð#9Ñ9€AØ˜1ÑÐ1Ñ1€Aà˜1ÑÐ1Ñ1€AØ
€CØ
€Cå˜Q Ñ"Ô" q¨#¨s mÒ3Ð3Ð3Ð3Ð3Ð3ó    c                  ó  — t          dt          ¦  «        \  } }}| j        | j        }}t          ||¦  «        dk    sJ ‚d|z   | d¦  «        }}t          ||¦  «        d|dfk    sJ ‚|d|z  z   ||z   }}t          ||¦  «        d||fk    sJ ‚|dz  d|z  |z  z   |dz  z   |dz  |dz  z   }}t          ||¦  «        ||z   ||z   |dz  ||z  z
  |dz  z   fk    sJ ‚||dz  z  d|z  |z  z   |z   ||dz  z  |z   }}t          ||¦  «        ||z  |z   |dz   |dz  |z
  dz   fk    sJ ‚|dz  |dz  z  |dz  |z  z   dz   ||dz  z  ||z  z   dz   }}t          ||¦  «        d||fk    sJ ‚d|z  |dz  z  d|z  |z  z   d|z  z   |dz  z   d|z  z   dz   }d|z  |dz  z  d|z  z   |dz  z   dz   }t          ||¦  «        d|z  |z  d|z  z   |z   dz   |dz   |dz  |z
  dz   fk    sJ ‚d|dz  z  d|z  z   dz   |dz   }}t          ||¦  «        |dz   d|z  dz   dfk    sJ ‚|dz   d|dz  z  d|z  z   dz   }}t          ||¦  «        |dz   dd|z  dz   fk    sJ ‚d|dz  z  d|z  |z  z   d|z  z
  d|z  z
  }|dz  |z   dz
  }t          ||¦  «        |dz
  d|z  d|z  z   |dz   fk    sJ ‚d|dz  z  d|z  |z  z   d|z  z
  d|z  z
  }d|z  |z  d|z  z
  d|dz  z  z   d|z  z
  }t          ||¦  «        ||z   d|z  dz
  d|z  dz
  fk    sJ ‚d S )Núx,yr   r   r   r   r   )r   r   r%   r   )r'   r   Úyr(   r)   s        r-   Útest_modgcd_bivariate_integersr3   [   s/  € Ý�5�"‰oŒo�G€A€qˆ!àŒ6�1”6€q€AÝ˜A˜qÑ!Ô! YÒ.Ð.Ð.Ð.àˆQ‰3���!‘”€q€AÝ˜A˜qÑ!Ô! a¨¨A YÒ.Ð.Ð.Ð.àˆq�‰s‰7�A˜‘E€q€AÝ˜A˜qÑ!Ô! a¨¨A YÒ.Ð.Ð.Ð.àˆa‰4�!�A‘#�a‘%‰<˜!˜Q™$Ñ  1¡ q¨!¡t¡€q€AÝ˜A˜qÑ!Ô! a¨!¡e¨Q°©U°A°q±D¸1¸Q¹3±JÀÀAÁÑ4EÐ%FÒFÐFÐFÐFàˆQ�‰T‰6�A�a‘C˜‘E‰>˜AÑ˜q  A¡™v¨™z€q€AÝ˜A˜qÑ!Ô! a¨¡c¨A¡g¨q°1©u°a¸±d¸Q±hÀ±lÐ%CÒCÐCÐCÐCàˆa‰4��1‘‰9�q˜!‘t˜A‘vÑ Ñ! 1 Q¨¡T¡6¨A¨a©C¡<°!Ñ#3€q€AÝ˜A˜qÑ!Ô! a¨¨A YÒ.Ð.Ð.Ð.à	ˆ!‰ˆAˆq‰D‰�1�Q‘3�q‘5Ñ˜1˜Q™3Ñ  A¡Ñ%¨¨!©Ñ+¨aÑ/€AØ	ˆ!‰ˆAˆq‰D‰�1�Q‘3‰˜˜A™Ñ Ñ!€AÝ˜A˜qÑ!Ô! a¨¡c¨!¡e¨a°©c¡k°A¡o¸Ñ&9¸1¸q¹5À!ÀQÁ$ÈÁ(ÈQÁ,Ð%OÒOÐOÐOÐOàˆQ�‰T‰6�A�a‘C‰<˜!Ñ˜Q ™U€q€AÝ˜A˜qÑ!Ô! a¨!¡e¨Q¨q©S°1©W°aÐ%8Ò8Ð8Ð8Ð8àˆq‰5�!�A�q‘D‘&˜1˜Q™3‘, Ñ"€q€AÝ˜A˜qÑ!Ô! a¨!¡e¨Q°°!±°a±Ð%8Ò8Ð8Ð8Ð8à	ˆ!ˆQ‰$‰��1‘�Q‘‰˜˜1™Ñ˜q ™sÑ"€AØ	ˆ1‰ˆq‰�1‰€AÝ˜A˜qÑ!Ô! a¨!¡e¨Q¨q©S°1°Q±3©Y¸¸A¹Ð%>Ò>Ð>Ð>Ð>à	ˆ!ˆQ‰$‰��1‘�Q‘‰˜˜1™Ñ˜q ™sÑ"€AØ	ˆ!‰ˆA‰��!‘‰�a˜˜1™‘fÑ˜q ™sÑ"€AÝ˜A˜qÑ!Ô! a¨!¡e¨Q¨q©S°1©W°a¸±c¸A±gÐ%>Ò>Ð>Ð>Ð>Ð>Ð>r/   c                  ó(  — t          dt          ¦  «        \  } }}d\  }}|dz  |z  |dz  z
  dz
  }|dz   |z  d|z  |dz  z  z
  dz   }t          ||||¦  «        }|                     |¦  «        |k    sJ ‚|                     |¦  «        |k    sJ ‚t          d| ¦  «        \  }}	d\  }}||z  dz   |	dz  z  |z   }|dz  d|z  z
  |	z  dz   }t          ||||¦  «        }|                     |¦  «        |k    sJ ‚|                     |¦  «        |k    sJ ‚d S )Núx, y)r   r   r   r   r   Úz)r   r$   )r   r   r	   Útrunc_ground)
r'   r   r2   ÚpÚqÚhpÚhqÚhpqÚTr6   s
             r-   Útest_chinese_remainderr>   ƒ   sU  € Ý�6�2ÑÔ�G€A€qˆ!Ø�D€A€qà	
ˆA‰ˆa‰�!�Q‘$‰˜Ñ	€BØ
ˆQ‰$ˆˆq‰�1�Q‘3�q˜!‘t‘8Ñ	˜aÑ	€Bå
8¸¸RÀÀAÑ
FÔ
F€Cà×Ò˜AÑÔ "Ò$Ð$Ð$Ð$Ø×Ò˜AÑÔ "Ò$Ð$Ð$Ð$å��Q‰<Œ<�D€A€qØ�D€A€qà
ˆA‰#�‰'�1�a‘4‰˜!Ñ	€BØ
ˆQ‰$��1‘‰*�a‰˜!Ñ	€Bå
8¸¸RÀÀAÑ
FÔ
F€Cà×Ò˜AÑÔ "Ò$Ð$Ð$Ð$Ø×Ò˜AÑÔ "Ò$Ð$Ð$Ð$Ð$Ð$r/   c            
      óœ  — t          dt          ¦  «        \  } }}| j        | j        }}t          ||¦  «        dk    sJ ‚d|dz  z  d|z  z   dz   |dz   }}t          ||¦  «        |dz   d|z  dz   dfk    sJ ‚|dz   d|dz  z  d|z  z   dz   }}t          ||¦  «        |dz   dd|z  dz   fk    sJ ‚d|dz  z  d|z  |z  z   d|z  z
  d|z  z
  }d|z  |z  d|z  z
  d|dz  z  z   d|z  z
  }t          ||¦  «        ||z   d|z  dz
  d|z  dz
  fk    sJ ‚||dz  z  d|z  |z  z   |z   ||dz  z  |z   }}t          ||¦  «        ||z  |z   |dz   |dz  |z
  dz   fk    sJ ‚|dz  |dz  z  |dz  |z  z   dz   ||dz  z  ||z  z   dz   }}t          ||¦  «        d||fk    sJ ‚|dz  d|dz  z  z   d|dz  z  z   d	|z  z   dz   }|dz  d
|dz  z  z   d|z  z   d
z   }|dz  d|z  z   dz   }|dz  d|z  z   dz   }|dz   }t          ||¦  «        |||fk    sJ ‚t          dt          ¦  «        \  } }}}}	||z   |z   | |z
  |z
  |	z
  }}t          ||¦  «        d||fk    sJ ‚|	dz  d|	z  z   dz   d|	z  dz   }}t          ||¦  «        |	dz   |	dz   dfk    sJ ‚|dz  |	dz  z  d|dz  z  |	z  z   |dz  z   ||	z  z   |z   |	dz  d|	z  z   dz   }}|	dz   |dz  |	z  |dz  z   |z   |	dz   }}}t          ||¦  «        |||fk    sJ ‚t          ||¦  «        |||fk    sJ ‚t          dt          ¦  «        \  } }}}|||z  z
  |||z  z
  }}t          ||¦  «        |||z  z
  ddfk    sJ ‚|                      ¦   «         \  }}}t          ||¦  «        \  }
}}|
|k    r|
|z  |k    r	|
|z  |k    sJ ‚t          dt          ¦  «        \  } }}}}	}|                      ¦   «         \  }}}t          ||¦  «        \  }
}}|
|k    r|
|z  |k    r	|
|z  |k    sJ ‚t          dt          ¦  «        \  } }}}}	}}}|                      ¦   «         \  }}}t          ||¦  «        \  }
}}|
|k    r|
|z  |k    r	|
|z  |k    sJ ‚t          dt          ¦  «        \
  } }}}}	}}}}}|                      ¦   «         \  }}}t          ||¦  «        \  }
}}|
|k    r|
|z  |k    r	|
|z  |k    sJ ‚t          dt          ¦  «        \  } }}}|                      ¦   «         \  }}}t          ||¦  «        \  }
}}|
|k    r|
|z  |k    r	|
|z  |k    sJ ‚|                      ¦   «         \  }}}t          ||¦  «        \  }
}}|
|k    r|
|z  |k    r	|
|z  |k    sJ ‚t          dt          ¦  «        \  } }}}}|                      ¦   «         \  }}}t          ||¦  «        \  }
}}|
|k    r|
|z  |k    r	|
|z  |k    sJ ‚d S )Nr1   r   r   r   r   r   r   r   r   r   r   r   zx,y,z,uzx,y,zz	x,y,z,u,vzx,y,z,u,v,a,bzx,y,z,u,v,a,b,c,dzx,y,z,t)r   r   r%   r
   Úfateman_poly_F_1Úfateman_poly_F_2Úfateman_poly_F_3)r'   r   r2   r(   r)   r*   r+   r,   r6   ÚuÚHÚvÚaÚbÚcÚdÚts                    r-   Ú!test_modgcd_multivariate_integersrK   ›   s^  € Ý�5�"‰oŒo�G€A€qˆ!àŒ6�1”6€q€AÝ˜q !Ñ$Ô$¨	Ò1Ð1Ð1Ð1àˆQ�‰T‰6�A�a‘C‰<˜!Ñ˜Q ™U€q€AÝ˜q !Ñ$Ô$¨¨Q©°°!±°a±¸Ð(;Ò;Ð;Ð;Ð;àˆq‰5�!�A�q‘D‘&˜1˜Q™3‘, Ñ"€q€AÝ˜q !Ñ$Ô$¨¨Q©°°1°Q±3¸±7Ð(;Ò;Ð;Ð;Ð;à	ˆ!ˆQ‰$‰��1‘�Q‘‰˜˜1™Ñ˜q ™sÑ"€AØ	ˆ!‰ˆA‰��!‘‰�a˜˜1™‘fÑ˜q ™sÑ"€AÝ˜q !Ñ$Ô$¨¨Q©°°!±°a±¸¸1¹¸q¹Ð(AÒAÐAÐAÐAàˆQ�‰T‰6�A�a‘C˜‘E‰>˜AÑ˜q  A¡™v¨™z€q€AÝ˜q !Ñ$Ô$¨¨1©¨q©°!°a±%¸¸A¹À¹ÀA¹Ð(FÒFÐFÐFÐFàˆa‰4��1‘‰9�q˜!‘t˜A‘vÑ Ñ! 1 Q¨¡T¡6¨A¨a©C¡<°!Ñ#3€q€AÝ˜q !Ñ$Ô$¨¨A¨q¨	Ò1Ð1Ð1Ð1à	ˆ1‰ˆq��A‘‰v‰˜˜1˜a™4™Ñ " Q¡$Ñ&¨Ñ*€AØ	ˆ1‰ˆq��A‘‰v‰˜˜1™Ñ˜qÑ €Aà	ˆ1‰ˆq�‰s‰
�Q‰€Aà
ˆQ‰$��1‘‰*�q‰.€CØ
ˆa‰%€Cå˜q !Ñ$Ô$¨¨C°¨Ò5Ð5Ð5Ð5å˜¥BÑ'Ô'�M€A€qˆ!ˆQ�àˆq‰5�1‰9�q�b˜1‘f˜q‘j 1‘n€q€AÝ˜q !Ñ$Ô$¨¨A¨q¨	Ò1Ð1Ð1Ð1àˆa‰4�!�A‘#‰:˜‰>˜1˜Q™3 ™7€q€AÝ˜q !Ñ$Ô$¨¨Q©°°A±°qÐ(9Ò9Ð9Ð9Ð9àˆa‰4��1‘‰9�q˜˜A™‘v˜a‘xÑ ! Q¡$Ñ&¨¨1©Ñ,¨qÑ0°!°Q±$¸¸1¹±*¸q±.€q€AØ�a‘%˜˜A™˜a™ ! Q¡$™¨Ñ*¨A°©EˆC€s€Aå˜q !Ñ$Ô$¨¨C°¨Ò5Ð5Ð5Ð5Ý˜q !Ñ$Ô$¨¨C°¨Ò5Ð5Ð5Ð5å�g�rÑ"Ô"�J€A€qˆ!ˆQàˆq�‰s‰7�A˜˜!™‘G€q€AÝ˜q !Ñ$Ô$¨¨Q¨q©S©°!°Q¨Ò7Ð7Ð7Ð7à× Ò Ñ"Ô"�G€A€qˆ!Ý% a¨Ñ+Ô+�K€A€sˆCà�Š6ˆ6�a˜‘e˜q’j�j Q s¡U¨a¢Z Z ZÐ/å˜K­Ñ,Ô,Ñ€A€qˆ!ˆQ��1à× Ò Ñ"Ô"�G€A€qˆ!Ý% a¨Ñ+Ô+�K€A€sˆCà�Š6ˆ6�a˜‘e˜q’j�j Q s¡U¨a¢Z Z ZÐ/å! /µ2Ñ6Ô6Ñ€A€qˆ!ˆQ��1�a˜à× Ò Ñ"Ô"�G€A€qˆ!Ý% a¨Ñ+Ô+�K€A€sˆCà�Š6ˆ6�a˜‘e˜q’j�j Q s¡U¨a¢Z Z ZÐ/å#'Ð(;½RÑ#@Ô#@Ñ €A€qˆ!ˆQ��1�a˜˜A˜qà× Ò Ñ"Ô"�G€A€qˆ!Ý% a¨Ñ+Ô+�K€A€sˆCà�Š6ˆ6�a˜‘e˜q’j�j Q s¡U¨a¢Z Z ZÐ/å�g�rÑ"Ô"�J€A€qˆ!ˆQà× Ò Ñ"Ô"�G€A€qˆ!Ý% a¨Ñ+Ô+�K€A€sˆCà�Š6ˆ6�a˜‘e˜q’j�j Q s¡U¨a¢Z Z ZÐ/à× Ò Ñ"Ô"�G€A€qˆ!Ý% a¨Ñ+Ô+�K€A€sˆCà�Š6ˆ6�a˜‘e˜q’j�j Q s¡U¨a¢Z Z ZÐ/å˜¥BÑ'Ô'�M€A€qˆ!ˆQ�à× Ò Ñ"Ô"�G€A€qˆ!Ý% a¨Ñ+Ô+�K€A€sˆCà�Š6ˆ6�a˜‘e˜q’j�j Q s¡U¨a¢Z Z ZÐ/ Z Zr/   c                  óh  — t          t          t          d¦  «        ¦  «        } t          d| ¦  «        \  }}|t          d¦  «        dz   z  }t          dt          ¦  «        \  }}}||z  |z   }t          ||¦  «        |k    sJ ‚t          ||¦  «        |k    sJ ‚t          d| ¦  «        \  }}}}	||dz  z  ||	z  z   t          d¦  «        z   }t          dt          ¦  «        \  }
}}t          d|
¦  «        \  }}}|dz  |z   |z  |z   }t          ||¦  «        |k    sJ ‚t          ||¦  «        |k    sJ ‚d S )Nr   r   r   zx_, z_zx, t, szt_, s_)r   r   r   r   r   r   r   )ÚAr'   r   r(   r=   Úx_Úz_Úf_rJ   ÚsÚDÚt_Ús_s                r-   Útest_to_ZZ_ANP_polyrU   ü   sF  € Ý•r�4 ™7œ7Ñ#Ô#€AÝ��Q‰<Œ<�D€A€qØ	�4�‰7Œ7�Q‰;‰€Aå�X�rÑ"Ô"�I€A€rˆ2Ø	ˆB‰�‰€Bå�q˜!ÑÔ Ò"Ð"Ð"Ð"Ý˜˜AÑÔ !Ò#Ð#Ð#Ð#å�i Ñ#Ô#�J€A€qˆ!ˆQØ	ˆ!ˆQ‰$‰��1‘‰•t˜A‘w”wÑ€Aå�X�rÑ"Ô"�I€A€rˆ2Ý�X˜qÑ!Ô!�I€A€rˆ2Ø
ˆa‰%�"‰*�b‰˜2Ñ	€Bå�q˜!ÑÔ Ò"Ð"Ð"Ð"Ý˜˜AÑÔ !Ò#Ð#Ð#Ð#Ð#Ð#r/   c            	      ó(  — t          t          t          d¦  «        ¦  «        } t          d| ¦  «        \  }}| j        }d|z   |d¦  «        }}t          ||¦  «        |||fk    sJ ‚d|z   |t          d¦  «        ¦  «        }}t          ||¦  «        |||fk    sJ ‚d|z  dz   d|dz  z  dz
  }}t          ||¦  «        |dz    |d¦  «        d|z  dz
  fk    sJ ‚t          d| ¦  «        \  }}}|t          d¦  «        |z  z   ||z   }}t          ||¦  «        |||fk    sJ ‚||z  t          d¦  «        |dz  z  z    |t          d¦  «        ¦  «        |z  }}t          ||¦  «        ||t          d¦  «        |z  z    |t          d¦  «        ¦  «        fk    sJ ‚|dz  dt          d¦  «        z  |z  |z  z   d|dz  z  z   |t          d¦  «        |z  z   }}t          ||¦  «        |||fk    sJ ‚t          t          t          d¦  «        t          d¦  «        ¦  «        } t          d| ¦  «        \  }}}}|dz  |dz  z  t          d¦  «        d	z  |z  z   }|d
|dz  z  dz   z  |||z   z  }}t          ||¦  «        |d
|dz  z  dz   ||z   fk    sJ ‚|dz  |dz  z  d|dz  z  z   dt          d¦  «        z  z   }||dz   z  |t          d¦  «        z  t          d¦  «        z  }}t          ||¦  «        ||dz    |t          d¦  «        t          d¦  «        z  ¦  «        fk    sJ ‚t          t          t          d¦  «        dz  t          d¦  «        z  ¦  «        } t          d| ¦  «        \  }}|dz   |dz
  }}t          ||¦  «        | j        ||fk    sJ ‚d S )Nr   r   r   r   r5   r   zx, y, zr$   r   é   é   g      à?é
   r   )r   r   r   r   Úoner   )	rM   r'   r   rZ   r(   r)   r2   r6   r*   s	            r-   Útest_modgcd_algebraic_fieldr[     sÀ  € Ý•r�4 ™7œ7Ñ#Ô#€AÝ��Q‰<Œ<�D€A€qØ
Œ%€CàˆQ‰3���!‘”€q€AÝ˜Q Ñ"Ô" s¨A¨q kÒ1Ð1Ð1Ð1àˆQ‰3��•$�q‘'”'‘
”
€q€AÝ˜Q Ñ"Ô" s¨A¨q kÒ1Ð1Ð1Ð1àˆQ‰3�‰7�A�a˜‘d‘F˜Q‘J€q€AÝ˜Q Ñ"Ô" q¨1¡u¨a¨a°©d¬d°A°a±C¸!±GÐ&<Ò<Ð<Ð<Ð<å�6˜1‰oŒo�G€A€qˆ!à�t�A‰wŒw�q‰y‰=˜!˜a™%€q€AÝ˜Q Ñ"Ô" s¨A¨q kÒ1Ð1Ð1Ð1àˆQ‰3•�a‘”˜˜A™‘Ñ˜q˜q¥ a¡¤™zœz¨!™|€q€AÝ˜Q Ñ"Ô" q¨!­d°1©g¬g°a©i©-¸¸½4À¹7¼7¹¼Ð&DÒDÐDÐDÐDàˆa‰4�!•D˜‘G”G‘)˜A‘+˜a‘-Ñ ! A q¡D¡&Ñ(¨!­d°1©g¬g°a©i©-€q€AÝ˜Q Ñ"Ô" q¨!¨S kÒ1Ð1Ð1Ð1å•r�4 ™7œ7¥D¨¡G¤GÑ,Ô,€AÝ�i Ñ#Ô#�J€A€qˆ!ˆQà	ˆ1‰ˆQ�‰T‰	•D˜‘G”G˜B‘J˜q‘LÑ €AØˆb��A‘‰g˜‰k‰?˜A˜q 1™u™I€q€AÝ˜Q Ñ"Ô" q¨"¨Q°©T©'°!©)°Q°q±SÐ&9Ò9Ð9Ð9Ð9à	ˆ2‰ˆa�‰d‰
�S˜˜B™‘YÑ ¥4¨¡7¤7¡Ñ*€AØˆa�!‰e‰9�a�˜Q™œ‘i¥ Q¡¤Ñ'€q€AÝ˜Q Ñ"Ô" q¨!¨a©%°°µ4¸±7´7½4À¹7¼7±?Ñ1CÔ1CÐ&DÒDÐDÐDÐDå•r�4 ™7œ7 R™=­¨a©¬Ñ0Ñ1Ô1€AÝ��Q‰<Œ<�D€A€qàˆq‰5�!�a‘%€q€AÝ˜Q Ñ"Ô" q¤u¨a° mÒ3Ð3Ð3Ð3Ð3Ð3r/   c                  óþ   — t          dt          ¦  «        \  } }t          d| ¦  «        \  }}}|dz  |dz  z  |dz  |z  z   dz
                       d¦  «        }|dz   |dz
  }}t          |||¦  «        |j        k    sJ ‚d S )NrJ   zx, zr   r   r   )r   r   Údropr   rZ   )rR   rJ   r'   r   r6   Úminpolyr(   r)   s           r-   Útest_modgcd_func_fieldr_   >  s�   € Ý�•R‰=Œ=�D€A€qÝ�6˜1‰oŒo�G€A€qˆ!à�!‰t�A�q‘D‰y˜1˜a™4 ™6Ñ! AÑ%×+Ò+¨AÑ.Ô.€GØˆq‰5�!�a‘%€q€Aå  1 gÑ.Ô.°!´%Ò7Ð7Ð7Ð7Ð7Ð7r/   N)Úsympy.polys.ringsr   Úsympy.polys.domainsr   r   r   Úsympy.polys.modulargcdr   r   r	   r
   r   r   r   r   Ú(sympy.functions.elementary.miscellaneousr   r.   r3   r>   rK   rU   r[   r_   © r/   r-   ú<module>re      s*  ðØ "Ð "Ð "Ð "Ð "Ð "Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð :Ð 9Ð 9Ð 9Ð 9Ð 9ðI4ð I4ð I4ðX%?ð %?ð %?ðP%ð %ð %ð0^0ð ^0ð ^0ðB$ð $ð $ð,(4ð (4ð (4ðX8ð 8ð 8ð 8ð 8r/   