§
    OŠtj  ã                   óþ   — 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mZmZ d dlmZ d dlmZ  eddgd	d
gg¦  «        Zd„ Zd„ Z ed¦  «        Zd„ Zd„ Z edddgi¬¦  «        Zd„ ZdZd„ Zd„ Zd„ Z dS )é    )Úrandint)ÚInteger)ÚMatrixÚonesÚzeros)Úto_sympyÚto_numpyÚto_scipy_sparseÚmatrix_tensor_productÚmatrix_to_zeroÚmatrix_zerosÚnumpy_ndarrayÚscipy_sparse_matrix)Úimport_module)Úskipé   é   é   é   c                  óD   — t          t          ¦  «        t          k    sJ ‚d S )N)r   Úm© ó    új/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/physics/quantum/tests/test_matrixutils.pyÚtest_sympy_to_sympyr      s   € Ý•A‰;Œ;�!ÒÐÐÐÐÐr   c                  ó®   — t          t          ¦  «        t          k    sJ ‚t          t          ddgddgg¦  «        ¦  «        t          d¦  «        k    sJ ‚d S )Nr   )r   r   r   r   r   r   r   Útest_matrix_to_zeror      sU   € Ý�!ÑÔ¥Ò!Ð!Ð!Ð!Ý�& 1 a &¨1¨a¨&Ð!1Ñ2Ô2Ñ3Ô3µw¸q±z´zÒAÐAÐAÐAÐAÐAr   Únumpyc                  óÎ   — t           st          d¦  «         t                                ddgddggd¬¦  «        } t          t          ¦  «        | k                         ¦   «         sJ ‚d S )Núnumpy not installed.r   r   r   r   Úcomplex©Údtype)Únpr   Úarrayr	   r   Úall)Úresults    r   Útest_to_numpyr(      sd   € Ýð %ÝÐ#Ñ$Ô$Ð$å�XŠX˜˜1�v  1˜vÐ&¨iˆXÑ8Ô8€FÝ•Q‰KŒK˜6Ò!×&Ò&Ñ(Ô(Ð(Ð(Ð(Ð(Ð(r   c                  ó
  — t           st          d¦  «         t          d¦  «        } t          d¦  «        D ]
}d|z  | |<   Œt          d¦  «        }t          d¦  «        D ]}|||<   Œt          d¦  «        }t          d¦  «        D ]}|||<   Œt	          g d¢¦  «        }t                                |                      ¦   «         ¦  «        }t                                |                     ¦   «         ¦  «        }t                                ||¦  «        }| |g}t          |Ž }	|                     ¦   «         |	                     ¦   «         k    sJ ‚t                                ||¦  «        }|| g}t          |Ž }	|                     ¦   «         |	                     ¦   «         k    sJ ‚t                                |                     ¦   «         ¦  «        }t                                ||¦  «        }| |g}t          |Ž }	|                     ¦   «         |	                     ¦   «         k    sJ ‚t                                ||¦  «        }|| g}t          |Ž }	|                     ¦   «         |	                     ¦   «         k    sJ ‚t                                |                     ¦   «         ¦  «        }t                                ||¦  «        }| |g}t          |Ž }	|                     ¦   «         |	                     ¦   «         k    sJ ‚t                                ||¦  «        }|| g}t          |Ž }	|                     ¦   «         |	                     ¦   «         k    sJ ‚t           j	         
                    t          dd¦  «        t          dd¦  «        ¦  «        }
t           j	         
                    t          dd¦  «        t          dd¦  «        ¦  «        }t                                |
|¦  «        }t	          |
                     ¦   «         ¦  «        t	          |                     ¦   «         ¦  «        g}t          |Ž }	|	t	          |                     ¦   «         ¦  «        z
                       ¦   «         t          |	j        |	j        ¦  «        t          z                       ¦   «         k    rJ ‚t          | ||¦  «        }	t                                | t                                ||¦  «        ¦  «        }|                     ¦   «         |	                     ¦   «         k    sJ ‚d S )Nr    r   é   r   )r   r   r   r   é   )r$   r   r   Úranger   r%   ÚtolistÚkronr   ÚrandomÚrandr   r   ÚrowsÚcolsÚepsilon)Úl1ÚiÚl2Úl3ÚvecÚnumpyl1Únumpyl2Únumpy_productÚargsÚsympy_productÚrandom_matrix1Úrandom_matrix2s               r   Útest_matrix_tensor_productr@   $   sU  € Ýð %ÝÐ#Ñ$Ô$Ð$å	ˆq‰Œ€BÝ�2‰YŒYð ð ˆØ�1‘ˆˆ1‰ˆÝ	ˆq‰Œ€BÝ�2‰YŒYð ð ˆØˆˆ1‰ˆÝ	ˆq‰Œ€BÝ�1‰XŒXð ð ˆØˆˆ1‰ˆÝ
