o
    GZh                     @   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s-J t  | td ks:J  t | dt ksGJ t  d  ksQJ  d | td ks^J dd   | tdd tdD kstJ  d | jks}J  tksJ tt fdd d S )N
         c                 s   s    | ]}t | V  qd S N)r   ).0i r   Z/var/www/auris/lib/python3.10/site-packages/sympy/polys/domains/tests/test_quotientring.py	<genexpr>   s    z+test_QuotientRingElement.<locals>.<genexpr>c                      s   d  S )Nr	   r   r   Xr   r   <lambda>   s    z*test_QuotientRingElement.<locals>.<lambda>)	r   old_poly_ringr   convertsumrange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s#J |t tt ttd d  ks8J |t tksAJ |dt t |  ksOJ d|  td |  ks[J |tdtd|  ksiJ ||t||tksyJ |t}t tt}d|  |d |  ksJ d|  |d |  ksJ ||tksJ 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   s    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    