
    gO                     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    i/var/www/html/ai-engine/env/lib/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 dz  dz   z  |                    t          t          dz  dz   z            k    s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>   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6666Q3a<<<<a!e9A66661q>QYYqAqD1H~666666q5AIIa!e$$$$$$
,,,
9kkkk"""
9kkkk"""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AaC 0 0#66>>>A,,aVQW==qAAaVKKKKKKr   c            	      8    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 dz  dz   z  dz   z                      t          t          dz  dz   z  dt          z   z            k    sJ t          t          fd           t          t          fd           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                      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                  p                                              t          t          z                       S r   )r-   r*   r   r	   )r1   r   s   r   r    z test_localring.<locals>.<lambda>:   s'    1#7#7AaC8H8H##N#N r   c                  0                                    S r   )exquo)r   r   r   s   r   r    z test_localring.<locals>.<lambda>;   s    1 r   c                  .                                    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6666Q3a<<<<a!e9>>>>6666adQh<Q199Q1q\1q5-A#B#BBBBB
9kkkk"""
9kkkk"""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
 5 5 5 5 5 5666
=-----...	!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>I   s)    199QYYq!a%y-A-A1#E#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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_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      s    , , & & & & & & & & U U U U U U U U U U         ' ' ' ' ' ', , ,
L L L0! ! !6G G G+ + + + +r   