���Ñ
Ô
€Cõ �hŠh�r—y’y‘{”{Ñ#Ô#€GÝ�hŠh�r—y’y‘{”{Ñ#Ô#€GÝ—G’G˜G WÑ-Ô-€MØ�ˆ8€DÝ)¨4Ð0€MØ×ÒÑ!Ô! ]×%9Ò%9Ñ%;Ô%;Ò;Ð;Ð;Ð;Ý—G’G˜G WÑ-Ô-€MØ�ˆ8€DÝ)¨4Ð0€MØ×ÒÑ!Ô! ]×%9Ò%9Ñ%;Ô%;Ò;Ð;Ð;Ð;õ �hŠh�r—y’y‘{”{Ñ#Ô#€GÝ—G’G˜G WÑ-Ô-€MØ�ˆ8€DÝ)¨4Ð0€MØ×ÒÑ!Ô! ]×%9Ò%9Ñ%;Ô%;Ò;Ð;Ð;Ð;Ý—G’G˜G WÑ-Ô-€MØ�ˆ8€DÝ)¨4Ð0€MØ×ÒÑ!Ô! ]×%9Ò%9Ñ%;Ô%;Ò;Ð;Ð;Ð;õ �hŠh�s—z’z‘|”|Ñ$Ô$€GÝ—G’G˜G WÑ-Ô-€MØ�ˆ9€DÝ)¨4Ð0€MØ×ÒÑ!Ô! ]×%9Ò%9Ñ%;Ô%;Ò;Ð;Ð;Ð;Ý—G’G˜G WÑ-Ô-€MØ�ˆ9€DÝ)¨4Ð0€MØ×ÒÑ!Ô! ]×%9Ò%9Ñ%;Ô%;Ò;Ð;Ð;Ð;õ ”Y—^’^¥G¨A¨q¡M¤Mµ7¸1¸a±=´=ÑAÔA€NÝ”Y—^’^¥G¨A¨q¡M¤Mµ7¸1¸a±=´=ÑAÔA€NÝ—G’G˜N¨NÑ;Ô;€MÝ�>×(Ò(Ñ*Ô*Ñ+Ô+­V°N×4IÒ4IÑ4KÔ4KÑ-LÔ-LÐM€DÝ)¨4Ð0€MØ¥ }×';Ò';Ñ'=Ô'=Ñ >Ô >Ñ>×FÒFÑHÔHÝ	ˆmÔ  -Ô"4Ñ	5Ô	5µgÑ	=×EÒEÑGÔGòHð Hð Hð Hõ *¨"¨c°2Ñ6Ô6€Må—G’G˜B¥§¢¨¨RÑ 0Ô 0Ñ1Ô1€MØ×ÒÑ!Ô! ]×%9Ò%9Ñ%;Ô%;Ò;Ð;Ð;Ð;Ð;Ð;r   ÚscipyÚfromlistÚsparse)Úimport_kwargsc                  óJ  — t           st          d¦  «         t          st          d¦  «         nt          j        } |                      ddgddggd¬¦  «        }t           j                             t          t          ¦  «        |z
   	                    ¦   «         ¦  «        d	k    sJ ‚d S )
Nr    úscipy not installed.r   r   r   r   r!   r"   g        )
r$   r   rA   rC   Ú
csr_matrixÚlinalgÚnormr
   r   Útodense)rC   r'   s     r   Útest_to_scipy_sparserK   h   s�   € Ýð %ÝÐ#Ñ$Ô$Ð$Ýð ÝÐ#Ñ$Ô$Ð$Ð$å”ˆà×Ò  A ¨¨A¨Ð/°yÐÑAÔA€FÝŒ9�>Š>�?­1Ñ-Ô-°Ñ6×?Ò?ÑAÔAÑBÔBÀcÒIÐIÐIÐIÐIÐIr   g�íµ ÷Æ°>c                  óX   — t          ddd¬¦  «        } t          | t          ¦  «        sJ ‚d S )Nr   Úsympy©Úformat)r   Ú
isinstancer   )Úsyms    r   Útest_matrix_zeros_sympyrR   v   s2   € Ý
�q˜! GÐ
,Ñ
,Ô
,€CÝ�c�6Ñ"Ô"Ð"Ð"Ð"Ð"Ð"r   c                  ó„   — t           st          d¦  «         t          ddd¬¦  «        } t          | t          ¦  «        sJ ‚d S )Nr    r   r   rN   )r$   r   r   rP   r   )Únums    r   Útest_matrix_zeros_numpyrU   z   sI   € Ýð %ÝÐ#Ñ$Ô$Ð$å
�q˜! GÐ
,Ñ
,Ô
,€CÝ�c�=Ñ)Ô)Ð)Ð)Ð)Ð)Ð)r   c                  ó°   — t           st          d¦  «         t          st          d¦  «         t          ddd¬¦  «        } t	          | t
          ¦  «        sJ ‚d S )Nr    rF   r   zscipy.sparserN   )r$   r   rA   r   rP   r   )Úscis    r   Útest_matrix_zeros_scipyrX   �   sa   € Ýð %ÝÐ#Ñ$Ô$Ð$Ýð %ÝÐ#Ñ$Ô$Ð$å
�q˜! NÐ
3Ñ
3Ô
3€CÝ�cÕ.Ñ/Ô/Ð/Ð/Ð/Ð/Ð/r   N)!Úsympy.core.randomr   Úsympy.core.numbersr   Úsympy.matrices.denser   r   r   Ú!sympy.physics.quantum.matrixutilsr   r	   r
   r   r   r   r   r   Úsympy.externalr   Úsympy.testing.pytestr   r   r   r   r$   r(   r@   rA   rK   r3   rR   rU   rX   r   r   r   ú<module>r_      s«  ðØ %Ð %Ð %Ð %Ð %Ð %à &Ð &Ð &Ð &Ð &Ð &Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð
 )Ð (Ð (Ð (Ð (Ð (Ø %Ð %Ð %Ð %Ð %Ð %à
€FˆQ�ˆF�Q˜�FÐÑÔ€ðð ð ðBð Bð Bð €]�7ÑÔ€ð)ð )ð )ð><ð ><ð ><ðB 	ˆ�g¨j¸8¸*Ð-EÐFÑFÔF€ð	Jð 	Jð 	Jð €ð#ð #ð #ð*ð *ð *ð0ð 0ð 0ð 0ð 0r   