
    Og                         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 Zd Zd Zd	 Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zy)    )raises)S)ZZQQ)DomainScalar)DomainMatrixc                  H    t        t        d        t        t        d        y )Nc                  4    t        t        d      t              S N   )r   r   r        s/var/www/html/suriana-translation/venv/lib/python3.12/site-packages/sympy/polys/matrices/tests/test_domainscalar.py<lambda>z+test_DomainScalar___new__.<locals>.<lambda>
   s    l2a5"5 r   c                  ,    t        t        d      d      S r   )r   r   r   r   r   r   z+test_DomainScalar___new__.<locals>.<lambda>   s    l2a5!4 r   )r   	TypeErrorr   r   r   test_DomainScalar___new__r   	   s    
956
945r   c                      t        t        d      t              } | j                  t        d      t              }|t        t        d      t              k(  sJ y )Nr      )r   r   newABs     r   test_DomainScalar_newr      s?    RUBA	beRARUB''''r   c                  T    t        t        d      t              } t        |       dv sJ y )Nr   >   mpz(1)1)r   r   reprr   s    r   test_DomainScalar_reprr       s$    RUBA7o%%%r   c                      t        d      } t        j                  |       }|t        t        d      t              k(  sJ y r   )r   r   
from_sympyr   )exprr   s     r   test_DomainScalar_from_sympyr$      s4    Q4D%ARUB''''r   c                  |    t        t        d      t              } | j                         }|j                  r|dk(  sJ y r   )r   r   to_sympy
is_Integer)r   r#   s     r   test_DomainScalar_to_sympyr(      s2    RUBA::<D??tqy((yr   c                      t        t        d      t              } | j                  t              }|t        t        d      t              k(  sJ y r   )r   r   	to_domainr   r   s     r   test_DomainScalar_to_domainr+   %   s8    RUBA	BARUB''''r   c                      t        t        d      t              } | j                  t              }|t        t        d      t              k(  sJ y r   )r   r   
convert_tor   r   s     r   test_DomainScalar_convert_tor.   +   s9    RUBA	RARUB''''r   c                      t        t        d      t              } t        t        d      t              }| j                  |      \  } }| j                  |j                  cxk(  r
t        k(  sJ  J y )Nr      )r   r   r   unifydomainr   s     r   test_DomainScalar_unifyr3   1   sT    RUBARUBA771:DAq88qxx%2%%%%%r   c                      t        t        d      t              t        t        d      t              } | z   t        t        d      t              k(  sJ t        t        fd       y )Nr   r0      c                       dz   S Ng      ?r   r   s   r   r   z'test_DomainScalar_add.<locals>.<lambda>=       a#g r   r   r   r   r   r   r   r   s    @r   test_DomainScalar_addr;   8   sJ    RUBARUBAq5LA++++
9o&r   c                      t        t        d      t              t        t        d      t              } | z
  t        t        d      t              k(  sJ t        t        fd       y )Nr   r0   c                       dz
  S r7   r   r   s   r   r   z'test_DomainScalar_sub.<locals>.<lambda>D   r8   r   r9   r:   s    @r   test_DomainScalar_subr?   ?   sJ    RUBARUBAq5LB,,,,
9o&r   c                     t        t        d      t              t        t        d      t              } t        t        d      t        d      gt        d      t        d      ggdt              }| z  t        t        d      t              k(  sJ |z  |k(  sJ | dz  t        t        d      t              k(  sJ t	        t
        fd       y )Nr   r0   r5   r   )r0   r0   c                       dz  S r7   r   r   s   r   r   z'test_DomainScalar_mul.<locals>.<lambda>N   r8   r   )r   r   r   r   r   r   )r   dmr   s     @r   test_DomainScalar_mulrC   F   s    RUBARUBA	1r!u~1r!u~6	CBq5LA++++r6R<<q5LA++++
9o&r   c                  H   t        t        d      t              t        t        d      t              } | z  t        t        dd      t              k(  sJ t        t        d      t              }|z  t        t        d      t              k(  sJ t        t        fd       y )Nr0   c                       dz  S r7   r   r   s   r   r   z,test_DomainScalar_floordiv.<locals>.<lambda>X   s    a3h r   r9   r   Cr   s     @r   test_DomainScalar_floordivrJ   Q   sz    RVR ARUBA6\"R)R0000RUBA6\"R&"----
9&'r   c                  F   t        t        d      t              t        t        d      t              } | z  t        t        d      t              k(  sJ t        t        d      t              }|z  t        t        d      t              k(  sJ t        t        fd       y )N   r0   r   r   c                       dz  S r7   r   r   s   r   r   z'test_DomainScalar_mod.<locals>.<lambda>b   r8   r   r9   rH   s     @r   test_DomainScalar_modrN   [   sw    RUBARUBAq5LA++++RUBAq5LA++++
9o&r   c                     t        t        d      t              t        t        d      t              } t        |       t        t        dd      t              t        t        d      t              fk(  sJ t        t        d      t              }t        |      t        t        d      t              t        t        d      t              fk(  sJ t	        t
        fd       y )NrL   r0   r   r   c                      t         d      S r7   )divmodr   s   r   r   z*test_DomainScalar_divmod.<locals>.<lambda>l   s    fQn r   )r   r   r   rQ   r   r   rH   s     @r   test_DomainScalar_divmodrR   e   s    RUBARUBA!Q<LAq26RUB8OPPPPRUBA!Q<LA3\"Q%5LMMMM
9,-r   c                      t        t        d      t              dz  } | t        t        d      t              k(  sJ t        t        fd       y )NrE   r0      c                       dz  S r7   r   r   s   r   r   z'test_DomainScalar_pow.<locals>.<lambda>t   s    a#h r   )r   r   r   r   r:   s    @r   test_DomainScalar_powrV   o   s@    RVR A	AARVR((((
9&'r   c                  x    t        t        d      t              } t        t        d      t              }| |k(  sJ y )Nr0   r   r   r   s     r   test_DomainScalar_posrY   w   s/    RUBARUBAB!GOGr   c                  x    t        t        d      t              } t        t        d      t              }|  |k(  sJ y )Nr0   rX   r   s     r   test_DomainScalar_negr\   }   s/    RUBARVR AB!GOGr   c                      t        t        d      t              } | | k(  sJ t        t        d      t              }| |k7  sJ t        t        d      t              }| |k7  sJ dg}| |k7  sJ y )Nr0   rE   r   )r   r   r   )r   r   rI   Ds       r   test_DomainScalar_eqr_      se    RUBA6M6RVR A6M6RUBA6M6	
A6M6r   c                      t        t        d      t              } | j                         dk(  sJ t        t        d      t              }|j                         dk(  sJ y )Nr   Tr   F)r   r   is_zeror   s     r   test_DomainScalar_isZerorb      sJ    RUBA99;$RUBA99;%r   c                      t        t        d      t              } | j                         dk(  sJ t        t        d      t              }|j                         dk(  sJ y )Nr   Tr   F)r   r   is_oner   s     r   test_DomainScalar_isOnere      sJ    RUBA88:RUBA88:r   N)sympy.testing.pytestr   sympy.core.symbolr   sympy.polysr   r   !sympy.polys.matrices.domainscalarr   !sympy.polys.matrices.domainmatrixr   r   r   r    r$   r(   r+   r.   r3   r;   r?   rC   rJ   rN   rR   rV   rY   r\   r_   rb   re   r   r   r   <module>rk      sx    '   : :6
(&
()((&'''('.( r   