
    g                     r   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 d dlmZ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$m%Z% d dlm&Z& d dl'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z- d dl.m/Z/ d dl0m1Z1 d dl2m3Z3m4Z4 d dl5m6Z6 d dl7m8Z8m9Z9 d dl:m;Z; d Z<d Z=d Z>d Z?dS )    )Sum)Add)Mul)Integeroopi)Pow)EqNe)DummySymbolsymbols)	factorial)exp)sqrt)	Piecewise)
DiracDelta)gamma)Integral)simplify)IndexedIndexedBase)ExprCondPair)PoissonBetaExponentialPMultinomialMultivariateBeta)Normal)PoissonDistribution)CompoundPSpaceCompoundDistribution)MarginalDistribution)pspacedensity)ignore_warningsc            
         t          d          } t          dd          }t          |dd          }t          | |          }t          t	          |          t
                    sJ t          |t          ||j                            t          |          k    sJ t          ddd	          }t          d
|d          } t          |          d                                          t          d          dt          t                    z  z  k    sJ t           t          |t          |d	                    |                     t          d          t          | d	z
  dz   dz            z  dt          t                    z  z  k    sJ t           t          |          |                     t          d          t          | dz   dz            z  dt          t                    z  z  k    sJ d S )NxlTpositive      N1r      N2
         )r   r   r   
isinstancer%   r"   r&   r
   symbolr!   r    doitr   r   r   r   )r)   r*   rateXr/   r1   s         V/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/stats/tests/test_mix.pytest_densityr;      s   sAsT"""A1a==D4AfQii000001bt{++,,0CA0F0FFFFF	a		B	b!		B72;;q>>  DHHbbk$:::::*GB2q		**1--..Qa!eaZKM"""Ad2hhJ/0 0 0 0KGBKKNN##tBxxQTE"H'=r$r(({'KKKKKKK    c                  	   t          dd          \  } }}t          dd||          }t          d| |d                   }t          ||d         f          }t	          t          d          t          t          t	          t          d          t          t          dd          t          t          t          d                    t          d                              t          t          d	d          t          t          t          d                    t          d
                              t          t          t          t          t          d                    t          d                              t          d                    t          t          t          t          t          d                    t          d
                              t          d                              t          t          t          t          t          d                    t          d                    t          t          t          d                    t          d
                              t          d                              t          t          d          d                    t          t          t          dd                    t          d                    t          t          t          dd          t          t          t          d                    t          d                                        t          t          t          t          t          d                    t          d                              t          d                    t          t          t          t          d                    t          d                    t          t          dd          t          d                              t          t          t          t          d                    t          d
                    t          t          t          t          d                    t          d                    t          d                                        } ||          |k    sJ d S )Nza1 p1 p2Tr+   Cr-   Br   p1p2r0   a1)r   r   r   r$   r   r   r   r   r   r	   r   r   r   r
   r   r   )rC   r@   rA   r>   r?   MGRmgrcs          r:   test_MarginalDistributionrF   )   s   d333JBBCB##Ab!A$''A
q1Q4'
*
*Cvc{{Il3wqzztd###W[-E-EAJJ& &  fTD111Ks$$gajj113 3	'+fSkk22GAJJ??@@'"++NN	'+fSkk22GAJJ??@@'"++NN4P 4P s7;vc{{++WQZZ88Ks$$gajj113 34;AJJ@ @'A 'A T""$ $ &)vdT/J/J/J)K)KBKK& &F4$777Ks$$gajj113 3 4 4gk&++..

;;<<gbkkJJF3KK(('!**55td###WR[[113 3F3KK(('!**55F3KK(('!**55wr{{CCE EF FD  3q66T>>>>>>r<   c                     t          dd          } t          d|           }t          t          |          t                    sJ t          t          |          j        t
                    sJ |j        j                            d                                          t          d          t          t          d                    z  k    sJ d S )NYr0   ZrB   )	r   r5   r%   r"   distributionr#   pdfr7   r   )rH   rI   s     r:   test_compound_distributionrM   @   s    QAQAfQii00000fQii,.BCCCCC8 $$Q'',,..#b''#c"gg,,2FFFFFFFr<   c                     t          dd          t          dd          }} t          d          }t          t	          t          d          t          t          |           t          |dz
            z  |dt          f          z  t          |          z  |dt          f          |t           df          }t          t	          t          d          t          t          |           t          |dz
            z  |dt          f          z  t          |          z  |dt          f          |dt          f          }t          t          | |z   d                    dk    sJ t          t          | |z   d                    dk    sJ t          t                    5  t          || z   dk     d	                              t                                        |          sJ t          || z   dk    d	                              t                                        |          sJ 	 d d d            d S # 1 swxY w Y   d S )
NrH   r0   EkrB   r-   r   F)evaluate)r   r   r   r   r   r   r   r   r   r   r
   r   r'   UserWarningrewritedummy_eq)rH   rO   rP   expr1expr2s        r:   test_mix_expressionrW   G   sa   3??KQ//qAc

ASR#qb''*QU2C2C*CaBZ " " ll2J   "#bS!. .ESR#qb''*QU2C2C*CaBZ " " ll2J   "#Q- -ERAq\\??aRAq\\??a		%	% N NQU+++33H==FFuMMMMMQU+++33H==FFuMMMMMMN N N N N N N N N N N N N N N N N Ns   BH44H8;H8N)@sympy.concrete.summationsr   sympy.core.addr   sympy.core.mulr   sympy.core.numbersr   r   r   sympy.core.powerr	   sympy.core.relationalr
   r   sympy.core.symbolr   r   r   (sympy.functions.combinatorial.factorialsr   &sympy.functions.elementary.exponentialr   (sympy.functions.elementary.miscellaneousr   $sympy.functions.elementary.piecewiser   'sympy.functions.special.delta_functionsr   'sympy.functions.special.gamma_functionsr   sympy.integrals.integralsr   sympy.simplify.simplifyr   sympy.tensor.indexedr   r   r   sympy.statsr   r   r   r   r   r   sympy.stats.crv_typesr    sympy.stats.drv_typesr!   sympy.stats.compound_rvr"   r#   sympy.stats.joint_rvr$   sympy.stats.rvr%   r&   sympy.testing.pytestr'   r;   rF   rM   rW    r<   r:   <module>rp      st   ) ) ) ) ) )             0 0 0 0 0 0 0 0 0 0             * * * * * * * * 6 6 6 6 6 6 6 6 6 6 > > > > > > 6 6 6 6 6 6 9 9 9 9 9 9 : : : : : : > > > > > > 9 9 9 9 9 9 . . . . . . , , , , , , 7 7 7 7 7 7 7 7 = = = = = =7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 ( ( ( ( ( ( 5 5 5 5 5 5 H H H H H H H H 5 5 5 5 5 5 * * * * * * * * 0 0 0 0 0 0L L L  .G G GN N N N Nr<   