U
    ˜9%eí  ã                   @   s|   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
 edƒZedƒZdd	„ Zd
d„ Zdd„ Zdd„ Zdd„ ZdS )é    )ÚInteger)ÚSymbol)ÚQExprÚ_qsympify_sequence)ÚHilbertSpace)ÚTupleÚxÚyc                  C   sž   t dƒ} | jdkst‚| jtƒ ks&t‚| jdks4t‚t ddƒ} | jtdƒtdƒfksXt‚t  tƒ tdƒtdƒ¡} | jtdƒtdƒfksŠt‚| jtƒ ksšt‚d S )Nr   )r   Fé   )r   ÚlabelÚAssertionErrorZhilbert_spacer   Úis_commutativer   Ú_new_rawargs)Úq© r   úe/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/sympy/physics/quantum/tests/test_qexpr.pyÚtest_qexpr_new   s    
r   c                  C   sj   t tƒ} t tƒ}| jdkst‚|jdks,t‚| | ||  ks@t‚t  tdƒtdƒtƒ ¡}|jdksft‚d S )NFr   r
   )r   r   r	   r   r   r   r   r   )Úq1Úq2r   r   r   r   Útest_qexpr_commutative   s    r   c                  C   s<   t tƒ} | j ¡ jdkst‚t dƒ}|j ¡ jdks8t‚d S )NFr   )r   r   Zfree_symbolsÚpopr   r   )r   r   r   r   r   Ú#test_qexpr_commutative_free_symbols#   s    r   c                  C   sH   t ttƒ} |  tt¡t ttƒks$t‚|  tdtdi¡t ddƒksDt‚d S )Nr
   é   )r   r   r	   Úsubsr   )r   r   r   r   Útest_qexpr_subs*   s    
r   c                	   C   s~   t ddgddggƒtddƒtddƒfks,t‚t dddddggdgdfƒtddtddtdƒƒdƒdfksjt‚t dƒdkszt‚d S )Nr
   r   é   é   )r
   )r   r   r   r   r   r   r   Útest_qsympify0   s
    ,ÿr   N)Zsympy.core.numbersr   Zsympy.core.symbolr   Zsympy.physics.quantum.qexprr   r   Zsympy.physics.quantum.hilbertr   Zsympy.core.containersr   r   r	   r   r   r   r   r   r   r   r   r   Ú<module>   s   
