§
    OŠtj³  ã                   óV   — d Z ddlmZ ddlmZ ddlmZmZ ddlm	Z	 ddl
mZ d„ Zd„ Zd	S )
zTests for quotient rings.é    )ÚZZ)ÚQQ)ÚxÚy)ÚNotReversible)Úraisesc            	      óP  ‡— t          j        t          ¦  «        t          dz  gz  } |                      t          ¦  «        Š‰‰dz   z  |                      t          dz  t          z   ¦  «        k    sJ ‚‰t          z  |                      t          dz  ¦  «        k    sJ ‚t          ‰z  |                      t          dz  ¦  «        k    sJ ‚‰t          z   |                      dt          z  ¦  «        k    sJ ‚t          ‰z   d‰z  k    sJ ‚‰dz  |                      t          dz  ¦  «        k    sJ ‚dd‰z
  z  |                      t	          d„ t          d¦  «        D ¦   «         ¦  «        ¦  «        k    sJ ‚‰dz  | j        k    sJ ‚‰t          k    sJ ‚t          t          ˆfd„¦  «         d S )Né
   é   é   c              3   ó*   K  — | ]}t           |z  V — Œd S ©N)r   )Ú.0Úis     úi/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/polys/domains/tests/test_quotientring.pyú	<genexpr>z+test_QuotientRingElement.<locals>.<genexpr>   s&   è è € Ð%>Ð%>¨q¥a¨¡dÐ%>Ð%>Ð%>Ð%>Ð%>Ð%>ó    c                  ó   •— d‰ z  S )Nr   © )ÚXs   €r   ú<lambda>z*test_QuotientRingElement.<locals>.<lambda>   s   ø€  ! A¡#€ r   )	r   Úold_poly_ringr   ÚconvertÚsumÚrangeÚzeror   r   )ÚRr   s    @r   Útest_QuotientRingElementr      sy  ø€ Ý
Ô�ÑÔ�Q ™U˜GÑ#€AØ	�	Š	•!‰Œ€Aàˆa�!‰e‰9˜Ÿ	š	¥! Q¡$­¡(Ñ+Ô+Ò+Ð+Ð+Ð+Ø�Q‰3�!—)’)�A˜q™D‘/”/Ò!Ð!Ð!Ð!ÝˆQ‰3�!—)’)�A˜q™D‘/”/Ò!Ð!Ð!Ð!Ø�q‰5�A—I’I˜a¥™c‘N”NÒ"Ð"Ð"Ð"Ýˆq‰5�A�a‘CŠ<ˆ<ˆ<ˆ<Øˆa‰4�1—9’9�Q ™T‘?”?Ò"Ð"Ð"Ð"Øˆa�!‰e‰9˜Ÿ	š	¥#Ð%>Ð%>µE¸"±I´IÐ%>Ñ%>Ô%>Ñ">Ô">Ñ?Ô?Ò?Ð?Ð?Ð?Øˆb‰5�A”FŠ?ˆ?ˆ?ˆ?Ø•Š6ˆ6ˆ6ˆ6å
�=˜+˜+˜+˜+Ñ&Ô&Ð&Ð&Ð&r   c                  óŠ  — t          j        t          ¦  «                             t          dz  dz   ¦  «        } t          j        t          ¦  «        | z  }|t          j        t          ¦  «        t          dz  dz   gz  k    sJ ‚|t          j        t          ¦  «        t          j        t          ¦  «                             t          dz  dz   ¦  «        z  k    sJ ‚|t          j        t          ¦  «        k    sJ ‚|                     d¦  «        t          z  t           | z   k    sJ ‚d| z   t          dz  | z   k    sJ ‚|                     t          d¦  «        t
          ¦  «        d| z   k    sJ ‚|                     |                     t          ¦  «        |¦  «        |                     t          ¦  «        k    sJ ‚|                     t          ¦  «        }t          j        t          ¦  «                             t          ¦  «        }d| z   |dz  | z   k    sJ ‚d| z   |dz  | z   k    sJ ‚|                     |¦  «        t          k    sJ ‚t          t          d„ ¦  «         t          j        t          d¬¦  «        }|                     t          ¦  «        } |                     d¦  «        | z   || z                       d¦  «        k    sJ ‚d S )Nr   r   éÿÿÿÿc                  ó¤   — t          j        t          ¦  «        t          j        t          t          ¦  «                             t          ¦  «        z  S r   )r   r   r   r   Úidealr   r   r   r   z#test_QuotientRing.<locals>.<lambda>0   s2   € �rÔ/µÑ2Ô2µ2Ô3CÅAÅqÑ3IÔ3I×3OÒ3OÕPQÑ3RÔ3RÑR€ r   Úilex)Úorder)	r   r   r   r"   r   r   Úto_sympyr   Ú
ValueError)ÚIr   r   ÚYs       r   Útest_QuotientRingr)      sT  € Ý
Ô�ÑÔ×!Ò!¥! Q¡$¨¡(Ñ+Ô+€AÝ
Ô�ÑÔ˜AÑ€Aà•Ô ¥Ñ#Ô#¥Q¨¡T¨A¡X JÑ.Ò.Ð.Ð.Ð.Ø•Ô ¥Ñ#Ô#¥BÔ$4µQÑ$7Ô$7×$=Ò$=½aÀ¹dÀQ¹hÑ$GÔ$GÑGÒGÐGÐGÐGØ•Ô ¥Ñ#Ô#Ò#Ð#Ð#Ð#à�9Š9�Q‰<Œ<�‰>�a˜R !™VÒ#Ð#Ð#Ð#Ø�‰6•Q˜‘T˜A‘XÒÐÐÐØ�9Š9•R˜‘U”U�BÑÔ 1 q¡5Ò(Ð(Ð(Ð(Ø�9Š9�Q—Y’Y�q‘\”\ 1Ñ%Ô%¨¯ªµ1©¬Ò5Ð5Ð5Ð5à	�	Š	•!‰Œ€AÝ
Ô�ÑÔ×#Ò#¥AÑ&Ô&€AØ�‰6�Q˜‘T˜A‘XÒÐÐÐØ�‰6�Q˜‘T˜A‘XÒÐÐÐØ�:Š:�a‰=Œ=�AÒÐÐÐå
�:ÐRÐRÑSÔSÐSå
Ô� &Ð)Ñ)Ô)€AØ	�Š•‰
Œ
€AØ�9Š9�Q‰<Œ<˜!Ñ  !¡Ÿ}š}¨QÑ/Ô/Ò/Ð/Ð/Ð/Ð/Ð/r   N)Ú__doc__Úsympy.polys.domains.integerringr   Ú!sympy.polys.domains.rationalfieldr   Ú	sympy.abcr   r   Úsympy.polys.polyerrorsr   Úsympy.testing.pytestr   r   r)   r   r   r   ú<module>r0      s“   ðØ Ð à .Ð .Ð .Ð .Ð .Ð .Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø Ð Ð Ð Ð Ð Ð Ð à 0Ð 0Ð 0Ð 0Ð 0Ð 0à 'Ð 'Ð 'Ð 'Ð 'Ð 'ð'ð 'ð 'ð"0ð 0ð 0ð 0ð 0r   