
    g                         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dS )    )raises)S)ZZQQ)DomainScalar)DomainMatrixc                  ^    t          t          d            t          t          d            d S )Nc                  F    t          t          d          t                    S N   )r   r   r        h/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/polys/matrices/tests/test_domainscalar.py<lambda>z+test_DomainScalar___new__.<locals>.<lambda>
   s    l2a55"55 r   c                  <    t          t          d          d          S r   )r   r   r   r   r   r   z+test_DomainScalar___new__.<locals>.<lambda>   s    l2a55!44 r   )r   	TypeErrorr   r   r   test_DomainScalar___new__r   	   s0    
955666
94455555r   c                      t          t          d          t                    } |                     t          d          t                    }|t          t          d          t                    k    sJ d S )Nr      )r   r   newABs     r   test_DomainScalar_newr      sW    RUUBA	beeRARUUB''''''''r   c                  p    t          t          d          t                    } t          |           dv sJ d S )Nr   >   mpz(1)1)r   r   reprr   s    r   test_DomainScalar_reprr       s4    RUUBA77o%%%%%%r   c                      t          d          } t          j        |           }|t          t          d          t                    k    sJ d S r   )r   r   
from_sympyr   )exprr   s     r   test_DomainScalar_from_sympyr$      sD    Q44D%%ARUUB''''''''r   c                      t          t          d          t                    } |                                 }|j        r|dk    sJ d S r   )r   r   to_sympy
is_Integer)r   r#   s     r   test_DomainScalar_to_sympyr(      s<    RUUBA::<<D?(tqyyyyyyr   c                      t          t          d          t                    } |                     t                    }|t          t          d          t                    k    sJ d S r   )r   r   	to_domainr   r   s     r   test_DomainScalar_to_domainr+   %   sM    RUUBA	BARUUB''''''''r   c                      t          t          d          t                    } |                     t                    }|t          t          d          t                    k    sJ d S r   )r   r   
convert_tor   r   s     r   test_DomainScalar_convert_tor.   +   sO    RUUBA	RARUUB''''''''r   c                      t          t          d          t                    } t          t          d          t                    }|                     |          \  } }| j        |j        cxk    rt          k    sn J d S )Nr      )r   r   r   unifydomainr   s     r   test_DomainScalar_unifyr3   1   sn    RUUBARUUBA771::DAq8qx%%%%2%%%%%%%%r   c                     t          t          d          t                    t          t          d          t                    } | z   t          t          d          t                    k    sJ t          t          fd           d S )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   sn    RUUBARUUBAq5LA++++++
9oooo&&&&&r   c                     t          t          d          t                    t          t          d          t                    } | z
  t          t          d          t                    k    sJ t          t          fd           d S )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?   ?   sn    RUUBARUUBAq5LB,,,,,,
9oooo&&&&&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           d S )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UUBARUUBA	1r!uu~1r!uu~6	C	CBq5LA++++++r6R<<<<q5LA++++++
9oooo&&&&&r   c                     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           d S )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   s    RVVR  ARUUBA6\"R))R000000RUUBA6\"R&&"------
9&&&&'''''r   c                     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           d S )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   [   s    RUUBARUUBAq5LA++++++RUUBAq5LA++++++
9oooo&&&&&r   c                  f   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           d S )NrL   r0   r   r   c                  $    t           d          S r7   )divmodr   s   r   r   z*test_DomainScalar_divmod.<locals>.<lambda>l   s    fQnn r   )r   r   r   rQ   r   r   rH   s     @r   test_DomainScalar_divmodrR   e   s    RUUBARUUBA!Q<<LAq266RUUB8O8OPPPPPRUUBA!Q<<LA33\"Q%%5L5LMMMMM
9,,,,-----r   c                      t          t          d          t                    dz  } | t          t          d          t                    k    sJ t          t          fd           d S )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   sb    RVVR  A	AARVVR((((((
9&&&&'''''r   c                      t          t          d          t                    } t          t          d          t                    }| 
 |k    sJ d S )Nr0   r   r   r   s     r   test_DomainScalar_posrY   w   s?    RUUBARUUBAB!GGGGGGr   c                      t          t          d          t                    } t          t          d          t                    }|  |k    sJ d S )Nr0   rX   r   s     r   test_DomainScalar_negr\   }   s?    RUUBARVVR  AB!GGGGGGr   c                     t          t          d          t                    } | | k    sJ t          t          d          t                    }| |k    sJ t          t          d          t                    }| |k    sJ dg}| |k    sJ d S )Nr0   rE   r   )r   r   r   )r   r   rI   Ds       r   test_DomainScalar_eqr_      s    RUUBA6666RVVR  A6666RUUBA6666	
A666666r   c                      t          t          d          t                    } |                                 dk    sJ t          t          d          t                    }|                                dk    sJ d S )Nr   Tr   F)r   r   is_zeror   s     r   test_DomainScalar_isZerorb      sd    RUUBA99;;$RUUBA99;;%r   c                      t          t          d          t                    } |                                 dk    sJ t          t          d          t                    }|                                dk    sJ d S )Nr   Tr   F)r   r   is_oner   s     r   test_DomainScalar_isOnere      sd    RUUBA88::RUUB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      s   ' ' ' ' ' '               : : : : : : : : : : : :6 6 6
( ( (& & &
( ( () ) )( ( (( ( (& & &' ' '' ' '' ' '( ( (' ' '. . .( ( (               r   