a
    lh                     @   s   d dl mZmZmZmZ d dlmZ d\ZZZ	e
ed\ZZZZeZdd Zdd Zi fd	d
Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd ZdS )     )CompoundVariableCondVariableallcombinations)core)abcZwxyzc                 C   s   t | to| jdv S )N)AddMulCAddCMul
isinstancer   opx r   J/var/www/auris/lib/python3.9/site-packages/sympy/unify/tests/test_unify.pyis_associative	   s    r   c                 C   s   t | to| jdv S )N)r   r   r   r   r   r   r   is_commutative   s    r   c                 C   s   t j| ||ttdS )N)sr   r   )r   unifyr   r   )r   r   r   r   r   r   r      s    r   c                   C   s<  t ttti ttigksJ t ttttdig ks:J t tdti tdigksXJ t ttti i gksrJ t tttfttfi ttttigksJ t ttttfi tttfigksJ t tttfttfi g ksJ t tttfttfi g ksJ t ttttfftttffi ttttigks8J d S )N
      )	listr   r   r   wyzr   r	   r   r   r   r   
test_basic   s    *& "r   c                   C   s   t ttdtttftdtttfi ttttigks:J t ttdtddttftdtttfi ttddttigksJ d S )Nr
   r   r      )r   r   Cr   r   r	   r   r   r   r   r   r   test_ops   s    &,r#   c                  C   sT   t dd} t dttf}tt| |i tdtt dditt ddtdifksPJ d S )Nr
   r   r!      r   r!   r%   r    r%   )r"   r   r   tupler   c1c2r   r   r   test_associative%   s
    
r+   c                  C   sv   t dd} t dttf}tt| |i }tdtt ddi|v sBJ tdtt ddi|v srtdtt ddi|v srJ d S )Nr   r$   r   r&   r!   )r   r%   r%   r   )r"   r   r   r   r   )r)   r*   resultr   r   r   test_commutative+   s    
r.   c                   C   s4   t tdttfddttffdttffhks0J d S )Nr$   Tr    r%   r   r&   setr   r   r   r   r   r   r   _test_combinations_assoc3   s    r5   c                   C   s$   t tdttfd h dks J d S )Nr$   >   ))r!   r,   r   r   )r1   r7   )r/   r7   ))r&   r2   r7   ))r,   r6   r7   ))r0   r    r7   r3   r   r   r   r   _test_combinations_comm7   s    r8   c                   C   s    t tdddddhksJ d S )Nr    Zcommutative)r2   r6   r9   )r9   )r6   r2   )r4   r   r   r   r   r   test_allcombinations=   s    r:   c                  C   sP   t dttf} t dttf}t| r,t|s0J ttt| |i dksLJ d S )Nr   r!   )	r   r   r   r   r   r   lenr   r   r(   r   r   r   test_commutativityB   s    r<   c                  C   s   t dd} td}tddd }tddd }t d||f}tt| |i |d	|d
igks^J tddd }t d||f}tt| |i g ksJ d S )Nr   r    r   r   c                 S   s   | d dkS )Nr!   r   r   r   r   r   r   <lambda>L       z#test_CondVariable.<locals>.<lambda>r   c                 S   s   | dkS Nr%   r   r=   r   r   r   r>   M   r?   r   r!   c                 S   s   | dkS r@   r   r=   r   r   r   r>   R   r?   )r"   r   r   r   r   )exprr   r   r   patternr   r   r   test_CondVariableI   s    
rC   c                   C   s&   t ttddtddiks"J d S )Nr   Zfoo)nextr   r   r   r   r   r   test_defaultdictW   s    rE   N)Zsympy.unify.corer   r   r   r   Zsympy.unifyr   r   r   r	   mapr   r   r   r   r"   r   r   r   r   r#   r+   r.   r5   r8   r:   r<   rC   rE   r   r   r   r   <module>   s"   
