§
    PŠtjÒ  ã                   óL  — d dl mZ d dlmZ d dl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 dl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 d dlmZmZm Z!m"Z#m$Z$m%Z&m'Z(m)Z*m+Z+m,Z,m-Z-m.Z. d dl/m0Z0 d dl1m2Z2 d dl3m4Z4m5Z5 d dl6m7Z7 d„ Z8d„ Z9d„ Z:d„ Z;d„ Z<d„ Z=d„ Z>d„ Z?d„ Z@dS )é    )ÚProduct)ÚLambda)ÚIÚRationalÚpi)ÚS)ÚDummy)ÚAbs)Úexp)Úsqrt)ÚIntegral)ÚMatrix)ÚMatrixSymbol)ÚTrace)ÚIndexedBase)ÚGaussianUnitaryEnsembleÚdensityÚGaussianOrthogonalEnsembleÚGaussianSymplecticEnsembleÚjoint_eigen_distributionÚCircularUnitaryEnsembleÚCircularOrthogonalEnsembleÚCircularSymplecticEnsembleÚJointEigenDistributionÚlevel_spacing_distributionÚNormalÚBeta)ÚJointDistributionHandmade)ÚRandomMatrixSymbol)ÚGaussianEnsembleÚRandomMatrixPSpace)Úraisesc                  ó�   — t          dd¦  «        } t          | ¦  «        | j        j        k    sJ ‚t	          t
          d„ ¦  «         d S )NÚGé   c                  ó"   — t          dd¦  «        S )Nr$   g      @)r    © ó    úb/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/stats/tests/test_random_matrix.pyú<lambda>z'test_GaussianEnsemble.<locals>.<lambda>    s   € Õ/°°SÑ9Ô9€ r(   )r    r   ÚpspaceÚmodelr"   Ú
ValueError)r$   s    r)   Útest_GaussianEnsembler.      sF   € Ý˜˜aÑ Ô €AÝ�1‰:Œ:˜œœÒ'Ð'Ð'Ð'Ý
�:Ð9Ð9Ñ:Ô:Ð:Ð:Ð:r(   c                  óH  — t          ddd¦  «        } t          dd¦  «        } t          |¦  «        | ¦  «        t          d¦  «        t	          dt          | dz  ¦  «        z  dz  ¦  «        z  dt          t          dd¦  «        z  z  z  k    sJ ‚t          dd	d	¬
¦  «        t          dd	d	¬
¦  «        }}t          d¦  «        }t          |¦  «                             t          |d         |d         |d         fdt          d¦  «        z  t	          d|d         dz  z  dz  d|d         dz  z  dz  z
  d|d         dz  z  dz  z
  ¦  «        z  t          t          ||         ||         z
  ¦  «        dz  ||dz   df|ddf¦  «        z  dt          t          dd¦  «        z  z  z  ¦  «        ¦  «        sJ ‚t          d¦  «        }t          |¦  «                             t          |d|dz  z  t	          d|dz  z  t          z  ¦  «        z  t          dz  z  ¦  «        ¦  «        sJ ‚d S )NÚHr%   ÚUé   éýÿÿÿé   é	   ÚiT©ÚintegerÚpositiveÚjÚlé   é   é   é   Úsé    éüÿÿÿ)r   ÚGUEr   r   r   r   r   r   r	   r   r   Údummy_eqr   r   r
   r   )r0   r$   r6   r:   r;   r@   s         r)   Útest_GaussianUnitaryEnsemblerE   "   s!  € Ý˜3  1Ñ%Ô%€AÝˆC�‰Œ€AØ�7�1‰:Œ:�a‰=Œ=�D ™GœG¥C¨­5°°A±©;¬;©°qÑ(8Ñ$9Ô$9Ñ9¸1½RÅÈ!ÈQÁÄÑ=OÑ;OÑPÒPÐPÐPÐPÝ�#˜t¨dÐ3Ñ3Ô3Ý�#˜t¨dÐ3Ñ3Ô3ð 	€Aå�CÑÔ€AÝ# AÑ&Ô&×/Ò/Ý�A�a”D˜!˜Aœ$  !¤Ð%Ø�t�A‰wŒw‰J•s˜2˜q œt Q™w™<¨™>¨A¨q°¬t°Q©w©K¸©MÑ9¸A¸qÀ¼tÀQ¹w¹KÈ¹MÑIÑJÔJÑJÝ•C˜˜!œ˜q œt™Ñ$Ô$ aÑ'¨!¨Q°©U°A¨¸¸A¸q¸	ÑBÔBñCØDFÅrÍ8ÐTUÐWXÉ>Ì>ÑGYÑDYñ[ñ\ô \ñ]ô ]ð ]ð ]ð ]õ 	ˆc‰
