U
    ZÊ¹jÌ  ã                   @   s|  d dl 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 dlmZ d dlmZ d dlmZ d d	lmZmZmZ ed
ƒ\ZZedeeƒZedeeƒZedeeƒZedeeƒZededƒZededƒZedddƒZedddƒZ ededƒZ!ededƒZ"ededƒZ#ededƒZ$edeeƒZ%edddƒZ&edd dƒZ'edeedddƒ ge'd ggƒZ(dd„ Z)dd „ Z*d!d"„ Z+d#S )$é    )ÚExpectationÚNormalÚVarianceÚ
Covariance)Úraises)Úsymbols)Ú
ShapeError)ÚMatrix)ÚMatrixSymbol)Ú
ZeroMatrix)ÚRandomMatrixSymbol)ÚExpectationMatrixÚVarianceMatrixÚCrossCovarianceMatrixzj,kÚAÚBÚCÚDÚaé   ÚbÚA2é   ÚB2ÚXÚYÚZÚWÚRÚX2ÚnormalZnormal2c                  C   sü  t tƒ} | t tƒ  kr$ttƒks*n t‚|  ¡ tks:t‚t tƒ} | t tƒ  kr^ttƒksdn t‚| jtdfksvt‚| jtks„t‚| j	dks’t‚t
| tƒs t‚t tt t ƒ} | ttt t ƒksÈt‚|  ¡ tttƒ t ksät‚t
| tƒsòt‚| jtdfk�st‚t tt ƒ} |  ¡ | k�s$t‚t tt t t ƒ} | jd jttttfk�sVt‚|  ¡ tttt t ƒ k�sxt‚t tt tt j ƒ} |  ¡ tttj ƒtttj ƒ tttj ƒ tttj ƒ k�sÔt‚t tt tt  ƒ} |  ¡ tttƒ tttƒ  k�st‚t tƒ ¡ tddt gddggƒk�s8t‚ttdddƒtdddƒgtdd	dƒtd
ddƒggƒ}ttdddƒtdddƒgtdddƒtdddƒggƒ}t t || ƒƒjdd�t|| ƒk�sÊt‚t t || ƒƒ ¡ tddgddggƒk�søt‚d S )Nr   r   r   ZN11é   ZN12é   ZN21é   ZN22é   ZM11ZM12ZM21é   ZM22é   F)Údeepé   é   é   )r   r   r   ÚAssertionErrorÚexpandr   ÚshapeÚkÚrowsÚcolsÚ
isinstancer   r   Úm1r   r   r   Úargsr   ÚTr   Zdoitr	   Újr   )ÚexprÚx1Zx2© r8   úk/var/www/html/bwave/python/venv/lib/python3.8/site-packages/sympy/stats/tests/test_symbolic_multivariate.pyÚtest_multivariate_expectation)   sL    """ ÿÿ&*þþ*r:   c                  C   s^  t tdd„ ƒ ttƒ} | ttƒ  kr2ttƒks8n t‚|  ¡ tttƒksNt‚ttj	ƒ} | ttj	ƒ  krxttj	ƒks~n t‚|  ¡ tttƒks”t‚tt
ƒ} | tt
ƒ  kr¸tt
ƒks¾n t‚| jttfksÐt‚| jtksÞt‚| jtksìt‚t| tƒsút‚ttt
 ƒ} | ttt
 ƒk�st‚|  ¡ ttt
ƒ tj	 k�s<t‚t| tƒ�sLt‚| jttfk�s`t‚ttt t
 ƒ} |  ¡ tt tt
ƒ tj	 tj	 k�sšt‚ttt ƒ} |  ¡ | k�s¸t‚ttt t t ƒ} | jd jttttfk�sêt‚|  ¡ | k�süt‚ttt
 tt  ƒ} |  ¡ dt tt
tƒ tj	 ttt
ƒ tj	  tttƒ tj	  k�sZt‚d S )Nc                   S   s   t tƒS ©N)r   r   r8   r8   r8   r9   Ú<lambda>Y   ó    z,test_multivariate_variance.<locals>.<lambda>r   r   )r   r   r   r   r   r+   r,   r   r.   r4   r   r-   r/   r0   r1   r   r   r2   r   r   r   r3   r   r   ©r6   r8   r8   r9   Útest_multivariate_varianceX   s>    "
&" *ÿÿr?   c                  C   sî  t tdd„ ƒ t tdd„ ƒ ttjtjƒ} | jdks8t‚|  ¡ t	ddƒksNt‚tttƒ} | tttƒ  krxt
ttƒks~n t‚|  ¡ t	ttƒks”t‚| jttfks¦t‚| jtks´t‚| jtksÂt‚t| t
ƒsÐt‚ttt t tƒ} |  ¡ t	ttƒksøt‚tttƒ} t| t
ƒ�st‚|  ¡ | k�s$t‚tttƒ} t| t
ƒ�s>t‚|  ¡ ttƒk�sTt‚ttt tƒ} t| t
ƒ�srt‚|  ¡ t
ttƒt
ttƒ k�s”t‚ttt tƒ} t| t
ƒ�s²t‚|  ¡ tt
ttƒ k�sÎt‚tttt ƒ} t| t
ƒ�sìt‚|  ¡ t
ttƒtj k�s
t‚ttt t tjt t ƒ} t| t
ƒ�s6t‚|  ¡ tt
ttƒ t k�sVt‚ttt tt  t tjt tjt  t ƒ} t| t
ƒ�s”t‚|  ¡ tt
ttƒ t tt
ttƒ t  tt
ttƒ t  tt
ttƒ t  k�sêt‚d S )Nc                   S   s   t ttjƒS r;   )r   r   r   r4   r8   r8   r8   r9   r<   ~   r=   z3test_multivariate_crosscovariance.<locals>.<lambda>c                   S   s
   t ttƒS r;   )r   r   r   r8   r8   r8   r9   r<      r=   )r   r   r   )r   r   r   r   r4   r   r-   r+   r,   r   r   r.   r/   r0   r1   r   r   r   r   r   r   r   r   r   r>   r8   r8   r9   Ú!test_multivariate_crosscovariance}   sN    
&

" .(ÿÿr@   N),Zsympy.statsr   r   r   r   Zsympy.testing.pytestr   Zsympy.core.symbolr   Zsympy.matrices.exceptionsr   Zsympy.matrices.denser	   Z"sympy.matrices.expressions.matexprr
   Z"sympy.matrices.expressions.specialr   Zsympy.stats.rvr   Z-sympy.stats.symbolic_multivariate_probabilityr   r   r   r5   r.   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r2   r:   r?   r@   r8   r8   r8   r9   Ú<module>   s>   þ/%