
    ht                        S SK JrJr  S SKJr  S SKJrJrJrJ	r	J
r
Jr  S SKJr  S SKJrJr  S SKJr  S SKJr  S SKJrJrJrJr  S S	KJrJrJr  S S
KJr  S SK J!r!  S SK"J#r#J$r$J%r%  S SK&J'r'J(r(J)r)  S SK*J+r+J,r,J-r-J.r.J/r/J0r0J1r1J2r2  S SK3J4r4  S SK5J6r6  S SK7J8r8  S SK J9r9  S SK:J;r;  S SK<J=r>J?r@JArB  \" S5      rC\" S5      rD\" SSS9rE\" SSS9rFS rGS rHS rIS rJS  rKS! rLS" rMS# rNS$ rOS% rPS& rQS' rRS( rSS) rTS* rUS+ rVS, rWS- rXS. rYS/ rZS0 r[g1)2    )expand_funcSubs)
EulerGamma)IRationalnanoopizoo)S)DummySymbol)	factorial)harmonic)Abs	conjugateimre)exp	exp_polarlog)tanh)sqrt)cossinatan)Eierferfc)digammagammaloggamma
lowergamma
multigamma	polygammatrigamma
uppergamma)zeta)O)	unchanged)ArgumentIndexError)raises)test_derivative_numericallyrandom_complex_numberverify_numericallyxynTintegerwrealc            	         [        [        5      [        L d   e[        [        5      [        L d   e[        S5      [        L d   e[        S5      [        L d   e[        S5      [        L d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      [	        S5      :X  d   e[        [
        R                  5      [        [        5      :X  d   e[        [        SS5      5      [        [        5      [
        R                  -  :X  d   e[        [        S	S5      5      [        [        5      [        SS
5      -  :X  d   e[        [        SS5      5      [        [        5      [        SS5      -  :X  d   e[        [        SS5      5      S[        [        5      -  :X  d   e[        [        SS5      5      [        [        5      [        S
S5      -  :X  d   e[        [        SS5      5      [        [        5      [        SS5      -  :X  d   e[        [        SS5      5      [        [        5      [        SS5      -  :X  d   e[        [        SS5      5      R                  SS9[        SS5      [        [        S	S5      5      -  :X  d   e[        [        SS5      5      R                  SS9[        SS5      [        [        SS5      5      -  :X  d   e[        [        SS5      5      R                  SS9[        SS5      [        [        SS5      5      -  :X  d   e[        [        S S5      5      R                  SS9[        S!S"5      [        [        SS5      5      -  :X  d   e[        [        S#S5      5      R                  SS9[        SS5      [        [        SS5      5      -  :X  d   e[        [        5      R                  [        5      [        [        5      [        S[        5      -  :X  d   e[        [        S-
  5      R                  SS9[        [        5      [        S-
  -  :X  d   e[        [        S-   5      R                  SS$S%9[        [        S-   -  [        [        5      -  :X  d   e[        [        [        5      5      [        [        [        5      5      :X  d   e[        [        [        [        SS5      -   5      5      [        [
        R                  -   [        [        [
        R                  -   5      -  :X  d   e[        [        [        [
        R                  -
  5      5      [        [
        R                  [        -   5      [        [
        R                  -
  -  :X  d   e[        [        [        [        SS
5      -   5      5      [        [        [        SS
5      -   5      :X  d   e[        S[!        ["        [        -  5      -  S
-  5      R$                  S$L d   e[        S[!        ["        [        -  5      -  S
-  5      R&                  SL d   e[)        S&SSS'9n [        U 5      R*                  S$:X  d   e[)        S&SSS(9n [        U 5      R*                  S:X  d   e[        S)S$S*9R*                  S$:X  d   e[        SS$S*9R*                  S$:X  d   e[        SS$S*9R*                  S$:X  d   eg )+Nir   g      Y         f   e                  ii   i iTfunc@   !   iQ   i     ip        1      FrI   mulr1   )nonpositiver4   )positive
noninteger      evaluate)r!   r   r	   r   r   r   Halfr   r
   r   expandr0   diffr%   r   r   r   r   is_nonnegativeis_extended_nonpositiver   is_real)r1   s    l/var/www/fran/franai/venv/lib/python3.13/site-packages/sympy/functions/special/tests/test_gamma_functions.py
test_gammara      s   :9??;#8s??=C8q==8q==8q==:3'''=DH$$$!Q DHQVVO333!Q DHXa^$;;;;!Q DHXb!_$<<<<"a!RR[000"a!T"Xhq!n%<<<<"a!T"Xhr2.>%>>>>#q!"d2hxW/E&EEEEQ T"hr2&6uXa^7L&LM M MQ T"hr3&7hq!n8M&MN N N
A D!Xc2%6uXa^7L%LM M M
A D!Xb"%5eHQN6K%KL L L
A D!Xb"%5eHQN6K%KL L L 8==uQx	!Q7777Q<D)U1Xq1u-====Q<De41q5	%(8JJJJU1X%	!"5555uQ!Q/01	
QVVU1qvv:&&' ' ' uQZ()affqj1qvv:&' ' ' uQ!Q/01U1x1~;M5NNNN 9QrT?"1$%44===9QrT?"1$%==EEEsd3A8u$$$sTd3A8t###&..%777U#++u444e$,,555    c                  t    [        [        5      R                  [        5      [        [        S-
  5      :X  d   eg )Nr9   )r!   r2   rewriter    rb   r`   test_gamma_rewriterf   b   s(    8I&)AE*::::rb   c                     [        [        S-   5      R                  [        SS5      S[        [        -  -
  [        S-  [        S-  S-  [        S-  S-  -   -  -   [        [        S-  5      -   :X  d   e[        [        5      R                  [        SS5      S[        S-   -  [        -   S-
  [        S-   S[        S-  S-  -
  [        S-  S-  -
  [        -   -  -   [        S-   S-  S[        S-  S-  -
  [        S-  S-  -
  [        S-  S-  -   [        SS5      S-  -
  [        [        S-  -  S-  -   [        -   -  -   [        [        S-   S-  [        S45      -   :X  d   eg )Nr9   r   r;   r:      rC      )r!   r0   seriesr   r
   r)   r%   re   rb   r`   test_gamma_seriesrk   f   sd   Q<q!Q'	JqL1a4Qq2q58!;<<qAwFG G G8??1b!$
AE
Z!#q1urBE"H}z1}Q/N0 ' 	!eaZb!eBhQq!@:q=QR?!RAq"%b!e+B."/1;"< =	=?@!a%!aQSW?U	VV V Vrb   c           	      t   SSK Jn  U" SS5      nU" X[        [        [        -  5      -  5      U" X[        [        * [        -  5      -  5      -
  nSnU" X-   U* U[        -  -   5      U" X-   U* U[        -  -
  5      -
  n[        UR                  5       UR                  5       -
  5      R                  5       S:  $ )Nr   )uniformr9   r>   gV瞯<绽|=)sympy.core.randomrm   r   r   r
   absr2   )srI   rm   cexprepsexpr2s          r`   	tn_branchrv   o   s    )1AYqt_$%Q)QBrE2B0B(CCD
C1"s1u*%QWqb3q5j(AAEtvvx%'')#$&&(500rb   c            
         SSK Jn   SSKJn  [	        [
        S5      S:X  d   e[	        [
        [        5      R                  [        5      [        [
        S-
  -  [        [        * 5      -  :X  d   e[        [	        [        5       [        5      [        5      (       d   e[        [	        [
        [        5       5      [
        5      (       d   e[	        [
        [        5      R                  [
        5      [        [
        5      [        [
        5      -  [        [
        [        5      [        [        5      -  -
  U" / SS/SS[
        // [        5      -
  :X  d   e[	        [        R                   [
        5      [#        [$        5      ['        [#        [
        5      5      -  :X  d   e[	        [        R                   S-
  [
        5      R)                  [        5      (       a   e[	        [        R                   S-   [
        5      R)                  [        5      (       a   e[	        [        R                   [
        SS9R)                  [        5      (       d   e[+        [	        [        R                   S-   [
        SS9[	        [        R                   S-   [
        5      [
        5      (       d   e[+        [	        [        R                   S-
  [
        SS9[	        [        R                   S-
  [
        5      [
        5      (       d   e[-        S[        5      (       d   e[-        S	[        5      (       d   e[-        [/        SS5      [        5      (       d   e[-        [$        [        5      (       d   e[	        S[1        S
[$        -  [2        -  5      [
        -  5      [	        S[
        5      :X  d   e[	        [        [1        S[$        -  [2        -  5      [
        -  5      [        S
[2        -  [$        -  [        -  5      [	        [        [
        [1        [$        [2        -  5      -  5      -  :X  d   e[	        S[1        S[$        -  [2        -  5      [
        -  5      [	        S[
        [1        [2        [$        -  5      -  5      S[$        -  [2        -  -   :X  d   e[5        [	        [
        [        5      5      [	        [5        [
        5      [5        [        5      5      :X  d   e[5        [	        [
        S5      5      S:X  d   e[7        [4        [	        [
        [8        * 5      5      (       d   e[	        S[
        5      R;                  [
        S5      S:X  d   e[	        [        S5      S-  [
        5      R;                  [
        S5      S:X  d   e[	        S[
        SS9R;                  [
        S5      S:X  d   e[	        [
        [
        5      R;                  [
        S5      S:X  d   e[	        [
        S-   [
        5      R;                  [
        S5      S:X  d   e[	        S[
        -  [
        5      R;                  [
        S5      S:X  d   e[	        S[
        S-   5      R;                  [
        S5      S:X  d   e[	        [        S5      S-  [
        S-   5      R;                  [
        S5      S:X  d   e[	        S[
        S-   SS9R;                  [
        S5      S:X  d   e[	        [
        [
        S-   5      R;                  [
        S5      S:X  d   e[	        [
        S-   [
        S-   5      R;                  [
        S5      S:X  d   e[	        S[
        -  [
        S-   5      R;                  [
        S5      S:X  d   e[	        SS[
        -  5      R;                  [
        S5      S:X  d   e[	        [        S5      S-  S[
        -  5      R;                  [
        S5      S:X  d   e[	        SS[
        -  SS9R;                  [
        S5      S:X  d   e[	        [
        S[
        -  5      R;                  [
        S5      S:X  d   e[	        [
        S-   S[
        -  5      R;                  [
        S5      S:X  d   e[	        S[
        -  S[
        -  5      R;                  [
        S5      S:X  d   e[	        [
        S5      R=                  [
        [8        S5      S[
        -  SS[
        S-   -  -   -  [        S5      -  [
        -  [?        [        [
        [        S5      -  5      [
        S-  -  [
        [8        45      -   :X  d   e[	        [
        [        5      RA                  U 5      [        [
        -  * U " [
        * S-   [        5      -  [        [
        5      -   :X  d   e[C        SSS9n[	        U[        5      RA                  U 5      [        U-  * U " U* S-   [        5      -  [        U5      -   :X  d   e[C        SSSS9n[	        U[        5      RA                  U 5      [	        U[        5      :X  d   e[	        [
        [        5      RA                  [        5      [        [
        5      [        [
        [        5      -
  :X  d   e[	        SS5      [E        S5      S[        S5      -  -
  :X  d   e[	        [        S5      S-  S5      [	        [        S5      S-  SSS9-
  RG                  5       S:  d   e[	        [        S5      * S-  S5      [	        [        S5      * S-  SSS9-
  RG                  5       S:  d   eg )Nr   expintmeijergr9   r;   FrX   rE   r?   r>   rD   r:   Tkr3   r4   rU   F   ri   E              uieXQ|e?IC*K;p~2L+	H M   缉ؗҜ<)$'sympy.functions.special.error_functionsry   sympy.functions.special.hyperr{   r#   r0   r1   r\   r   tdrandcplxr!   r    r'   r   r   rZ   r   r
   r   hastnrv   r   r   r   r   r*   r	   _eval_is_meromorphicrj   r)   rd   r   r   evalf)ry   r{   r}   s      r`   test_lowergammar   x   s   >5aq   a  #q1q5z#qb''9999jQ'++++jHJ'++++a  #ajA.s1v55
"q!fq!QiQ
/	00 0 0 affa DHSa\$9999!&&1*a(,,Z8888!&&1*a(,,Z8888affa%044Z@@@@j!Q7!Q', , , ,j!Q7!Q', , , , R$$$$R$$$$Xa^Z0000R$$$$a1R46*1,-Aq1AAAAa1R46*1,-AaCF1HjAi1o$5667 7 7b)AbDF+A-.2q1R4()AbDF23 3 3 Z1%&*Yq\9Q<*PPPPZ1%&!+++Y
1rc 23333a00A6%???ad1fa 55a;uDDDaU+@@AF$NNNa00A6%???a!eQ44Q:eCCCac1221a8EAAAaQ44Q:eCCCad1fa!e$99!Q?4GGGaQ/DDQJdRRRaQ44Q:dBBBa!eQU#88A>$FFFac1q5!66q!<EEEa1221a8EAAAad1fac"771=FFFa1u-BB1aHEQQQa1221a8EAAAa!eQqS!66q!<EEEac1Q344Q:eCCCa""1b!,	1a!QU)mSW$Q&3qQx=A+=2w)GGH H H 	1gfo!Q$vqb1fa'8!858!CD D DsD!A	1gfo!Q$vqb1fa'8!858!CD D DsD51Aa##F+z!Q/????a##J/58jA>N3NNNNb!	"  1V  Y\  ]_  Y`  1`  !`  `  `  `quqy!$z!B%!)Q'OOVVX[````"vz1%
AbE6A:q5(QQXXZ]bbbbrb   c            
         SSK Jn   SSKJn  [	        SS5      S:X  d   e[	        [
        [        5      R                  [        5      [        [
        S-
  -  * [        [        * 5      -  :X  d   e[        [	        [        5       [        5      [        5      (       d   e[	        [
        [        5      R                  [
        5      [	        [
        [        5      [        [        5      -  U" / SS/SS[
        // [        5      -   :X  d   e[        [	        [
        [        5       5      [
        5      (       d   e[        SSS	9n[	        SU5      [        U* 5      * :X  d   e[	        US5      [        U5      :X  d   e[	        [        R                   [
        5      [#        [$        5      ['        [#        [
        5      5      -  :X  d   e[	        [        R                   S
-
  [
        5      R)                  [        5      (       a   e[	        [        R                   S
-   [
        5      R)                  [        5      (       a   e[	        [        R                   [
        SS9R)                  [        5      (       d   e[+        [	        [        R                   S
-   [
        SS9[	        [        R                   S
-   [
        5      [
        5      (       d   e[+        [	        [        R                   S
-
  [
        SS9[	        [        R                   S
-
  [
        5      [
        5      (       d   e[-        [        [
        [.        * 5      (       d   e[-        [        [
        S5      (       d   e[1        S[        5      (       d   e[1        S[        5      (       d   e[1        [3        SS
5      [        5      (       d   e[1        [$        [        5      (       d   e[	        S
[5        S[$        -  [6        -  5      [
        -  5      [	        S
[
        5      :X  d   e[	        [        [5        S[$        -  [6        -  5      [
        -  5      [        S[6        -  [$        -  [        -  5      [	        [        [
        [5        [$        [6        -  5      -  5      -  [        [        5      S[        S[$        -  [6        -  [        -  5      -
  -  -   :X  d   e[	        S[5        S[$        -  [6        -  5      [
        -  5      [	        S[
        [5        [6        [$        -  5      -  5      S[$        -  [6        -  -
  :X  d   e[	        S[
        5      U " S
[
        5      [
        S-  -  :X  d   e[9        [	        [
        [        5      5      [	        [9        [
        5      [9        [        5      5      :X  d   e[-        [8        [	        [
        [.        * 5      5      (       d   e[	        [
        [        5      R;                  U 5      [        [
        -  U " [
        * S-   [        5      -  :X  d   e[	        [
        [        5      R;                  [<        5      [        [
        5      [=        [
        [        5      -
  :X  d   e[	        SS5      S[        S5      -  :X  d   e[	        [        S5      S-  S5      [	        [        S5      S-  SSS9-
  R?                  5       S:  d   e[	        [        S5      * S-  S5      [	        [        S5      * S-  SSS9-
  R?                  5       S:  d   eg )Nr   rx   rz   r?   ri   r9   pTrU   r;   FrX   rE   r|   r>   rD   r:   r   r   r   r   r   ) r   ry   r   r{   r'   r0   r1   r\   r   r   r   r   r   r   r!   r   rZ   r   r
   r   r   r   r*   r	   rv   r   r   r   r   rd   r#   r   )ry   r{   r   s      r`   test_uppergammar      s@   >5aq   a  #AE
{3r7'::::jQ'++++a  #1aQ'"q!fq!QiQ"GGH H HjHJ'++++sT"AaA2w&&&auQx'''affa DHT$q']$::::!&&1*a(,,Z8888!&&1*a(,,Z8888affa%044Z@@@@j!Q7!Q', , , ,j!Q7!Q', , , , ZRC((((ZA&&&&R$$$$R$$$$Xa^Z0000R$$$$a1R46*1,-Aq1AAAAa1R46*1,-AaCF1HjAi1o$566a!c!B$q&(m#$	%% % % b)AbDF+A-.2q1R4()AbDF23 3 3 b!q!QT 1111Z1%&*Yq\9Q<*PPPPY
1rc 23333a##F+q!tFA2614E/EEEEa##J/58jA>N3NNNNb!  !F  GJ  KM  GN  !N  N  N  Nquqy!$z!B%!)Q'OOVVX[````"vz1%
AbE6A:q5(QQXXZ]bbbbrb   c                  ,   [        [        [        5      [        L d   e[        S[        5      [        L d   e[        S[        * 5      [        L d   e[        S[        [        -  5      [        L d   e[        S[        * [        -  5      [        L d   e[        S[        5      S:X  d   e[        S[        5      S:X  d   e[        SS5      [
        L d   e[        SS5      [
        L d   e[        SS5      [
        L d   e[        [        SS5      S5      [
        L d   e[        SS5      [
        L d   e[        SS5      [        * :X  d   e[        SS5      [        S	S
5      [        -
  :X  d   e[        SS5      [        S-  S-  :X  d   e[        SS5      [        S-  S-  S-
  :X  d   e[        SS5      [        S-  S-  [        SS5      -
  :X  d   e[        SS5      [        S-  S-  :X  d   e[        SS5      S[        SS5      [        S-  S-  -   -  :X  d   e[        SS5      S[        S-  -  S-  :X  d   e[        S[        R                  5      [        S-  S-  :X  d   e[        S[        R                  5      S[        S5      -  :X  d   e[        S[        R                  5      S[        S-  -  :X  d   eS n U " SS5      (       d   eU " SS5      (       d   eU " SS5      (       d   eU " SS5      (       d   eU " SS5      (       d   eU " SS5      (       d   eU " SS5      (       d   eU " SS5      (       d   eU " SS5      (       d   eU " SS5      (       d   e[        S[        5      R                  [        5      [        S[        5      :X  d   e[        S[        5      R                  [        5      [        S[        5      :X  d   e[        S[        5      R                  [        5      S[        S[        5      -  :X  d   e[        [        S5      R                  [        5      [        [        S5      :X  d   e[        S5      n[        SSS9n[        SSS 9n[        S!SS"9n[        S#SSS$9n[        U[        5      R                  [        5      [        U[        5      :X  d   e[        U[        5      R                  [        5      [        U[        5      :X  d   e[        U[        5      R                  [        5      [        U[        5      :X  d   e[        U[        5      R                  [        5      [        U[        5      :X  d   e[        U[        5      R                  [        5      SUS-   -  [        U5      -  [        US-   [        5      -  :X  d   e[        SS[        -  5      R!                  [        5      S[        SS[        -  5      -  :X  d   e[        S[        5      R                  ["        5      [#        [        S-
  5      [        -
  :X  d   e[        S[        5      R                  ["        5      S[#        [        S-
  S5      -  S[        S5      -  -
  :X  d   e[        S%SS 9n[        U[        5      R                  ["        5      SUS-   -  [#        [        S-
  US-   5      * [        US-   5      -   -  [        U5      -  :X  d   e[        S%SSS&9n[        U[%        S[        -  [        -  5      [        -  5      [        U[        5      :X  d   e[        S%SS 9n[        U[%        S[        -  [        -  5      [        -  5      R&                  U[%        S[        -  [        -  5      [        -  4:X  d   e[        S[        5      [)        [        5      [+        S[        -  5      S-  -
  :X  d   e[        S[        5      R,                  [         L d   e[        S[        * 5      R/                  SS'9[        S[        * 5      :X  d   e[        SS(5      R0                  S):X  d   e[        SS*5      R0                  S):X  d   e[        SS(5      R0                  S:X  d   e[        SS*5      R0                  SL d   e[        SS*5      R0                  b   e[        SS*5      R0                  b   e[        SS(5      R2                  S:X  d   e[        SS(5      R2                  S):X  d   e[        SS*5      R2                  S):X  d   e[        SS*5      R2                  SL d   e[        SS*5      R2                  b   e[        SS*5      R2                  b   e[        [        S5      R0                  b   e[        [        S5      R2                  b   e[        [        [        [        5      -  R5                  5       [7        [        [        [        5      5      * [9        [        [        [        5      5      4:X  d   e[;        [        [        S5      5      R                  [<        5      [=        [        [        S5      5      [=        [        [        S5      * 5      -
  [=        [        [        S5      5      [=        [        [        S5      * 5      -   -  :X  d   e[        [        [        S5      -  R                  [<        5      [        [=        [        * [?        [7        [        [        S5      5      [9        [        [        S5      5      -  5      -  5      -  [A        [        [        S5      5      -  :X  d   e[C        [6        [        S[        5      5      (       d   e[        [        S+SS"9[        S,SS"95      RD                  SL d   e[        S[        5      RD                  b   e[G        [        [        S5      RI                  S-S.95      S/:X  d   e[G        [        S0S15      RI                  S-S.95      S2:X  d   e[G        [        SS5      RI                  S-S.95      S3:X  d   e[G        [        [        S5      RI                  S-S.95      S4:X  d   e[G        [        S[        5      RI                  S-S.95      S5:X  d   e[G        [        [        [        5      RI                  S-S.95      S6:X  d   eg )7Nr   r9   r>   rC   r;   r:   r@   rP      ri   r?   rA   ii Q  Z   rB   ?   i   i  rh   c                    [        U 5      U-  n[        SU5      nUR                  [        5      (       a  g[        [        SUR	                  5       5      R	                  5       UR	                  5       -
  5      R	                  5       S:  $ )Nr   Frn   )r   r%   r   rp   r2   mr2   r0   rs       r`   ttest_polygamma.<locals>.t  sf    aDFaO559Q&((*QSSU23557%??rb   rE   {   rD   n1n2Tr6   n3r3   n4r   n5)rU   r4   r2   )r4   nonnegativerH   g      @Fg      ab
   r2   z0.1169314564gffffff@g      ?z-3.003302909z-0.9189385332z-3.109856569 + 1.89089016*Iz-0.5369999034 - 0.7942335428*Iz6.332362889 + 45.92828268*I)%r%   r2   r   r	   r   r   r   r   r
   r   rZ   r(   r0   rd   r   r   r\   r   r   argsr"   r   rI   r[   is_positiveis_negativeas_real_imagr   r   r   r   r   r   r*   r_   strr   )r   r   r   r   r   r   nir}   s           r`   test_polygammar      s
   Q###Qr!!!Q"""Q"###Q2"$$$Qq   Qq   Qs"""Qs"""Qs"""Xa^R(C///Q?c!!!Q?zk)))Q?hr2.;;;;Q?b!eAg%%%Q?b!eAgk)))Q?b!eAgA6666Q?b!ebj(((Q?a&%!82q58!CDDDDQ?a"a%i"n,,,Q2q519,,,Q3tAw;...R F2r6M111@ Q77N7Q77N7R88O8Q77N7R88O8Q77N7Q77N7Q77N7Q77N7S!999Q?""4(IaO;;;Q?""4(DAJ666Q?""4(BtAqzM999Q?""4(IaO;;;	B	4	 B	d	#B	t	$B	tT	2BR##D)Yr1-====R##D)Yr1-====R##D)Yr1-====R##D)Yr1-====R##D)bBF^im-KdSUXYSY[\o-]]]]Q!!!!$)Aqs*;(;;;;Q?""8,Q*0LLLLQ?""8,(1q5!2D0Dqay0PPPP	T	"BR##H-"Q(1q5RTWXRXBYAYCGQ<BP 2QQZ[]Q^2_ _ _ _ 	sDd3AQ	!A#b&)!+,	!Q??? 	sD!AQ	!A#b&)!+,11a1Q3r69J19L5MMMM Rx{S2Y]:::: R  I--- Q"""-1qb1AAAAQ((E111Q))U222Q((D000Q))T111R**222R**222Q((D000Q((E111Q))U222Q))T111R**222R**222Q?&&...Q?&&... i2,,.	!R !!2i2&6#789 9 91a!**3/	!Q 3	!Q'7#883yA;ORUW`abdeWfVfRg;ghi i i	!Q((-S!DIaO,R	!Q-@@AABB3yQRTUCWWX X X R1a))))VC$/d1KLTTX\\\\Q?""***yQ%%%+,>>>yc"((2(./>AAAyQ%%%+,???yA$$r$*+/LLLLyA$$r$*+/OOOOyA$$r$*+/LLLLrb   c                     [        S[        5      R                  SS9[        S[        5      :X  d   e[        SS[        -  5      R                  SS9[        S[        5      S-  [        S[        R                  [        -   5      S-  -   [        S5      -   :X  d   e[        SS[        -  5      R                  SS9[        S[        5      S-  [        S[        R                  [        -   5      S-  -   :X  d   e[        S[        5      R                  SS9[        S[        5      :X  d   e[        SS[        -   5      R                  SS9[        S[        5      S[        S-
  -  -
  :X  d   e[        SS[        -   5      R                  SS9S[        -  [        S[        5      -   :X  d   e[        SS[        -   5      R                  SS9S[        -  SS[        -   -  -   [        S[        5      -   :X  d   e[        SS[        -   5      R                  SS9[        S[        5      S[        -  -   SS[        -   -  -   SS[        -   -  -   :X  d   e[        SS[        -   5      R                  SS9[        S[        5      S[        -  -   SS[        -   -  -   SS[        -   -  -   SS[        -   -  -   :X  d   e[        SS[        -   5      R                  SS9[        S[        5      S[        S-  -  -
  :X  d   e[        SS[        -   5      R                  SS	S
9[        S[        5      S[        S-  -  -
  SS[        -   S-  -  -
  :X  d   e[        SS[        -   5      R                  SS	S
9[        S[        5      S[        S-  -  -
  SS[        -   S-  -  -
  SS[        -   S-  -  -
  :X  d   e[        SS[        -   5      R                  SS	S
9[        S[        5      S[        S-  -  -
  SS[        -   S-  -  -
  SS[        -   S-  -  -
  SS[        -   S-  -  -
  :X  d   e[        S[        [        -   5      R                  SS9[        S[        [        -   5      :X  d   e[        S[        [        -   5      R                  SS9[        S[        [        -   5      :X  d   e[        SSS[        -  -   [        -   5      R                  SS	S
9[        S[        S[        -  -   5      S[        S[        -  -   S-  -  -
  SS[        -   S[        -  -   S-  -  -
  SS[        -   S[        -  -   S-  -  -
  :X  d   e[        SSS[        -  -   [        -   5      R                  SS	S
9[        S[        S[        -  -   5      S[        S[        -  -   S-  -  -
  SS[        -   S[        -  -   S-  -  -
  SS[        -   S[        -  -   S-  -  -
  :X  d   e[        SS[        -  [        -   S-   5      R                  SS	S
9[        S[        S[        -  -   5      S[        S[        -  -   S-  -  -
  :X  d   e[        SS[        -  [        -   [        SS5      -   5      n U R                  SS9U :X  d   e[        S[        [        -   [        SS5      -   5      n U R                  SS	S9U :X  d   e[        S[        S	S9R                  SS9[        [        5      [        [        5      S-  -
  [        S5      S-  -
  :X  d   e[        S[        5      R                  SS9[        S-  S-  -   [        S-  -
  [        S5      S-  -   n[        U[        5      (       d   eUR                  S:X  d   eg )Nr   TrH   r:   r9   r?   rC   r;   FrI   multinomialri   )rI   basicrX   rD   rh   )rC   )r%   r0   r[   r   rZ   r   r1   r   r"   r
   
isinstancer   point)ep2s     r`   test_polygamma_expand_funcr   n  s#   Q?!!t!,	!Q???Q!###.!QIa!4Q66Q?@ @ @Q!###.!QIa!4Q667 7 7Q?!!t!,!Q  QQ&&D&1!Q!QU)#$ $ $QA%%4%0	!i1  QA%%4%0	!aQi)Aq/)* * *QA%%4%0!Q!A#1q5	)Aq1uI56 6 6QA%%4%0!Q!A#1q5	)Aq1uI51q5	AB B BQA%%4%0!Q!AqD& ! ! !QA%%4U%C!Q!AqD& 1a!eaZ</0 0 0QA%%4U%C!Q!AqD& 1a!eaZ</!QUQJ,>? ? ?QA%%4U%C!Q!AqD& 1a!eaZ</	1q51*	!a%!|	$$ $ $ QA%%4%0!QU  QA%%4%0!QU  QAaC!$++5+I!Q1W1qs7Q,.	1q51Q3;
	A!a//	00 0 0 QAaC!$++5+I!Q1W1qs7Q,.	1q51Q3;
	A!a//	00 0 0 Q!a!$++5+I!Q1W1qs7Q,./ / /!QqS1Wx1~-.A888!###!QUXa^+,A88U8+q000RU+222=c"gai#a&(*+ + +	2q		 	 d	 	+ad1f	4qs	:QqT"W	DBb$88urb   c                  
   [        [        5      [        :X  d   e[        [        5      [        :X  d   e[        [        * 5      [        :X  d   e[        [        [        -  5      [        :X  d   e[        [        * [        -  5      [        :X  d   e[        S5      [        :X  d   e[        S5      [        :X  d   e[        S5      [        :X  d   e[        S5      [        :X  d   e[        S5      [
        * :X  d   e[        S5      [        SS5      [
        -
  :X  d   eS n U " SS	5      (       d   eU " S
S	5      (       d   eU " SS	5      (       d   eU " SS5      (       d   eU " SS5      (       d   eU " SS
5      (       d   eU " SS
5      (       d   eU " S
S5      (       d   eU " S	S
5      (       d   eU " SS5      (       d   e[        [        5      R                  [        5      [        S[        5      :X  d   e[        [        5      R                  [        5      [        [        S-
  5      [
        -
  :X  d   e[        [        5      R                  b   e[        [        SS9R                  5       [        S[        5      :X  d   e[        [        SS9R                  b   e[        [        SS9R                  b   e[        [        SS9R                  b   e[        [        SS9R                  [        5      [        S[        5      :X  d   eg )Nr   rC   r   r9   r@   rP   r   c                    [        U 5      U-  n[        U5      nUR                  [        5      (       a  g[        [        UR	                  5       5      R	                  5       UR	                  5       -
  5      R	                  5       S:  $ )NFrn   )r   r    r   rp   r2   r   s       r`   r   test_digamma.<locals>.t  s_    aDFAJ55>>71335>##%-.002U::rb   r:   r;   r?   rE   r   r>   FrX   )r    r   r	   r   r   r   r   r0   rd   r(   r%   r   r_   fdiffr   r   )r   s    r`   test_digammar     sx   3<32;"B3<21R4=BA2b5>R2;#2;#2;#1:1:*$$$1:"b)J6666; Q77N7Q77N7R88O8Q77N7R88O8Q77N7Q77N7Q77N7Q77N7S!9991:d#yA6661:h'8AE?Z+GGGG1:%%%1e$**,	!Q???1e$,,4441e$008881e$008881e$,,Y79Q?JJJrb   c            	         [        [        5      R                  SS9[        S[        5      :X  d   e[        S[        -  5      R                  SS9[        S[        5      S-  [        S[	        SS5      [        -   5      S-  -   [        S5      -   :X  d   e[        S[        -   5      R                  SS9[        S[        5      S[        S-
  -  -
  :X  d   e[        S[        -   5      R                  SS9S[        -  [        S[        5      -   :X  d   e[        S[        -   5      R                  SS9S[        -  SS[        -   -  -   [        S[        5      -   :X  d   e[        S[        -   5      R                  SS9[        S[        5      S[        -  -   SS[        -   -  -   SS[        -   -  -   :X  d   e[        S[        -   5      R                  SS9[        S[        5      S[        -  -   SS[        -   -  -   SS[        -   -  -   SS[        -   -  -   :X  d   e[        [        [        -   5      R                  SS9[        S[        [        -   5      :X  d   eg )	NTrH   r   r:   r9   rC   r;   r?   )r    r0   r[   r%   r   r   r1   re   rb   r`   test_digamma_expand_funcr     s3   1:$'9Q?:::1Q3<D)!QIa!Q!);<Q>>QGH H H26?!!t!,!Q!QU)#$ $ $1q5>  d +	!i1  1q5>  d +	!aQi)Aq/)* * *1q5>  d +!Q!A#1q5	)Aq1uI56 6 61q5>  d +!Q!A#1q5	)Aq1uI51q5	AB B B1q5>  d +!QU  rb   c                     [        [        5      [        :X  d   e[        [        5      S:X  d   e[        S5      [        S-  S-  :X  d   e[        S5      [        S-  S-  S-
  :X  d   e[        S5      [        S-  S-  [	        SS5      -
  :X  d   e[        [
        SS	9R                  [        5      [        S[
        5      :X  d   e[        [
        SS	9R                  [        5      [        [
        5      R                  [        5      R                  [        5      :X  d   e[        [
        SS	9R                  5       [        S[
        5      :X  d   e[        [
        SS	9R                  b   e[        [
        SS	9R                  b   e[        [
        SS	9R                  b   e[        [
        SS	9R                  [        5      [        S[
        5      :X  d   eg )
Nr   r9   r:   ri   r;   r>   r?   FrX   )r&   r   r	   r
   r   r0   rd   r(   r   r%   r   r_   r   r   re   rb   r`   test_trigammar     s   C=CB<1A;"a%'!!!A;"a%'A+%%%A;"a%'HQN2222A&..t4Q
BBBA&..x8I&..x89 9 9 Au%++-1a@@@Au%--555Au%11999Au%11999Au%--i8IaOKKKrb   c            	         [        S[        -  5      R                  SS9[        S[        5      S-  [        S[	        SS5      [        -   5      S-  -   :X  d   e[        S[        -   5      R                  SS9[        S[        5      S[        S-  -  -
  :X  d   e[        S[        -   5      R                  SSS9[        S[        5      S[        S-  -  -
  SS[        -   S-  -  -
  :X  d   e[        S[        -   5      R                  SSS9[        S[        5      S[        S-  -  -
  SS[        -   S-  -  -
  SS[        -   S-  -  -
  :X  d   e[        S[        -   5      R                  SSS9[        S[        5      S[        S-  -  -
  SS[        -   S-  -  -
  SS[        -   S-  -  -
  SS[        -   S-  -  -
  :X  d   e[        [        [
        -   5      R                  SS9[        S[        [
        -   5      :X  d   e[        SS[        -  -   [
        -   5      R                  SSS9[        S[
        S[        -  -   5      S[
        S[        -  -   S-  -  -
  SS[
        -   S[        -  -   S-  -  -
  SS[
        -   S[        -  -   S-  -  -
  :X  d   eg )	Nr:   TrH   r9   r?   Fr   r;   )r&   r0   r[   r%   r   r1   re   rb   r`   test_trigamma_expand_funcr     s   AaC=T*!QIa!Q!);<Q>>? ? ?AE?!!t!,!Q!AqD& ! ! !AE?!!t!?!Q!AqD& 1a!eaZ</0 0 0AE?!!t!?!Q!AqD& 1a!eaZ</!QUQJ,>? ? ?AE?!!t!?!Q!AqD& 1a!eaZ</	1q51*	!a%!|	$$ $ $ AE?!!t!,!QU  A!GaK ''Tu'E!Q1W1qs7Q,.	1q51Q3;
	A!a//	00 0 0rb   c                  :   [        [        S 5        [        [        S 5        [        S5      [        L d   e[        S5      [        L d   e[        S5      [        L d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      [        S5      :X  d   e[        S	5      [        S
5      :X  d   e[        SSSS9n [        U 5      [        [        U 5      5      :X  d   e[        U * 5      [        L d   e[        U S-  5      [        SU * S-   -  [        [        5      -  [        U 5      -  [        U S-  [        R                  -   5      -  5      :X  d   e[        [        5      [        L d   e[        [        * 5      [        L d   e[        [        [        -  5      [        L d   e[        [        * [        -  5      [        L d   e[        [        5      [        L d   e[        [        5      [        L d   e[        [        SS5      5      nS[        S5      -  [        [        SS5      5      -   [        S	5      -   [        S5      -   [        S5      -   [        S5      -   n[!        U5      R#                  5       U:X  d   eUR%                  5       UR%                  5       :X  d   e[        [        SS	5      5      nS[        S	5      -  [        [        SS	5      5      -   [        S5      -   [        S5      -   [        S5      -   [        S5      -   n[!        U5      R#                  5       U:X  d   eUR%                  5       UR%                  5       :X  d   e[        [        SS5      5      nS[        S5      -  [        S5      -   [        [        SS5      5      -   [        S5      -   [        S5      -   n[!        U5      R#                  5       U:X  d   eUR%                  5       UR%                  5       :X  d   e[        [        SS	5      S-
  5      n[        S5      * [        S5      -
  [        [        SS	5      5      -   S[        S	5      -  -   S[        -  [        -  -
  n[!        U5      R#                  5       U:X  d   eUR%                  5       UR%                  5       :X  d   e[        [        SS5      S
-
  5      n[        S5      * [        S5      -
  [        S5      -
  [        [        SS5      5      -   S[        S5      -  -   S[        -  [        -  -
  n[!        U5      R#                  5       U:X  d   eUR%                  5       UR%                  5       :X  d   e[        [&        5      R)                  [&        5      [+        S[&        5      :X  d   e[        S[&        [-        [&        5      -   -  [/        [&        5      -   5      R1                  [&        S	S9n[        S[&        -  5      * S-
  S[&        -  -  [        [&        [        -  5      S-  -
  S	[        S[&        -  5      -
  [&        -  S-  -   [3        [&        S-  5      -   [        [&        5      [&        S-  -  S-  -   nX4-
  R5                  SS9R7                  5       S:X  d   e[        S[&        -  5      R9                  [&        5      nS[&        -  [        R                  -
  [        S[&        -  5      -  S[&        -  -
  [        S[        -  5      S-  -   [&        S-  -   [&        S-  S-  -
  [&        S-  S -  -   [3        [&        S-  5      -   nX4-
  R5                  SS9R7                  5       S:X  d   e[        [&        5      R;                  S!5      [        [        [&        5      5      :X  d   e[        [&        5      R9                  [&        5      R=                  5       nU[        [&        5      * [>        [&        -  -
  [        S-  [&        S-  -  S-  -   [&        S-  [+        SS5      -  S
-  -   [        S	-  [&        S	-  -  S-  -   [&        S-  [+        S	S5      -  S"-  -   [3        [&        S
-  5      -   :X  d   eU[        [&        5      R;                  S!5      R9                  [&        5      R=                  5       :X  d   e[A        [        [&        5      5      [        [A        [&        5      5      :X  d   e[A        [        S5      5      [        L d   e[A        [        S5      5      [        [A        S5      5      :X  d   e[A        [        [        * 5      5      [A        [        5      :X  d   e[        [        S#SS$95      RB                  SL d   e[        [        S#SS%95      RB                  S&L d   e[        [        S#SS'95      RB                  S&L d   e[        [        S#SS(95      RB                  S&L d   e[        [        S#SS)95      RB                  b   e[        [        S#SS*95      RB                  b   e[        [        S#SS+95      RB                  b   e[        [        S#5      5      RB                  b   e[        [        R                  5      RB                  SL d   e[        S5      RB                  S&L d   e[        [        SS5      5      RB                  S&L d   e[        [        5      RB                  b   e[        SS[        -  -   5      RB                  b   eS, nU" SS5        U" SS5        U" SS5        U" SS5        U" S	S	5        U" SS5        g )-Nc                      [        SS5      $ )Nr:   r;   )r"   re   rb   r`   <lambda>test_loggamma.<locals>.<lambda>  s
    hq!nrb   c                  >    [        [        5      R                  S5      $ )Nr:   )r"   r0   r   re   rb   r`   r   r     s    x{'8'8';rb   rC   rD   r   r9   r:   r;   r?   ri   r2   Tr~      rF   r@   r      rQ   r|   r   rA      rE   	   r>   rh   r      )forceih  i  intractablex   vr   )zeroFnegative)rT   )r   )	imaginaryr6   c                 t    [        S[        -  5      R                  [        U S9R                  5       U:X  d   eg )Nr9   r   )r"   r0   _eval_nseriesgetn)NMs     r`   tNtest_loggamma.<locals>.tNe  s1    !}**1*2779Q>>>rb   )"r,   	TypeErrorr+   r"   r	   r   r   r!   r   r
   r   rZ   r   r   r   r   r   doitr2   r0   r\   r%   r   r   nseriesr)   r[   removeOrj   rd   cancelr   r   r_   )r2   LEs1s2r   s         r`   test_loggammar     s	   
9,-
;<B<2B<2A;"A;!A;!A;#a&   A;#a&   sD40AA;#eAh-'''QB<2AaC=CQBFDH 4U1X =eAaC!&&L>Q QRRRRB<2RC=CAbD>S   QBrE?c!!!C=CC=C"a!A
3q6	HXa^,,s1v5A>RH3r7RAq> A%%%335ACCE>>"a!A
3q6	HXa^,,s1v5A>RH3r7RAq> A%%%335ACCE>>"a!A
3q6	CFXhq!n55A>RHAq> A%%%335ACCE>>"a1$%A	Q#a&8HQN33aAh>1RGAq> A%%%335ACCE>>"a1$%A	R3r7SV#hx1~&>>3q6IAaCPRFRAq> A%%%335ACCE>>A;A)Aq/111	!QQZ.3q6)	*	2	21	2	:Bqs8)a-!A#	QrT1	,C!Ha/?/B	BQq!tW	LAq!tA
BG$'//1Q666	!A#		a	 B
A#,AaC	 1Q3	&QrT1	4	"
!tCx
Q$t)
$&'1g
.BW4(113q888A;}-U1X>>>	!		A		%	%	'B#a&:a<'"a%1*R-7!Q$yA:Nq:PP
Aad
3Ai1o-c1245adG< < < <!$$]3::1=DDFFFFXa[!Xil%;;;;Xa[!R'''Xa[!Xil%;;;;Xrc]#y~555F3./774???F3T*+33u<<<F3./775@@@F3D12::eCCCF3D12::BBBF3$/088@@@F3T*+33;;;F3K ((000AFF##t+++A;%'''HRO$,,555A;&&&A!G$$,,,?q!Hq!Hq!Hq!Hq!Hq!Hrb   c                  z   [        SS[        -  5      R                  [        SS9[        [        5      * [        S-  -
  [        S-  S-  -
  [	        [        S-  5      -   :X  d   e[        SS[        -  5      R                  [        SS9[        [        S-  S-  -   [        S-  S-  -   [	        [        S-  5      -   :X  d   e[        SS[        -  5      R                  [        S	S9S[        S-  -  S[        S
-  -  -   S[        S-  -  -   [        S-  -
  S
[        S-  -  S-  -   [	        [        S	-  5      -   :X  d   eg )Nr   r9   r;   r   r:   rh   r>   ri   r   r?   r@   r   )r%   r0   r   r   r)   rj   re   rb   r`   test_polygamma_expansionr   o  s(   Q!$$Q!$,	Q!A#1R!AqD')* * *Q!##A#+	AqDF
QT!Va1g%& & &Q!$$Q"$-	!Q$1a4!AqD& 1a4'!AqD&(2Qq"uX=> > >rb   c                      [        S[        -  5      * [        SSS[        -  -   5      -   [        R                  -   n U R                  [        [        * S9[        R                  :X  d   eg )Nr9   r   )logx)r   r0   r%   r   r   as_leading_termr1   )rs   s    r`   test_polygamma_leading_termr   y  sR    !H9yA!G,,q||;D+q||;;;rb   c                  \   [        SSSS9n [        SSS9n[        SSS9n[        SSS	S9n[        U 5      R                  S	L d   e[        U5      R                  b   e[        U5      R                  SL d   e[        U5      R                  SL d   e[        [        5      R                  b   eg )
Nr2   T)r   r4   r   r3   or   r   F)r   r!   r_   r5   )r2   r   r   r   s       r`   test_issue_8657r   ~  s    sT40AsD!AsT"AsT51A8u$$$8###8t###8t###8###rb   c                  b   [        SSS9n [        SSS9n[        SSS9n[        SSS9n[        S	SS
9n[        SSS
9n[        SSSS9n[        U 5      R                  SL d   e[        U5      R                  b   e[        U5      R                  b   e[        U5      R                  b   e[        U5      R                  b   e[        U5      R                  b   e[        U[        R                  -   5      R                  SL d   e[        U[        R                  -
  5      R                  SL d   eg )Nr0   Tr   r1   r   zFr   qr3   r   r   )evenr   )r   r!   r   r   rZ   )r0   r1   r   r   r   r   r   s          r`   test_issue_8524r     s    sT"AsT"AsU#AsU#AsD!AsE"As-A84'''8'''8'''8'''8'''8'''QVV((D000QVV((E111rb   c                     [        [        SS5      [        5      R                  5       [        [        SS5      [        5      :X  d   e[	        [        [        SS5      5      R                  5       [	        [        [        SS5      5      :X  d   e[        [        [        SS5      S5      R                  5       S-
  5      S:  d   e[        [	        [        SS5      S5      R                  5       S-
  5      S:  d   eg )Nr;   rB   r:   gs?0?g&.>g`P
!e@)r'   r   r0   r   r#   rp   re   rb   r`   test_issue_14450r     s    hq!na(..0Jx1~q4QQQQa!Q(..0Jq(1a.4QQQQz(1a.!,224}DELLLz(1a.!,224|CDtKKKrb   c                  Z    [        SSSS9n [        [        U 5      [        5      (       d   eg )Nr}   T)r4   rT   )r   r   r!   )r}   s    r`   test_issue_14528r     s'    sDd3AeAh&&&&rb   c                     SSK Jn   [        S5      n[        S5      n[	        [
        U5      R                  [        XS-
  -  S-  -  U " [        [
        SU-
  S-  -   5      USU45      -  5      (       d   e[        [	        [
        U5      5      R                  [        [        U5      S-
  [        U5      -  S-  -  U " [        [        [
        5      S[        U5      -
  S-  -   5      USU45      -  5      (       d   e[        [	        [
        S5      5      [        [        [
        5      5      :X  d   e[        SSS	9n[        [	        [
        U5      5      R                  [        US-
  U-  S-  -  U " [        [        [
        5      S[        U5      -
  S-  -   5      USU45      -  5      (       d   e[	        [        S5      [        L d   e[	        [        S5      R                  5       [        L d   e[	        SS5      S:X  d   e[	        SS5      S:X  d   e[	        S
S5      S:X  d   e[	        SS5      [        S5      :X  d   e[	        [        R                  S5      [!        [        5      :X  d   e[	        SS5      [        :X  d   e[	        SS5      [        S-  :X  d   e[	        SS
5      ["        L d   e[	        SS
5      [        S-  S-  :X  d   e[	        S
S
5      S
[        S-  -  S-  :X  d   e[	        [
        S5      R%                  [
        5      [        [
        5      ['        S[
        5      -  :X  d   e[	        [
        S5      R%                  [
        5      [!        [        5      [        [
        5      -  [        [
        [        R                  -
  5      -  ['        S[
        5      -  [!        [        5      [        [
        5      -  [        [
        [        R                  -
  5      -  ['        S[
        [        R                  -
  5      -  -   :X  d   e[	        [
        S-
  S5      R)                  SS9[        [
        5      [
        S-
  -  :X  d   e[	        [
        S-   S5      R)                  SSS9[
        [
        S-   -  [        [
        5      -  :X  d   e[	        [
        S-
  S5      R)                  SS9[!        [        5      [        [
        5      -  [        [
        [        R                  -   5      -  [
        S
-  S
[
        S-  -  -
  [
        [+        SS5      -  -   [+        S
S5      -
  -  :X  d   e[	        [
        S-
  S
5      R)                  SS9[        [+        S
S5      -  [        [
        5      S-  -  [        [
        [        R                  -   5      -  [
        S-  S[
        S-  -  -
  S[
        S
-  -  S-  -   S[
        S-  -  -
  [
        [+        SS5      -  -   [+        S
S5      -
  -  :X  d   e[	        [,        S5      R/                  [        5      [        [,        S-
  5      :X  d   e[	        [,        S5      R/                  [        5      [!        [        5      [        [,        [+        S
S5      -
  5      -  [        [,        S-
  5      -  :X  d   e[	        [,        S
5      R/                  [        5      [        [+        S
S5      -  [        [,        S-
  5      -  [        [,        [+        S
S5      -
  5      -  [        [,        S-
  5      -  :X  d   e[	        [+        SS5      S
SS9R0                  S:X  d   e[	        [        R                  S
SS9R0                  S:X  d   e[	        SSSS9R0                  S:X  d   e[	        SS
SS9R0                  S:X  d   e[	        SS
SS9R0                  S:X  d   e[	        SS
SS9R0                  S:X  d   e[	        S
S
SS9R0                  S:X  d   eg )Nr   )Productr   _kr9   r?   r:   Tr   r;   r<   r=   rH   FrR   r   r>   ri   7   rA      rC   rX   rW   gffffff?)sympy.concrete.productsr   r   r   r$   r0   dummy_eqr
   r!   r   r   r	   r   r   r   rZ   r   r   r\   r%   r[   r   r2   rd   r_   )r   r   r   s      r`   test_multigammar     s   /sA	tBa$$R!U)A+%6a1r61*n%Aqz2&3 4 4 4 4 Z1%&//ilQ6F!66 1ila	"oq5H&H IBPQST:V1W X X X XZ1%&%	!*====sT"AZ1%&//a!eQYq[0Aila	"oq%889B1:F1G H H H H c1$$$b!!!#r)))aq   aq   aq   c13///affa DH,,,ar!!!ar!t###as"""ar1uQw&&&aqQwqy(((a  #uQx	!Q'????a  #tBxa'8q166z9J'J!Q(r(58+E!aff*,==i1qvv:>VV(W W W W a!eQ&&D&1U1Xq1u5EEEEa!eQ&&De&<1q5	aA   a!eQ&&D&1T"XeAh5Fa!&&j6a4!AqD&=1Xb!_+<<x1~M6O O O Oa!eQ&&D&1R!Q5GaRS5Sa!&&j6a4!AqD&=2ad7194r!Q$w>8BPQ?ARRU]^_abUcc6e e e e a##I.)AE2BBBBa##I.$r(!hq!n$%3&&/A&637 7 7 7a##I."hq!n2D!a%3"1x1~#56377@Q7G3H H H H hr1oq59AAUJJJaffa%088EAAAaU+33u<<<aU+33u<<<dA.66%???c1u-55===aU+33t;;;rb   c                     [        [        5      R                  [        5      S[        -  :X  d   e[        S[        -   5      R                  [        5      [        S5      :X  d   e[        [	        [        5      5      R                  [        5      [        S5      :X  d   e[        [        [        5      5      R                  [        5      S[        -  :X  d   eg )Nr9   r:   )r!   r0   r   r   r   r   re   rb   r`   test_gamma_as_leading_termr    s    8##A&!A#---Q<''*ad222Q=((+qt333Q=((+qs222rb   N)\sympy.core.functionr   r   
sympy.corer   sympy.core.numbersr   r   r   r	   r
   r   sympy.core.singletonr   sympy.core.symbolr   r   (sympy.functions.combinatorial.factorialsr   %sympy.functions.combinatorial.numbersr   $sympy.functions.elementary.complexesr   r   r   r   &sympy.functions.elementary.exponentialr   r   r   %sympy.functions.elementary.hyperbolicr   (sympy.functions.elementary.miscellaneousr   (sympy.functions.elementary.trigonometricr   r   r   r   r   r   r   'sympy.functions.special.gamma_functionsr    r!   r"   r#   r$   r%   r&   r'   &sympy.functions.special.zeta_functionsr(   sympy.series.orderr)   sympy.core.exprr*   r+   sympy.testing.pytestr,   ro   r-   r   r.   r   r/   r   r0   r1   r2   r5   ra   rf   rk   rv   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  re   rb   r`   <module>r     s   1 ! > > " - > : I I H H 6 9 E E C C H  H  H 7   % 2 '@ @ 3K
3K
3
3TA6H;V1CcL.cb|M~0f1Kh"L.0$]@><
	$2"L'9<v3rb   