a
    kh                     @   sX   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d Zd	d
 ZdS )zTests for quotient rings.    )ZZ)QQ)xy)NotReversible)raisesc                     s  t ttd g } | t   d  | td t ks@J  t | td ksZJ t  | td kstJ  t | dt ksJ t  d  ksJ  d | td ksJ dd   | tdd tdD ksJ  d | jksJ  tksJ tt fdd d S )N
         c                 s   s   | ]}t | V  qd S N)r   ).0i r   Y/var/www/auris/lib/python3.9/site-packages/sympy/polys/domains/tests/test_quotientring.py	<genexpr>       z+test_QuotientRingElement.<locals>.<genexpr>c                      s   d  S )Nr	   r   r   Xr   r   <lambda>   r   z*test_QuotientRingElement.<locals>.<lambda>)	r   old_poly_ringr   convertsumrangeZzeror   r   )Rr   r   r   test_QuotientRingElement   s    
",r   c                  C   s  t ttd d } t t|  }|t ttd d g ksFJ |t tt ttd d  kspJ |t tksJ |dt t |  ksJ d|  td |  ksJ |tdtd|  ksJ ||t||tksJ |t}t tt}d|  |d |  ks&J d|  |d |  ks@J ||tksTJ ttdd  t jtdd}|t} |d|  ||  dksJ d S )Nr
   r	   c                   S   s   t tt ttt S r   )r   r   r   r   idealr   r   r   r   r   0   r   z#test_QuotientRing.<locals>.<lambda>Zilex)order)	r   r   r   r   r   r   Zto_sympyr   
ValueError)Ir   r   Yr   r   r   test_QuotientRing   s$     * 

r!   N)__doc__Zsympy.polys.domains.integerringr   Z!sympy.polys.domains.rationalfieldr   Z	sympy.abcr   r   Zsympy.polys.polyerrorsr   Zsympy.testing.pytestr   r   r!   r   r   r   r   <module>   s   