Œ
€AÝ% aÑ(Ô(×1Ò1µ&¸¸B¸qÀ!¹t¹GÅCÈÈ1ÈaÉ4ÉÕPRÉ
ÁOÄOÑ<SÕTVÐXYÑTYÑ<YÑ2ZÔ2ZÑ[Ô[Ð[Ð[Ð[Ð[Ð[r(   c                  óH  — t          ddd¦  «        } t          ddd¦  «        }t          dd¦  «        } t          |¦  «        | ¦  «        t	          dt          | dz  ¦  «        z  dz  ¦  «        t          t	          dt          |dz  ¦  «        z  dz  ¦  «        |¦  «        z  k    sJ ‚t          dd	d	¬
¦  «        t          dd	d	¬
¦  «        }}t          d¦  «        }t          |¦  «         
                    t          |d         |d         |d         fdt          d¦  «        z  t	          d|d         dz  z  dz  d|d         dz  z  dz  z
  d|d         dz  z  dz  z
  ¦  «        z  t          t          ||         ||         z
  ¦  «        ||dz   df|ddf¦  «        z  dt          z  z  ¦  «        ¦  «        sJ ‚t          d¦  «        }t!          |¦  «         
                    t          ||t          z  t	          |dz   t          z  dz  ¦  «        z  dz  ¦  «        ¦  «        sJ ‚d S )Nr0   r%   Ú_HÚOr3   r2   r4   r6   Tr7   r:   r;   r<   r5   rA   r@   )r   r   ÚGOEr   r   r   r   r	   r   r   rD   r   r   r   r
   r   r   ©r0   rG   r$   r6   r:   r;   r@   s          r)   Útest_GaussianOrthogonalEnsemblerK   1   s  € Ý˜3  1Ñ%Ô%€AÝ	�d˜A˜qÑ	!Ô	!€BÝˆC�‰Œ€AØ�7�1‰:Œ:�a‰=Œ=�C ¥5¨¨A©¡;¤;¡¨qÑ 0Ñ1Ô1µ(½3¸rÅ%ÈÈAÉÁ,Ä,¹ÈqÑ?PÑ;QÔ;QÐSUÑ2VÔ2VÑVÒVÐVÐVÐVÝ�#˜t¨dÐ3Ñ3Ô3Ý�#˜t¨dÐ3Ñ3Ô3ð 	€Aå�CÑÔ€AÝ# AÑ&Ô&×/Ò/Ý�A�a”D˜!˜Aœ$  !¤Ð%Ø�d�1‰gŒg‰I•c˜"˜Q˜qœT 1™W™* Q™,¨¨1¨Q¬4°©7©°1©Ñ4°q¸¸1¼¸q¹±yÀ±{ÑBÑCÔCÑCÝ•C˜˜!œ˜q œt™Ñ$Ô$ q¨!¨a©%° m°a¸¸A°YÑ?Ô?ñ@ØACÅBÁñHñIô IñJô Jð Jð Jð Jõ 	ˆc‰
Œ
€AÝ% aÑ(Ô(×1Ò1µ&¸¸A½b¹DÅÀaÈÁdÀUÍ2ÁXÈaÁZÁÄÑ<PÐQRÑ<RÑ2SÔ2SÑTÔTÐTÐTÐTÐTÐTr(   c                  ó”  — t          ddd¦  «        } t          ddd¦  «        }t          dd¦  «        } t          |¦  «        | ¦  «        t	          dt          | dz  ¦  «        z  ¦  «        t          t	          dt          |dz  ¦  «        z  ¦  «        |¦  «        z  k    sJ ‚t          ddd¬	¦  «        t          d
dd¬	¦  «        }}t          d¦  «        }t          |¦  «         
                    t          |d         |d         |d         fdt          d¦  «        z  t	          d|d         dz  z  dz  d|d         dz  z  dz  z
  d|d         dz  z  dz  z
  ¦  «        z  t          t          ||         ||         z
  ¦  «        dz  ||dz   df|ddf¦  «        z  dt          t!          dd¦  «        z  z  z  ¦  «        ¦  «        sJ ‚t          d¦  «        }t#          |¦  «         
                    t          |t%          d¦  «        |dz  z  t	          d|dz  z  dt          z  z  ¦  «        z  dt          dz  z  z  ¦  «        ¦  «        sJ ‚d S )Nr0   r%   rG   rH   r3   r2   r6   Tr7   r:   r;   r<   é¢   r4   é   r@   i   iÀÿÿÿr5   iÙ  )r   r   ÚGSEr   r   r   r   r	   r   r   rD   r   r   r   r
   r   r   r   r   rJ   s          r)   Útest_GaussianSymplecticEnsemblerP   @   sG  € Ý˜3  1Ñ%Ô%€AÝ	�d˜A˜qÑ	!Ô	!€BÝˆC�‰Œ€AØ�7�1‰:Œ:�a‰=Œ=�C ¥5¨¨A©¡;¤;¡Ñ/Ô/µ½¸RÅÀbÈ!ÁeÁÄ¹_Ñ9MÔ9MÈrÑ0RÔ0RÑRÒRÐRÐRÐRÝ�#˜t¨dÐ3Ñ3Ô3Ý�#˜t¨dÐ3Ñ3Ô3ð 	€Aå�CÑÔ€AÝ# AÑ&Ô&×/Ò/Ý�A�a”D˜!˜Aœ$  !¤Ð%Ø•�Q‘”‰K�˜B˜q œt Q™w™J q™L¨1¨Q¨q¬T°1©W©9°Q©;Ñ6¸¸1¸Q¼4À¹7¹À1¹ÑDÑEÔEÑEÝ•C˜˜!œ˜q œt™Ñ$Ô$ aÑ'¨!¨Q°©U°A¨¸¸A¸q¸	ÑBÔBñCØDEÅbÍ(ÐSTÐVWÉ.Ì.ÑFXÑDXñZñ[ô [ñ\ô \ð \ð \ð \õ 	ˆc‰
