U
    ZÊ¹j³  ã                   @   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@t‚ˆ t |  td ¡ksZt‚tˆ  |  td ¡kstt‚ˆ t |  dt ¡ksŽt‚tˆ  dˆ  ks¢t‚ˆ d |  td ¡ks¼t‚ddˆ   |  tdd„ tdƒD ƒƒ¡ksèt‚ˆ d | jksút‚ˆ tk�st‚tt	‡ fdd„ƒ d S )Né
   é   é   c                 s   s   | ]}t | V  qd S ©N)r   )Ú.0Úi© r   új/var/www/html/bwave/python/venv/lib/python3.8/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>   ó    z*test_QuotientRingElement.<locals>.<lambda>)
r   Úold_poly_ringr   ÚconvertÚAssertionErrorÚ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sFt‚|t  t¡t  t¡ td d ¡ kspt‚|t  t¡ks‚t‚| d¡t t |  ksžt‚d|  td |  ks¶t‚| tdƒt¡d|  ksÒt‚| | t¡|¡| t¡ksòt‚| t¡}t  t¡ t¡}d|  |d |  k�s&t‚d|  |d |  k�s@t‚| |¡tk�sTt‚tt	dd„ ƒ t jtdd�}| t¡} | d¡|  ||   d¡k�sœt‚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   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   