
    sgO                     f    d Z ddlmZmZ ddlmZmZmZ ddlm	Z	m
Z
 ddlmZ d Zd Zd Zd	 Zd
 Zy)z&Tests for the PolynomialRing classes.     )QQZZ)ExactQuotientFailedCoercionFailedNotReversible)xy)raisesc                      t        j                  t        t        dt        fdt        ff      } | j	                  d      dk(  sJ y )Nlexilexorder)      ))r   ))r   old_poly_ringr   r	   r   Rs    `/var/www/html/venv/lib/python3.12/site-packages/sympy/polys/domains/tests/test_polynomialring.pytest_build_orderr      s9    
Auaj61+%>?A776?m+++    c                  :   t        j                  t        t              } t        j                  t        t              }|j                  t              |j                  t              t        |v sJ dt        z  |vsJ ddt        z   z  |vsJ |v sJ dz  dz   z  |j                  t        t        dz  dz   z        k(  sJ dz   |j                  t        dz         k(  sJ t        t        fd       t        t        fd       t        t        fd       dz  z  k(  sJ |j                  t        j                  t        t              j                  t              t        j                  t        t                    k(  sJ |j                  | j                  t              |       k(  sJ |j                  | j                  t        t        z        |       J |j                  |j                  g|j                        d      gk(  sJ y )Nr      c                       z  S N )XYs   r   <lambda>z!test_globalring.<locals>.<lambda>   s    ! r   c                      t          z  S r   r   r   s   r   r    z!test_globalring.<locals>.<lambda>       ac r   c                       t         z  S r   r	   r   s   r   r    z!test_globalring.<locals>.<lambda>       ac r   )r   old_frac_fieldr   r	   r   convertr
   r   	TypeErrorfrom_GlobalPolynomialRingr   from_FractionField_sdm_to_vector_vector_to_sdmr   Qxyr   r   r   s     @@r   test_globalringr2      s   


Aq
!C
AA			!A			!A6M6Q3a<<a!e9A6M61q>QYYqAqD1H~6666q5AIIa!e$$$$
,
9k"
9k"a4!8q==&&r'7'71'='E'Ea'H"JZJZ[\^_J`aeffffA4999AaC 0#6>>>A,,aVQWW=qAaVKKKr   c            	          t        j                  t        t               t        j                  t        t        d      j                  t              j                  t              t        v sJ dt        z  vsJ ddt        z   z  v sJ v sJ dz  dz   z  dz   z  j                  t        t        dz  dz   z  dt        z   z        k(  sJ t        t        fd       t        t        fd       dz   j                  t        dz         k(  sJ dz  z  k(  sJ j                  t        j                  t        t              j                  t              t        j                  t        t                    k(  sJ j                   j                  t                     k(  sJ t        t         fd       t        t        fd       t        t        fd	       j                  j                  dz   z  dz  z   z  gj                         d      dz  z   z  dz   z  gk(  sJ y )
Nr   r   r   r   c                      t          z  S r   r"   r#   s   r   r    z test_localring.<locals>.<lambda>3   r$   r   c                       t         z  S r   r&   r'   s   r   r    z test_localring.<locals>.<lambda>4   r(   r   c                  \    j                   j                  t        t        z               S r   )r-   r*   r   r	   )r1   r   s   r   r    z test_localring.<locals>.<lambda>:   s!    1#7#7AaC8H##N r   c                  (     j                        S r   )exquo)r   r   r   s   r   r    z test_localring.<locals>.<lambda>;   s    1 r   c                  &     j                        S r   )revert)r   r   s   r   r    z test_localring.<locals>.<lambda><   s    !((1+ r   )r   r)   r   r	   r   r*   r
   r+   r,   r   r-   r   r   r   r.   r/   r   r0   s   @@@@r   test_localringr;   (   s   


Aq
!C
AV,A			!A			!A6M6Q3a<<a!e9>>6M6adQh<Q199Q1q\1q5-A#BBBB
9k"
9k"q5AIIa!e$$$$a4!8q==&&r'7'71'='E'Ea'H"JZJZ[\^_J`aeffffA4999
>NO
 56
=-.	!QU)QAaC[1177;Q@	
A!GaQi ! ! !r   c                      t        j                  t        t        d      t        j                  t        t               j	                  t              j	                   j	                  t                     k(  sJ  j	                  t               j	                  j	                  t                    k(  sJ t        t         fd       y )Nr   r   c                  Z     j                  j                  ddt        z   z              S )Nr   )r*   r   GLs   r   r    z!test_conversion.<locals>.<lambda>I   s#    199QYYq!a%y-A1#E r   )r   r   r   r	   r*   r
   r   r>   s   @@r   test_conversionrA   C   s    
AV,A
AA99Q<199QYYq\1555599Q<199QYYq\15555
>EFr   c                     t        j                  t              } | j                  | j	                  d            sJ | j                  | j	                  d            sJ | j                  | j	                  t                    rJ | j                  | j	                  dt        z               rJ t        j                  t        d      } | j                  | j	                  d            sJ | j                  | j	                  d            sJ | j                  | j	                  t                    rJ | j                  | j	                  dt        z               sJ t        j                  t              } | j                  | j	                  d            sJ | j                  | j	                  d            rJ | j                  | j	                  t                    rJ | j                  | j	                  dt        z               rJ y )Nr   r   r   r   )r   r   r   is_unitr*   r   r   s    r   
test_unitsrD   L   s~   
A99QYYq\"""99QYYq\"""yy1&&&yy1q5)***
&)A99QYYq\"""99QYYq\"""yy1&&&99QYYq1u%&&&
A99QYYq\"""yy1&&&yy1&&&yy1q5)****r   N)__doc__sympy.polys.domainsr   r   sympy.polys.polyerrorsr   r   r   	sympy.abcr   r	   sympy.testing.pytestr
   r   r2   r;   rA   rD   r   r   r   <module>rJ      s2    , & U U  ',
L0!6G+r   