
    g                         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 Zd Zi fdZd Zd	 Zd
 Zd Zd Zd Zd Zd Zd Zd ZdS )    )CompoundVariableCondVariableallcombinations)core)abcwxyzc                 >    t          | t                    o| j        dv S )N)AddMulCAddCMul
isinstancer   opxs    X/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/unify/tests/test_unify.pyis_associativer   	   s    a""O0N(NO    c                 >    t          | t                    o| j        dv S )N)r   r   r   r   s    r   is_commutativer      s    a""A0@(@Ar   c                 H    t          j        | ||t          t                    S )N)sr   r   )r   unifyr   r   )r   r	   r   s      r   r   r      s&    :aa)79 9 9 9r   c                     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    sJ t          t          t          t          i                     i gk    sJ t          t          t          t          ft
          t          fi                     t          t
          t          t          igk    sJ t          t          t          t          t          fi                     t          t          t          figk    sJ t          t          t          t          ft          t          fi                     g k    sJ 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    sJ d S )N
      )	listr   r   r   wyzr	   r
    r   r   
test_basicr&      s   aB  aVH,,,,aQG$$%%++++aB  aVH,,,,aB  RD((((q!fq!fb))**1a|n<<<<a!Q$$%%1q!f+6666q!fq!fb))**b0000q!fq!fb))**R////q1a&kA1v;3344!Q1FFFFFFr   c                     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    sJ d S )Nr   r   r       )r!   r   Cr   r	   r
   r   r#   r%   r   r   test_opsr+      s    a!Aw''51Qq'):):B??@@1QZL   a%1566%!Aa8I8I2NNOO5%!A&'( ( ( ( ( (r   c                     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    sJ d S )Nr   r    r)      r    r)   r.   r(   r.   )r*   r   r#   tupler   c1c2s     r   test_associativer4   %   s    	
5'		B	
51Q%Br2r""##Aq!E62B2B(C*+Quf-=-=q!)D(F F F F F F Fr   c                  f   t          dd          } t          dt          t          f          }t          t	          | |i                     }t          dt          t          dd          i|v sJ t          dt          t          dd          i|v s"t          dt          t          dd          i|v sJ d S d S )Nr   r-   r    r/   r)   )r    r.   r.   r    )r*   r   r#   r!   r   )r2   r3   results      r   test_commutativer8   +   s    	
67		B	
6Aa5		B%B##$$F1a''(F22221a''(F221a''(F2222 3222r   c                      t          t          dt          t          fd                    dt          t          ffdt          t          ffhk    sJ d S )Nr-   Tr(   r.   r    r/   setr   r   r	   r%   r   r   _test_combinations_assocr@   3   sU    w1t4455
1a&	!NQF#;<= = = = = =r   c                  j    t          t          dt          t          fd                     h dk    sJ d S )Nr-   >   )r)   r6   r   r	   )r;   r(   rD   )r/   r=   rD   )r6   rC   rD   r<   rD   r:   rD   r>   r%   r   r   _test_combinations_commrJ   7   sS    w1t4455	I 	I 	II I I I I Ir   c                  R    t          t          ddd                    ddhk    sJ d S )Nr(   commutative)r=   rC   rM   )rM   )rC   r=   )r?   r   r%   r   r   test_allcombinationsrN   =   sF    ue];;<<	#%?@A A A A A Ar   c            	         t          dt          t          f          } t          dt          t          f          }t          |           rt          |          sJ t          t          t          | |i                               dk    sJ d S )Nr   r)   )	r   r   r	   r   r#   r   lenr!   r   r1   s     r   test_commutativityrQ   B   s|    	&1a&	!	!B	&1a&	!	!B"4."4"4444tE"b"%%&&''1,,,,,,r   c                     t          dd          } t          d          }t          dd           }t          dd           }t          d||f          }t          t	          | |i                     |d|d	igk    sJ t          dd
           }t          d||f          }t          t	          | |i                     g k    sJ d S )Nr   r(   r   r#   c                     | dz  dk    S )Nr)   r   r%   r   s    r   <lambda>z#test_CondVariable.<locals>.<lambda>L   s    AEQJ r   r$   c                     | dk    S Nr.   r%   rT   s    r   rU   z#test_CondVariable.<locals>.<lambda>M   
    AE r   r    r)   c                     | dk    S rW   r%   rT   s    r   rU   z#test_CondVariable.<locals>.<lambda>R   rX   r   )r*   r   r   r!   r   )exprr   r#   r$   patterns        r   test_CondVariabler\   I   s    VVDAS..//AS//**AAGdGR(())Aq\N    	S//**AAGdGR(())R//////r   c                      t          t          t          d          d                    t          d          dik    sJ d S )Nr   foo)nextr   r   r%   r   r   test_defaultdictr`   W   s<    hsmmU++,,#0FFFFFFFr   N)sympy.unify.corer   r   r   r   sympy.unifyr   r   r	   r
   mapr"   r   r#   r$   r*   r   r   r   r&   r+   r4   r8   r@   rJ   rN   rQ   r\   r`   r%   r   r   <module>rd      sR   N N N N N N N N N N N N      !A
#h

!AaP P PB B B  9 9 9 9
G 
G 
G( ( (F F F4 4 4= = =I I IA A A
- - -0 0 0G G G G Gr   