Ë
    7^(h‹  ã                   óº   — 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
 d dlmZmZmZ d dlmZmZmZmZmZmZ d dlmZ d d	lmZ d d
lmZ d dlmZ d„ Zd„ Zd„ Z y)é    )ÚIÚpi)ÚSymbol)Úexp)Úsqrt)ÚMatrix)ÚQFTÚIQFTÚRkGate)ÚZGateÚSwapGateÚHadamardGateÚCGateÚ	PhaseGateÚTGate)ÚQubit)Úqapply)Ú	represent)Úsignc                  óÜ  — t        d«      } t        d| «      j                  | k(  sJ ‚t        d| «      j                  dk(  sJ ‚t        dd«      t	        d«      k(  sJ ‚t        dd«      t        d«      k(  sJ ‚t        dd«      t        d«      k(  sJ ‚t        t        d| «      d¬«      t        ddgdt        t        | «      dz  t        z  t        z  dt        | «      z  z  «      gg«      k(  sJ ‚y )NÚxé   ©r   é   é   r   ©Únqubits)r   r   ÚkÚtargetsr   r   r   r   r   r   r   r   r   Úabs)r   s    úb/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sympy/physics/quantum/tests/test_qft.pyÚtest_RkGater"      sã   € Üˆs‹€AÜ�!�Q‹<�>‰>˜QÒÐÐÜ�!�Q‹<×Ñ 4Ò'Ð'Ð'Ü�!�Q‹<œ5 ›8Ò#Ð#Ð#Ü�!�Q‹<œ9 Q›<Ò'Ð'Ð'Ü�!�Q‹<œ5 ›8Ò#Ð#Ð#äÜˆq�!‹˜aô!Ü$*¨Q°¨F°Q¼¼DÀ»GÀA¹IÄb¹LÌ¹NÈAÌsÐSTËvÉIÑ<VÓ8WÐ4XÐ+YÓ$Zò[ð [ñ [ó    c                  ó°  — t        dd«      j                  «       t        dd«      t        d«      z  t	        dt        d«      «      z  t        d«      z  t	        dt        d«      «      z  t	        dt        d«      «      z  t        d«      z  k(  sJ ‚t        dd«      j                  «       t        d«      t	        dt        dd«      «      z  t	        dt        dd«      «      z  t        d«      z  t	        dt        dd«      «      z  t        d«      z  t        dd«      z  k(  sJ ‚t        t        dd«      d¬	«      t        t        d
«      D � �cg c]J  } t        d
«      D �cg c]3  }t        dt        z  t        z  d
z  «      || z  d
z  z  t        d
«      z  ‘Œ5 c}‘ŒL c}} «      k(  sJ ‚t        dd«      j                  «       sJ ‚t!        t        dd«      j                  «       t#        ddd«      z  «      j%                  «       t!        t        d«      t        d«      z  t        d«      z  t#        ddd«      z  «      j%                  «       k(  sJ ‚y c c}w c c}} w )Nr   r   r   )r   r   r   éþÿÿÿéýÿÿÿr   é   é   )r	   Ú	decomposer   r   r   r   r   r
   r   r   r   Úranger   r   r   r   r   r   Úexpand)ÚjÚis     r!   Útest_quantum_fourierr.      s  € Üˆq�!‹9×ÑÓ Ü��A‹”| A“Ñ&¤u¨T´9¸Q³<Ó'@Ñ@Ü�Q‹ñ	Ü˜d¤E¨!£HÓ-ñ	.Ü.3°D¼)ÀA»,Ó.Gñ	Hä�Q‹ñ	òð ð ô
 ��1‹:×ÑÓ!Ü�Q‹œ˜d¤F¨1¨b£MÓ2Ñ2´5¸¼vÀaÈ»}Ó3MÑMÜ�Q‹ñ	Ü˜d¤F¨1¨b£MÓ2ñ	3Ü3?À³?ñ	CÜCKÈAÈqÃ>ñ	RòRð Rð Rô ”S˜˜A“Y¨Ô*ÜÌeÐTUËh×WÈ¼5À»8ÖD°a”�Q”r‘Tœ!‘V˜A‘X“  1¡ q¡Ñ)¬$¨q«'Ó1ÔDÓWÓXòYð Yð Yô ˆq�!‹9×ÑÔ Ð Ð Ü”#�a˜“)×%Ñ%Ó'¬¨a°°A«Ñ6Ó7×>Ñ>Ó@ÄFÜ�Q‹œ Q›Ñ'¬°Q«Ñ7¼¸aÀÀA»ÑFóEç�fƒhòð ñ ùò EùÓWs   ÅIÅ8IÆIÉIc                  óº   — t        dd«      } t        | d¬«      }t        | j                  «       d¬«      }|j                  d¬«      |j                  d¬«      k(  sJ ‚y )Nr   r   r   é
   )Ún)r	   r   r)   Úevalf)ÚcÚaÚbs      r!   Útest_qft_representr6   0   sM   € ÜˆAˆq‹	€AÜ�!˜QÔ€AÜ�!—+‘+“-¨Ô+€AØ�7‰7�Rˆ7‹=˜AŸG™G b˜G›MÒ)Ð)Ñ)r#   N)!Úsympy.core.numbersr   r   Úsympy.core.symbolr   Ú&sympy.functions.elementary.exponentialr   Ú(sympy.functions.elementary.miscellaneousr   Úsympy.matrices.denser   Úsympy.physics.quantum.qftr	   r
   r   Úsympy.physics.quantum.gater   r   r   r   r   r   Úsympy.physics.quantum.qubitr   Úsympy.physics.quantum.qapplyr   Úsympy.physics.quantum.representr   Ú$sympy.functions.elementary.complexesr   r"   r.   r6   © r#   r!   ú<module>rC      s@   ðß &Ý $Ý 6Ý 9Ý 'ç 7Ñ 7÷:÷ :å -Ý /Ý 5å 5ò	[òó&*r#   