Œ
€AÝ% aÑ(Ô(×1Ò1µ&¸½A¸f¹I¼IÀaÈÁd¹NÍ3ÈsÐSTÐVWÑSWÉxÐYZÕ[]ÑY]ÉÑK_ÔK_Ñ<_ÐadÕegÐijÑejÑajÑ<kÑ2lÔ2lÑmÔmÐmÐmÐmÐmÐmr(   c                  óø  — t          dd¦  «        } t          ddd¬¦  «        t          ddd¬¦  «        }}t          d¦  «        }t          | ¦  «                             t          |d         |d	         |d         ft          t          t          t          ||         z  ¦  «        t          t          ||         z  ¦  «        z
  ¦  «        d	z  ||dz   df|dd	f¦  «        d
t          dz  z  z  ¦  «        ¦  «        sJ ‚d S ©Nr1   r%   r:   Tr7   ÚkÚtr<   r2   é0   )ÚCUEr	   r   r   rD   r   r   r
   r   r   r   )ÚCUr:   rS   rT   s       r)   Útest_CircularUnitaryEnsemblerX   O   sÿ   € Ý	ˆS�!‰Œ€BÝ�#˜t¨dÐ3Ñ3Ô3Ý�#˜t¨dÐ3Ñ3Ô3ð 	€Aå�CÑÔ€AÝ# BÑ'Ô'×0Ò0Ý�A�a”D˜!˜Aœ$  !¤Ð%Ý•C��A˜a œd™F™œ¥c­!¨A¨a¬D©&¡k¤kÑ1Ñ2Ô2°AÑ5Ø��A‘�qˆM˜A˜q !˜9ñ&ô &Ø')­"¨a©%¡xñ1ñ2ô 2ñô ð ð ð ð ð r(   c                  óò  — t          dd¦  «        } t          ddd¬¦  «        t          ddd¬¦  «        }}t          d¦  «        }t          | ¦  «                             t          |d         |d	         |d         ft          t          t          t          ||         z  ¦  «        t          t          ||         z  ¦  «        z
  ¦  «        ||dz   df|dd	f¦  «        d
