Ë
    7^(hH
  ã                   óü   — 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
 d dlmZ d dlmZmZ d dlmZ d d	lmZmZ d d
lmZmZ d„ Zd„ Zd„ Z G d„ de«      Zd„ Z ed«      Zd„ Z edddgi¬«      Zd„ Z d„ Z!d„ Z"y)é    )ÚExpr)ÚMul)ÚIÚInteger)Úsymbols)Ú	conjugate)ÚMatrix)ÚadjointÚDagger)Úimport_module)ÚskipÚwarns_deprecated_sympy)ÚOperatorÚIdentityOperatorc                  ó¨  — t        dd¬«      } t        | «      t        | «      k(  sJ ‚t        t        | z  «      t         t        | «      z  k(  sJ ‚t        dd¬«      }t        |«      |k(  sJ ‚t        d«      }t	        t        |«      t        «      sJ ‚t        d«      }t        |«      |k(  sJ ‚t        dd	¬
«      }t        |«      j                  d	u sJ ‚y )NÚxT)ÚcomplexÚi©ÚrealÚpé   ÚAF©Úcommutative)r   r   r   r   Ú
isinstancer   Úis_commutative)r   r   r   r   s       úe/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sympy/physics/quantum/tests/test_dagger.pyÚtest_scalarsr      sº   € Ü�˜TÔ"€AÜ�!‹9œ	 !›Ò$Ð$Ð$Ü”!�A‘#‹;œ1˜"œY q›\™/Ò)Ð)Ð)ä�˜$Ô€AÜ�!‹9˜Š>Ðˆ>ä�‹€AÜ”f˜Q“i¤Ô+Ð+Ð+ä�‹
€AÜ�!‹9˜Š>Ðˆ>ä� Ô'€AÜ�!‹9×#Ñ# uÑ,Ð,Ñ,ó    c                  ó†   — t        d«      } t        t        | t        z  gddgg«      }t        |«      |j                  k(  sJ ‚y )Nr   é   é   )r   r	   r   r   ÚH)r   Úms     r   Útest_matrixr&       s<   € Ü�‹€AÜ”�A”a‘C�˜1˜a˜&Ð!Ó"€AÜ�!‹9˜Ÿ™ÒÐÑr    c                  óž  — t        d«      } t        | «      | z  t        | «      | z  k(  sJ ‚t        «       5  t        «       }t        | «      | z  |z  t	        t        | «      | «      |z  k(  sJ ‚	 d d d «       t        | «      t        | «      z  t        | «      dz  k(  sJ ‚t        | «      t        «      z  t        | «      k(  sJ ‚y # 1 sw Y   ŒWxY w)NÚOr"   )r   r   r   r   r   )r(   r   s     r   Útest_dagger_mulr)   &   sº   € Ü�‹€AÜ�!‹9�Q‰;œ& ›) A™+Ò%Ð%Ð%Ü	Ó	!ñ 4ÜÓˆÜ�a‹y˜‰{˜1‰}¤¤F¨1£I¨qÓ 1°!Ñ 3Ò3Ð3Ñ3÷4ô �!‹9”V˜A“YÑ¤&¨£)¨Q¡,Ò.Ð.Ð.Ü�!‹9”V˜A“YÑ¤&¨£)Ò+Ð+Ñ+÷	4ð 4ús   µ7CÃCc                   ó   — e Zd Zd„ Zy)ÚFooc                 ó   — t         S ©N)r   )Úselfs    r   Ú_eval_adjointzFoo._eval_adjoint2   s   € Üˆr    N)Ú__name__Ú
__module__Ú__qualname__r/   © r    r   r+   r+   0   s   „ ór    r+   c                  óD   — t        «       } t        | «      }|t        k(  sJ ‚y r-   )r+   r   r   )ÚfÚds     r   Útest_eval_adjointr7   6   s   € Ü‹€AÜˆq‹	€AØ”Š6€M‰6r    Únumpyc                  óð   — t         st        d«       t         j                  ddgddgg«      } | j                  «       j	                  «       j                  «       }t        | «      |k(  j                  «       sJ ‚y )Núnumpy not installed.g      ð?ù               @ù       €      ð¿g       @)Únpr   ÚarrayÚcopyÚ	transposer   r   Úall)ÚaÚadags     r   Útest_numpy_daggerrD   >   sa   € ÝÜÐ#Ô$ä
�‰�3˜�+  s˜|Ð,Ó-€AØ�6‰6‹8×ÑÓ×)Ñ)Ó+€DÜ�1‹I˜Ñ×"Ñ"Ô$Ð$Ñ$r    ÚscipyÚfromlistÚsparse)Úimport_kwargsc                  ól  — t         st        d«       t        st        d«       nt        j                  }  j	                  ddgddgg«      }|j                  «       j                  «       j                  «       }t         j                  j                  t        |«      |z
  j                  «       «      dk(  sJ ‚y )Nr:   zscipy not installed.y      ð?        r;   r<   y       @        g        )r=   r   rE   rG   Ú
csr_matrixr?   r@   r   ÚlinalgÚnormr   Útodense)rG   rB   rC   s      r   Útest_scipy_sparse_daggerrN   J   sŒ   € ÝÜÐ#Ô$ÝÜÐ#Õ$ä—‘ˆà×Ñ˜J¨Ð-°°zÐ/BÐCÓD€AØ�6‰6‹8×ÑÓ×)Ñ)Ó+€DÜ�9‰9�>‰>œ6 !›9 tÑ+×4Ñ4Ó6Ó7¸3Ò>Ð>Ñ>r    c                  óx   — t        dd¬«      } t        | «      }|j                  | fk(  rt        |t        «      sJ ‚y)zŒCheck treatment of unknown objects.
    Objects without adjoint or conjugate/transpose methods
    are sympified and wrapped in dagger.
    r   Fr   N©r   r   Úargsr   r
   ©r   Úresults     r   Útest_unknownrT   W   s9   € ô
 	� Ô'€AÜ�A‹Y€FØ�;‰;˜1˜$Ò¤:¨f´gÔ#>Ð>Ð>Ð#>r    c                  óœ   — t        dd¬«      } t        | «      | k(  sJ ‚t        | d¬«      }|j                  | fk(  rt        |t        «      sJ ‚y)z:Check that evaluate=False returns unevaluated Dagger.
    r   Tr   F)ÚevaluateNrP   rR   s     r   Útest_unevaluatedrW   a   sL   € ô 	�˜$Ô€AÜ�!‹9˜Š>Ðˆ>Ü�A Ô&€FØ�;‰;˜1˜$Ò¤:¨f´gÔ#>Ð>Ð>Ð#>r    N)#Úsympy.core.exprr   Úsympy.core.mulr   Úsympy.core.numbersr   r   Úsympy.core.symbolr   Ú$sympy.functions.elementary.complexesr   Úsympy.matrices.denser	   Úsympy.physics.quantum.daggerr
   r   Úsympy.externalr   Úsympy.testing.pytestr   r   Úsympy.physics.quantum.operatorr   r   r   r&   r)   r+   r7   r=   rD   rE   rN   rT   rW   r3   r    r   ú<module>rb      sx   ðÝ  Ý ß +Ý %Ý :Ý 'ç 8Ý (ß =ß Eò-ò$ò,ôˆ$ô òñ
 �7Ó€ò%ñ 	�g¨j¸8¸*Ð-EÔF€ò
?ò?ó?r    