
    Rie                     h    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dS )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          } |                     d          dk    sJ d S )Nlexilexorder)      ))r   ))r   old_poly_ringr   r	   r   Rs    Mlib/python3.11/site-packages/sympy/polys/domains/tests/test_polynomialring.pytest_build_orderr      sG    
Auaj61+%>???A776??m++++++    c                     t          j        t          t                    } t          j        t          t                    }|                    t                    |                    t                    t          |v sJ dt          z  |vsJ ddt          z   z  |vsJ |v sJ j        |k    sJ dz  dz   z  |                    t          t          dz  dz   z            k    sJ t          z  z  cxk    r5|                    t          t          z            cxk    rt          z  k    sn J t          z   z   cxk    r5|                    t          t          z             cxk    rt          z   k    sn J t          z
  z
  cxk    r5|                    t          t          z
            cxk    rt          z
  k    sn J dz   |                    t          dz             k    sJ t          t          fd           t          t          fd           t          t          fd           dz  z  k    sJ |	                    t          j        t          t                                        t                    t          j        t          t                              k    sJ |                    |                     t                    |           k    sJ |                    |                     t                    t          z  |           J |                    |                    g|j                  d          gk    sJ d S )Nr      c                       z  S N XYs   r   <lambda>z!test_globalring.<locals>.<lambda>        ! r   c                      t            z  S r   r   r    s   r   r!   z!test_globalring.<locals>.<lambda>!       ! r   c                       t           z  S r   r	   r   s   r   r!   z!test_globalring.<locals>.<lambda>"       ! r   )r   old_frac_fieldr   r	   r   convertringr
   r   from_GlobalPolynomialRingr   from_FractionField_sdm_to_vector_vector_to_sdmr   Qxyr   r   r    s     @@r   test_globalringr4      s   

Aq
!
!C
AA			!A			!A6666Q3a<<<<a!e9A66666Q;;;;1q>QYYqAqD1H~666666q5AE6666QYYq1u--6666Q666666q5AE6666QYYq1u--6666Q666666q5AE6666QYYq1u--6666Q666666q5AIIa!e$$$$$$
,,,
,,,
,,,a4!8q====&&r'71'='='E'Ea'H'H"JZ[\^_J`J`aaefffffA449999Aq 0#66>>>A,,aVQW==qAAaVKKKKKKr   c            	          t          j        t          t                     t          j        t          t          d                              t                                        t                    t          v sJ dt          z  vsJ ddt          z   z  v sJ v sJ j        k    sJ dz  dz   z  dz   z                      t          t          dz  dz   z  dt          z   z            k    sJ t          z  z  k    sJ t          t          fd           t          t          fd           t          t          fd           t          z   z   cxk    r5                    t          t          z             cxk    rt          z   k    sn J t          z
  z
  cxk    r5                    t          t          z
            cxk    rt          z
  k    sn J dz                       t          dz             k    sJ dz  z  k    sJ 	                    t          j        t          t                                        t                    t          j        t          t                              k    sJ                                          t                               k    sJ t          t           fd           t          t          fd	           t          t          fd
                                                   dz   z  dz  z   z  gj                  d          dz  z   z  dz   z  gk    sJ d S )Nr   r   r   r   c                       z  S r   r   r   s   r   r!   z test_localring.<locals>.<lambda>9   r"   r   c                      t            z  S r   r$   r%   s   r   r!   z test_localring.<locals>.<lambda>:   r&   r   c                       t           z  S r   r(   r)   s   r   r!   z test_localring.<locals>.<lambda>;   r*   r   c                  p                                              t                    t          z             S r   )r/   r,   r   r	   )r3   r   s   r   r!   z test_localring.<locals>.<lambda>C   s&    1#7#7Aq8H##N#N r   c                       z  S r   r   r   s   r   r!   z test_localring.<locals>.<lambda>D   r"   r   c                  ,                                      S r   )invertr)   s   r   r!   z test_localring.<locals>.<lambda>E   s    !((** r   )r   r+   r   r	   r   r,   r-   r
   r   r.   r   r/   r   r   r0   r1   r   r2   s   @@@@r   test_localringr=   ,   s]   

Aq
!
!C
AV,,,A			!A			!A6666Q3a<<<<a!e9>>>>66666Q;;;;adQh<Q199Q1q\1q5-A#B#BBBBBQ3!A#::::
,,,
,,,
,,,q5AE6666QYYq1u--6666Q666666q5AE6666QYYq1u--6666Q666666q5AIIa!e$$$$$$a4!8q====&&r'71'='='E'Ea'H'H"JZ[\^_J`J`aaefffffA449999
>NNNNNOOO
,,,
=,,,,---	!QU)QAaC[117;;Q@ @	
A!GaQi ! ! ! ! ! !r   c                      t          j        t          t          d          t          j        t          t                                         t                                                             t                               k    sJ                      t                                                             t                              k    sJ t          t           fd           d S )Nr   r   c                  l                                               ddt          z   z                      S )Nr   )r,   r   GLs   r   r!   z!test_conversion.<locals>.<lambda>R   s)    199QYYq!a%y-A-A1#E#E r   )r   r   r   r	   r,   r
   r   r@   s   @@r   test_conversionrC   L   s    
AV,,,A
AA99Q<<199QYYq\\155555599Q<<199QYYq\\1555555
>EEEEEFFFFFr   c                     t          j        t                    } |                     |                     d                    sJ |                     |                     d                    sJ |                     |                     t                              rJ |                     |                     dt          z                       rJ t          j        t          d          } |                     |                     d                    sJ |                     |                     d                    sJ |                     |                     t                              rJ |                     |                     dt          z                       sJ t          j        t                    } |                     |                     d                    sJ |                     |                     d                    rJ |                     |                     t                              rJ |                     |                     dt          z                       rJ d S )Nr   r   r   r   )r   r   r   is_unitr,   r   r   s    r   
test_unitsrF   U   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   r4   r=   rC   rF   r   r   r   <module>rL      s    , , & & & & & & & & U U U U U U U U U U         ' ' ' ' ' ', , ,
L L L8! ! !@G G G+ + + + +r   