
    \h                     \    S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	J
r
  S rS rS rS	 rg
)    )Tuplesymbols)MatrixTr)raiseswarns_deprecated_sympyc                    ^ [        S5      u  pp#n[        SSS9u  mpVn[        X-   5      X-   :X  d   e[        TU-   5      [        T5      [        U5      -   :X  d   e[        Xg-  T-  U-  5      R                  S   R                  XgTU4:X  d   e[        X-  X#-  -   5      X-  X#-  -   :X  d   e[        U T-  5      U [        T5      -  :X  d   e[        U T-  U-  U-  5      X-  [        TU-  5      -  :X  d   e[        [        T5      [        5      (       d   e[        [	        X5      5      X-  :X  d   e[        [        [	        TU 5      5      [        5      (       d   e[        SS/SS//5      n[        U5      S:X  d   e[        T5      n	U	R                  S   [        5       :X  d   e[        TS5      n	U	R                  S   [        S5      :X  d   e[        TS/5      n	U	R                  S   [        S5      :X  d   e[        T/ S	Q5      n	U	R                  S   [        SSS5      :X  d   e[        TS5      n	U	R                  S   [        S5      :X  d   e[        TS
5      n	U	R                  S   [        SS5      :X  d   e[        TU-   S/5      n	U	R                  S   R                  S   [        S5      :X  a)  U	R                  S   R                  S   [        S5      :X  d   e[        U T-  SS/5      n	U	R                  S   R                  S   [        SS5      :X  d   e " S S5      n
[        U
" 5       5      S:X  d   e[        [        S 5        [        [        U4S j5        g )Nz	a b c d YA B C DFcommutativer            )r   r   r   )r   r   c                       \ rS rSrS rSrg)test_trace_new.<locals>.FooC   c                     g)Nr    )selfs    ^/var/www/auris/envauris/lib/python3.13/site-packages/sympy/physics/quantum/tests/test_trace.pytrace!test_trace_new.<locals>.Foo.traceD   s        r   N)__name__
__module____qualname____firstlineno__r   __static_attributes__r   r   r   Foor   C   s    	r   r!   c                      [        5       $ )Nr   r   r   r   <lambda> test_trace_new.<locals>.<lambda>J   s    rtr   c                     > [        T SS5      $ )Nr   r   r   )As   r   r#   r$   K   s    r!Q{r   )	r   r   args
isinstancepowr   r   r	   
ValueError)abcdYBCDMtr!   r&   s              @r   test_trace_newr5      s%   K(MA!6JAqQae9a!e911%%% ac!eAg;A##a|333 qsn!#!#...ac7a1gac!eAg;!#b1g+%%% beR     c!i=AD   bQmR(((( 	AA Aa5A:: 	1A66!9 	1aA66!9a    	1qc
A66!9a   
1iA66!9aA&&& 	1q
A66!9a   
1fA66!9a### 	AEQCA66!9>>!a(QVVAY^^A->%(-JJJ
1Q3AA66!9>>!a+++  ce9>> :|$
:*+r   c                  :    [        S5      u  pp#[        SSS9u  pEpgg )Nza b c dr   Fr   r   )r+   r,   r-   r.   r&   r0   r1   r2   s           r   test_trace_doitr7   N   s"    #JA!6JA!Qr   c                  |   [        SSS9u  pp#pEn[        X-  U-  U-  U-  U-  U-  5      nUR                  S5      R                  S   R                  XX#XEU4:X  d   eUR                  S5      R                  S   R                  XVXX#U4:X  d   eUR                  S5      R                  S   R                  X4XVXU4:X  d   eUR                  S5      R                  S   R                  XX4XVU 4:X  d   eUR                  S5      R                  S   R                  UR                  S	5      R                  S   R                  :X  d   eUR                  S
5      R                  S   R                  XX4XVU 4:X  d   eUR                  S5      R                  S   R                  X4XVXU4:X  d   eUR                  S5      R                  S   R                  XVXX#U4:X  d   eUR                  S5      R                  S   R                  UR                  S
5      R                  S   R                  :X  d   e[        X-   X-  -  U-  U-  5      nUR                  S5      R                  S   R                  X#X-   US-  4:X  d   e[        X-  5      nUR                  S	5      n	[	        U5      [	        U	5      :w  a  X:X  d   eg )NzA B C D E F GFr   r   r            r   i)r   r   permuter'   id)
r&   r0   r1   r2   EFGr4   t1t2s
             r   test_permuterF   U   s   !/uEA!a
13q5719Q;q=A99Q<Q$$qQ1(====99Q<Q$$qQ1(====99Q<Q$$qQ1(====99Q<Q$$qQ1(====99Q<Q$$		!(9(9!(<(A(AAAA99R=a %%!aA)>>>>99R=a %%!aA)>>>>99R=a %%!aA)>>>>99R=a %%2););A)>)C)CCCC
AEAC=?1A99Q<Q$$A(????	ACB	ABb6RV((r   c                  X    [        5          SSKJn   S S S 5        g ! , (       d  f       g = f)Nr   r   )r
   sympy.core.tracer   r   s    r   test_deprecated_core_tracerI   k   s    		!' 
"	!	!s   
)N)sympy.core.containersr   sympy.core.symbolr   sympy.matrices.denser   sympy.physics.quantum.tracer   sympy.testing.pytestr	   r
   r5   r7   rF   rI   r   r   r   <module>rO      s*    ' % ' * ?C,L7),(r   