
    \h0                         S SK JrJrJrJrJr  S SKJrJrJ	r	J
r
JrJr  S SKJr  S SKJr  \" S5      rS rS rS rS	 rS
 rS rS rS rg)    )labellerrender_labelMzCreateOneQubitGateCreateCGate)CNOTHSWAPCGateST)import_module)skip
matplotlibc                  N    [        S5      S:X  d   e[        SSS05      S:X  d   eg )Nq0z$\left|q0\right\rangle$0z,$\left|q0\right\rangle=\left|0\right\rangle$)r        d/var/www/auris/envauris/lib/python3.13/site-packages/sympy/physics/quantum/tests/test_circuitplot.pytest_render_labelr   	   s0    !;;;;tSk*.]]]]r   c                  8    [        [        S5      5      S:X  d   eg )Nr   zMz(0))strr   r   r   r   test_Mzr      s    r!u:   r   c                  H    [        S5      n [        U " S5      5      S:X  d   eg )NQr   zQ(0))r   r   Qgates    r   test_create1r      s"    s#EuQx=F"""r   c                  L    [        S5      n [        U " S/S5      5      S:X  d   eg )Nr      r   zC((1),Q(0)))r   r   r   s    r   test_createcr"      s'    EuaS|---r   c                  R    [        S5      SS/:X  d   e[        SS5      / SQ:X  d   eg)zTest the labeller utility   q_1q_0   jj_2j_1j_0N)r   r   r   r   test_labellerr-      s-    A;5%.(((Ac?3333r   c                  v   [         (       d  [        S5        OSSKJn   W " [	        SS5      S[        S5      S9nUR                  S:X  d   eUR                  S:X  d   eUR                  SS/:X  d   eU " [	        SS5      S5      nUR                  S:X  d   eUR                  S:X  d   eUR                  / :X  d   eg	)
z{Test a simple cnot circuit. Right now this only makes sure the code doesn't
raise an exception, and some simple properties
matplotlib not installedr   CircuitPlotr!   r$   labelsr%   r&   N)	mplr   !sympy.physics.quantum.circuitplotr1   r   r   ngatesnqubitsr3   r1   cs     r   	test_cnotr:      s     3'(AD1Iax{3A88q==99>>88u~%%%D1Ia A88q==99>>88r>>r   c                      [         (       d  [        S5        OSSKJn   W " [	        SS5      [        S5      -  S[        S5      S9nUR                  S:X  d   eUR                  S:X  d   eUR                  SS/:X  d   eg )	Nr/   r   r0   r!   r$   r2   r%   r&   )
r4   r   r5   r1   r   r	   r   r6   r7   r3   r8   s     r   test_ex1r<   0   si    3'(AD1IadN1HQK8A88q==99>>88u~%%%r   c            	         [         (       d  [        S5        OSSKJn   W " [	        SS5      [        S5      -  [        S[        S5      5      -  [        S5      -  [        S[        S5      5      -  [        S[        S5      5      -  [        S5      -  S[        SS	5      S
9nUR                  S:X  d   eUR                  S:X  d   eUR                  / SQ:X  d   eg )Nr/   r   r0   r$   )r   r!   )r!   r'   r(   r2      r)   )r4   r   r5   r1   r
   r	   r   r   r   r   r6   r7   r3   r8   s     r   test_ex4r?   ;   s    3'(AD1IadNE$qt$44ad:5ad;KK4!%&&'d++,HQsO	EA88q==99>>88,,,,r   N)r5   r   r   r   r   r   sympy.physics.quantum.gater   r	   r
   r   r   r   sympy.externalr   sympy.testing.pytestr   r4   r   r   r   r"   r-   r:   r<   r?   r   r   r   <module>rC      sN     A A ( %L!^!#.4
&	&
-r   