t          d	z  z  z  ¦  «        ¦  «        sJ ‚d S rR   )ÚCOEr	   r   r   rD   r   r   r
   r   r   r   )ÚCOr:   rS   rT   s       r)   Útest_CircularOrthogonalEnsembler\   Z   sú   € Ý	ˆS�!‰Œ€BÝ�#˜t¨dÐ3Ñ3Ô3Ý�#˜t¨dÐ3Ñ3Ô3ð 	€Aå�CÑÔ€AÝ# BÑ'Ô'×0Ò0Ý�A�a”D˜!˜Aœ$  !¤Ð%Ý•C��A˜a œd™F™œ¥c­!¨A¨a¬D©&¡k¤kÑ1Ñ2Ô2Ø��A‘�qˆM˜A˜q !˜9ñ&ô &Ø')­"¨a©%¡xñ1ñ2ô 2ñô ð ð ð ð ð r(   c                  óø  — t          dd¦  «        } t          ddd¬¦  «        t          ddd¬¦  «        }}t          d¦  «        }t          | ¦  «                             t          |d         |d	         |d         ft          t          t          t          ||         z  ¦  «        t          t          ||         z  ¦  «        z
  ¦  «        d
z  ||dz   df|dd	f¦  «        dt          dz  z  z  ¦  «        ¦  «        sJ ‚d S )Nr1   r%   r:   Tr7   rS   rT   r<   r2   r4   iÐ  )ÚCSEr	   r   r   rD   r   r   r
   r   r   r   )ÚCSr:   rS   rT   s       r)   Útest_CircularSymplecticEnsembler`   e   sÿ   € Ý	ˆS�!‰Œ€BÝ�#˜t¨dÐ3Ñ3Ô3Ý�#˜t¨dÐ3Ñ3Ô3ð 	€Aå�CÑÔ€AÝ# BÑ'Ô'×0Ò0Ý�A�a”D˜!˜Aœ$  !¤Ð%Ý•C��A˜a œd™F™œ¥c­!¨A¨a¬D©&¡k¤kÑ1Ñ2Ô2°AÑ5Ø��A‘�qˆM˜A˜q !˜9ñ&ô &Ø'*­2¨q©5¡yñ2ñ3ô 3ñô ð ð ð ð ð r(   c            
      ó¸  — t          t          ddd¦  «        t          ddd¦  «        gt          ddd¦  «        t          ddd¦  «        gg¦  «        } t          | ¦  «        t	          t          | d         dz  d| d         z  | d	         z  z
  d
| d         z  | d         z  z   | d	         dz  z   ¦  «         dz  | d         dz  z   | d	         dz  z   t          | d         dz  d| d         z  | d	         z  z
  d
| d         z  | d         z  z   | d	         dz  z   ¦  «        dz  | d         dz  z   | d	         dz  z   ¦  «        k    sJ ‚t          t          d„ ¦  «         d S )NÚA00r   r<   ÚA01ÚA10ÚA11)r   r   r2   )r<   r<   r4   )r   r<   )r<   r   c                  óF   — t          t          ddgddgg¦  «        ¦  «        S )Nr<   r   r2   )r   r   r'   r(   r)   r*   z-test_JointEigenDistribution.<locals>.<lambda>v   s$   € Õ5µf¸qÀ!¸fÀqÈ!ÀfÐ=MÑ6NÔ6NÑOÔO€ r(   )r   r   r   r   r   r   r"   r-   )ÚAs    r)   Útest_JointEigenDistributionrh   p   s˜  € Ý•˜˜q !Ñ$Ô$¥f¨U°A°qÑ&9Ô&9Ð:Ý�e˜Q Ñ"Ô"¥D¨°°1Ñ$5Ô$5Ð6ð8ñ 	9ô 	9€Aå! !Ñ$Ô$Ý�t A d¤G¨Q¡J°°1°T´7±¸1¸T¼7Ñ1BÑ$BÀQÀqÈÄwÁYÈqÐQUÌwÑEVÑ$VÐYZÐ[_ÔY`ÐbcÑYcÑ$cÑdÔdÐdÐefÑfØ€d„GˆA�IñØ�$”˜‘	ñÝ  $¤¨¡
¨Q¨q°¬w©Y°q¸´wÑ->Ñ >ÀÀ1ÀTÄ7ÁÈ1ÈTÌ7ÑARÑ RÐUVÐW[ÔU\Ð^_ÑU_Ñ _Ñ`Ô`ÐabÑbÐefÐgkÔelÐmnÑenÑnÐqrÐswÔqxÐyzÑqzÑzñ|ô |ò|ð |ð |ð |õ �:ÐOÐOÑPÔPÐPÐPÐPr(   c                  óŽ  — t          dd¦  «        } |                      ddi¦  «        }| j        |j        k    sJ ‚t          ddd¦  «        }t	          dd¦  «        }t          dt          |¦  «        ¬¦  «        }t          ddd|¬¦  «        }t          dddd ¬¦  «        }|                     ¦   «         |k    sJ ‚d|z                       ||i¦  «        d|z  k    sJ ‚d|z                       ||i¦  «        d|z  k    sJ ‚d|z                       ||i¦  «        d|z  k    sJ ‚d|z                       ||i¦  «        d|z  k    sJ ‚d S )Nr1   r2   ÚXÚP)r,   r0   )r+   )	rC   ÚxreplaceÚargsr   rO   r!   r   r   Údoit)ÚG1ÚG2rj   r$   Úh_pspacer0   ÚH2s          r)   Útest_issue_19841rs   x   sZ  € Ý	ˆS�!‰Œ€BØ	�Š�a˜�VÑ	Ô	€BØŒ7�b”gÒÐÐÐå�S˜!˜QÑÔ€AÝˆC�‰Œ€AÝ! #­W°Q©Z¬ZÐ8Ñ8Ô8€HÝ˜3  1¨XÐ6Ñ6Ô6€AÝ	˜C  A¨dÐ	3Ñ	3Ô	3€BØ�6Š6‰8Œ8�qŠ=ˆ=ˆ=ˆ=àˆa‰C�>Š>˜1˜a˜&Ñ!Ô! Q q¡SÒ(Ð(Ð(Ð(Øˆa‰C�>Š>˜2˜q˜'Ñ"Ô" a¨¡cÒ)Ð)Ð)Ð)Øˆb‰D�?Š?˜A˜q˜6Ñ"Ô" a¨¡dÒ*Ð*Ð*Ð*Øˆb‰D�?Š?˜B ˜7Ñ#Ô# q¨¡sÒ*Ð*Ð*Ð*Ð*Ð*r(   N)AÚsympy.concrete.productsr   Úsympy.core.functionr   Úsympy.core.numbersr   r   r   Úsympy.core.singletonr   Úsympy.core.symbolr	   Ú$sympy.functions.elementary.complexesr
   Ú&sympy.functions.elementary.exponentialr   Ú(sympy.functions.elementary.miscellaneousr   Úsympy.integrals.integralsr   Úsympy.matrices.denser   Ú"sympy.matrices.expressions.matexprr   Ú sympy.matrices.expressions.tracer   Úsympy.tensor.indexedr   Úsympy.statsr   rC   r   r   rI   r   rO   r   r   rV   r   rZ   r   r^   r   r   r   r   Úsympy.stats.joint_rv_typesr   Úsympy.stats.rvr   Ú sympy.stats.random_matrix_modelsr    r!   Úsympy.testing.pytestr"   r.   rE   rK   rP   rX   r\   r`   rh   rs   r'   r(   r)   ú<module>r†      su  ðØ +Ð +Ð +Ð +Ð +Ð +Ø &Ð &Ð &Ð &Ð &Ð &Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø "Ð "Ð "Ð "Ð "Ð "Ø #Ð #Ð #Ð #Ð #Ð #Ø 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø .Ð .Ð .Ð .Ð .Ð .Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,ð	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð AÐ @Ð @Ð @Ð @Ð @Ø -Ð -Ð -Ð -Ð -Ð -Ø QÐ QÐ QÐ QÐ QÐ QÐ QÐ QØ 'Ð 'Ð 'Ð 'Ð 'Ð 'ð;ð ;ð ;ð
\ð \ð \ðUð Uð Uðnð nð nð	ð 	ð 	ð	ð 	ð 	ð	ð 	ð 	ðQð Qð Qð+ð +ð +ð +ð +r(   