
    [hm                         S SK 7  S SKJrJrJr  S rS rS rS rS r	S r
S	 rS
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS r S r!S  r"g!)"    )*)round_up
from_floatmpf_zeta_intc                  :    [        SS5      [        S5      :X  d   eg )Nr   
         )r   r        S/var/www/auris/envauris/lib/python3.13/site-packages/mpmath/tests/test_gammazeta.pytest_zeta_int_bugr      s    2*T"2222r   c                  
   [        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S	5      S
:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      S
:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      u  pU S-  S:X  d   eUS:X  d   e[        S5      u  pU S-  S:X  d   eUS:X  d   eS[        l        [        S5      S:X  d   e[        S5      S:X  d   e[        S5      R	                  S5      (       d   e[        S5      S:X  d   e[        S	5      R	                  S5      (       d   e[        S5      S:X  d   e[        S5      R	                  S 5      (       d   e[        [        S5      5      S!:X  d   e[        [        S"5      5      S#:X  d   e[        [        S$5      5      S%:X  d   e[        [        S&5      5      S':X  d   eS([        l        [        [        S5      5      S):X  d   e[        [        S"5      5      S*:X  d   e[        [        S$5      5      S+:X  d   e[        [        S&5      5      S,:X  d   eS[        l        [        S5      R	                  [        S5      S--  5      (       d   eS.[        l        [        S5      R	                  [        S5      S--  5      (       d   eS[        l        g )/Nr   )   r   r   )   r   )r         )r   r      )r         r   )r   *      r   )r   B      )iMi
     )i[  i         d(	 is	i	   l   kL3 iq   r	   gUUUUUU?ggaa?z0.0757575757575758   z7.62772793964344e+267順 z-5.82229431461335e+376755iz1.19570355039953e+6767525842   z50.075757575757575757575757575757575757575757575757576z87.6277279396434392486994969020496121553385863373331e+267z<-5.8222943146133508236497045360612887555320691004308e+376755z>1.1957035503995297272263047884604346914602088317782e+676752584r   iP  )bernfracmpdps	bernoulliaestrmpf)pqs     r   test_bernoullir,      s   A;%A;&   A;%A;%A;'!!!A;%A;&   A;'!!!B<6!!!B<;&&&B<;&&&C=DAv:""";;D>DAv:###	>>BFQ<1Q<4Q<??4    Q<1Q<??6""""Q<1Q<??5!!!!y}!5555y~"9999y $????y!"&CCCCBFy}!XXXXy~"\\\\y $bbbby!"&ffffBFR=CF2I&&&&BFR=CF2I&&&&BFr   c                  f   S[         l        [        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S	5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S
5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        SS5      R                  S5      (       d   e[        S S5      R                  S!5      (       d   e[        S S5      R                  S5      (       d   e[        S S5      R                  S5      (       d   e[        S S5      R                  S"5      (       d   e[        S S5      R                  S5      (       d   e[        S S5      R                  S 5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S	5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S
5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S#5      (       d   e[	        SS5      R                  S$5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S%5      (       d   e[	        SS5      R                  S
5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S&5      (       d   e[	        SS5      R                  S#5      (       d   e[	        SS5      R                  S'5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S(5      (       d   e[	        SS5      R                  S)5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S	5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S*5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S+5      (       d   e[	        SS5      R                  S,5      (       d   e[	        SS5      R                  S5      (       d   e[	        SS5      R                  S5      (       d   e[	        S S5      R                  S-5      (       d   e[	        S S5      R                  S.5      (       d   e[	        S S5      R                  S5      (       d   e[	        S S5      R                  S/5      (       d   e[	        S S5      R                  S05      (       d   e[	        S S5      R                  S15      (       d   e[        S2S25      R                  S35      (       d   e[        S4S55      R                  S65      (       d   e[	        S4S55      R                  S75      (       d   eg )8Nr   r   r   r   z1/2z3/4r   z-3/2z-1/2z1/4z3/2z13/6z1/6z-1/12z-1/48r   z-3/64r   z119/30z-1/30z7/240z7/3840r   z25/1024r   z665/66z5/66z-2555/33792z-2555/34603008   z-555731/4194304z-1/4z-3/16z-9/4z-11/64z9/4z5/16z57/256z361/1024z-50521/1024z-36581523/1048576z-699/4z691/4z-512343611/4194304z-691/4z699/4'  z5.8196915936323387117e+39999   g     1@gJrg,Qr%)r$   r%   bernpolyr'   	eulerpolyr
   r   r   test_bernpoly_eulerpolyr6   4   sl   BFAb>QAa=AAe""""Ae""""Aa=AAa=AAb>V$$$$Aa=F####Ae""""Ae&&&&Aa=E""""Aa=E""""Ab>V$$$$Aa=E""""Ae((((Ae((((Aa=E""""Aa=F####Ab>R    Aa=AAe""""Ae((((Aa=AAa=AAb>X&&&&Aa=G$$$$Ae((((Ae))))Aa=G$$$$Aa=H%%%%Ab>R    Aa=AAe""""Ae	****Aa=AAa=ABr?h''''Bq>V$$$$Bu  ////Bu  !12222Bq>V$$$$Bq>X&&&&Br?c""""Bq>QBu  ####Bu  !23333Bq>QBq>R    Qr?a    Qq>QQu  ####Qu  ####Qq>QQq>QQr?f%%%%Qq>V$$$$Qu  ####Qu  ''''Qq>U####Qq>U####Qr?a    Qq>QQu  ((((Qu  ))))Qq>QQq>QQr?f%%%%Qq>U####Qu  ####Qu  ****Qq>V$$$$Qq>U####Qr?a    Qq>QQu  ((((Qu  ****Qq>QQq>QQr?f%%%%Qq>V$$$$Qu  ####Qu  ,,,,Qq>U####Qq>U####Rq!!!!R?a    R!!-0000R!!"56666R?a    R?a    Rx((((R?g&&&&R!!!$$$$R!!"67777R?h''''R?g&&&&E% ##$BCCCCC  !:;;;;S!!"<====r   c                     S[         l        [        S5      R                  S5      (       d   e[        S5      R                  S5      (       d   e[        S5      R                  S5      (       d   e[        S5      R                  S	5      (       d   e[        S
5      R                  S5      (       d   e[        S5      R                  S5      (       d   e[        S5      R                  S5      (       d   e[        S5      R                  S5      (       d   eSn [	        SS5       H  n[        U5      U :X  d   eX-  n M     S H8  nSn U[         l        [	        SS5       H  n[        U5      U :X  d   eX-  n M     M:     S[         l        [        S5      R                  [        [        5      5      (       d   eS[         l        [        S5      [        S5      s=:X  a  S:X  d   e   e[        S5      S:X  d   e[        [        [        5      5      (       d   e[        S5      R                  S5      (       d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S 5      R                  S!5      (       d   e[        S"5      R                  S#5      (       d   e[        S$5      R                  [        S%S#5      5      (       d   eg )&Nr         ?g~?@-C6?g	!@i,  z1.0201917073881354535e612r	   gkﴑ[gQgf<9b1?y      ?      ?y}?'މ^eÿy      {Gz?yT})ۿOf[X@y      4@      >@y<lsfsuWAr   r   )   iX  i   d         ?r   r   r   L  z4.8579168073569433667e2866r   r   g      ?y       @       @yaaJ
!z¶%@1e10000z 2.302485092994045684017991e100041e10000jz!-1.570796326794896619231322e10000)r$   r%   gammar'   rangesqrtpi	factorialfacisnannanrgammaloggammampc)factir%   s      r   
test_gammarN      s   BF;>>/0000=12222:==45555;>>01111<??45555 ;>>JKKKK?LMMMM=EFFFF D1b\Qx4	  q#A8t###ID   BF:==b""""BFQ<3q6&Q&&&&&Q<1s;>>67777!9>>":??!9!9D>MNNNNI!!"DEEEEJ""3'JKm#noooor   c                     S[         l        [        S5       V s/ s H  n [        U 5      PM     sn / SQ:X  d   e[        S5      R	                  S5      (       d   e[        S5      R	                  S5      (       d   e[        S5      R	                  S	5      (       d   e[        S
5      R	                  S5      (       d   e[        [
        5      [
        :X  d   e[        [        [
        * 5      5      (       d   eg s  sn f )Nr   r   )
r   r   r   r   r   r   0   r;   i  i  r/   gUUUUUU?r1   ggjVQr"   g!a?@Fy      ?      ?yHO?j6.Vֿ)r$   r%   rB   fac2r'   infrG   )ns    r   	test_fac2rT      s    BF"2Y'YDGY'+HHHH8;;t9<<    8;;-....	?LMMMM9sd (s   C7c                  f	   S[         l        Sn Sn[        n[        S/SS/5      S:X  d   e[        SS/S/5      [        :X  d   e[        [        S/S	/5      U" SU -   5      U" S	U -   5      -  -
  5      S:  d   e[        [        SS/S	S/5      U" SU -   5      U" SU -   5      -  U" S	U -   5      -  U" SU -   5      -  -
  5      S:  d   e[        S
S5      S:X  d   e[        SS5      S:X  d   e[        SS5      S:X  d   e[        [        [        5      R                  [        S[        -  5      [        [        5      -  5      (       d   e[        SS5      R                  S5      (       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:X  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
:X  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:X  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:X  d   e[        SS5      S:X  d   e[        SS5      [        :X  d   e[        S
S5      [        :X  d   e[        SS5      [        :X  d   e[        SS5      R                  S5      (       d   e[        SS5      R                  [        S-  5      (       d   eS[        SS5      -  R                  S5      (       d   e[        [        [        5      S:X  d   e[        [        [        * [        5      5      (       d   e[        [        S[        5      5      (       d   e[        [        S[        5      5      (       d   e[        [        S 5      [        S [        5      s=:X  a  S:X  d   e   e[        [        S!5      [        :X  d   e[        [        S"5      [        * :X  d   e[        S#S[        S-  -
  5      R                  S$5      (       d   e[        S"S 5      S:X  d   e[        SS
5      R                  S%5      (       d   e[        SS5      R                  S&5      (       d   eg )'Nr   g:0yE>r9   r   r.   r   r/   r   r   g      @r      z-255.5815971722918z-0.5119253100282322z-0.1952720278805729485r      r   r   g      @      ?g     @@r>   i"9	 gUUUUUU?   l     I5 r<   grP@r=         r	         ?       @y+5?\K9ʵ?gUUUUUUտz18.157330562703710339)r$   r%   rA   	gammaprodrR   absrfjr'   ffbinomialbetarD   rG   )hepGs      r   test_gamma_quotientsrh      sh   BFA	BAbT2b'"a'''bVRD!S(((y"rd#a1ga1go56===y"R"Q(1RT71RT7?1RT7+B1QqS6+IIJTQQQa7a<<c!9b8r>>a7::eAaCjq)****"#89<<=UVVVVb8q==b8r>>a7b==a7a<<Aa=AAa=AAb>QAa=AAa=BAa=BAa=ABq>QBr?aC'''Dt###Dv%%%!9>>!9!92;#A;>>$C=BrE""""43<##$9::::C=Asd3    baC=DSM.Q.....D>S   D>cT!!!R!V NOOOOS>Q1:==$%:;>>?VWWWWr   c                  (   S[         l        [        S5      R                  [        S-  S-  5      (       d   e[        S5      R                  [        S-  S-  5      (       d   e[        [        S5      5      R                  [        S-  S-  5      (       d   e[        S5      R                  S5      (       d   e[        S5      R                  S5      (       d   e[        S	5      R                  S
5      (       d   e[        S5      R                  [        S5      * S-  5      (       d   e[        S5      S:X  d   e[        S5      R                  [        S5      S-  5      (       d   e[        S5      S:X  d   e[        S5      S:X  d   e[        [        [        5      5      (       d   e[        S5      R                  S5      (       d   e[        S5      R                  S5      (       d   e[        [        S	S5      5      R                  S5      (       d   e[        [        S	S5      5      R                  S5      (       d   e[        [        S	S5      5      R                  S5      (       d   e[        [        SS5      5      R                  S5      (       d   e[        [        SS5      5      R                  S5      (       d   eS[         l        Sn [        [        S	U 5      5      R                  SS5      (       d   eS[         l        [        S5      SS-  -  R                  S5      (       d   e[        SS	5      S:X  d   e[        SS5      S	:X  d   e[        SS	S5      R                  S5      (       d   e[        S S!5      R                  S"5      (       d   eg )#Nr   r   r   g       @r<   r   r   r	   r=   gs~]r   r   rW   r.   x   rV   KH9KHg"fD,@gOc5@g9@Ww'&l7r"   z8236.5242296658162058024755079556629786895294952121891237gaU,$Db6y      N      @r   "   y9A!@.@g9B.ֿr\   y              ?yN*i6?)	r$   r%   zetar'   rD   rK   r)   rG   rH   )ims    r   	test_zetarr      s   BF7::b!eai    9<<A	""""A<??2q519%%%%9<<???7::d9<<,----8;;Awrz""""8q==8;;s1vcz""""8q==:??c;>>$<??4    C/0144Q7777C/0144Q7777C/0144Q7777E% !$$T****F5!"%%d++++BF	CBC  E****BFL2r6!%%&LMMMM#;!!9#a=01111T?OPPPPr   c                     S[         l        [        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S	5      S
:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      R                  [	        S5      5      (       d   e[        S5      R                  [
        S-  S-  5      (       d   e[        S5      R                  S[
        S-  -  S-  5      (       d   e[        S5      S:  d   e[        SSS9S:  d   e[        SSS9S:X  d   e[        SSS9S:  d   e[        SSS9S:X  d   e[        S5      [        S5      :X  d   eSn [        U 5      R                  SSSU -
  -  -
  [        U 5      -  5      (       d   eSn [        U 5      R                  SSSU -
  -  -
  [        U 5      -  5      (       d   e[        S5      R                  S5      (       d   e[        S 5      R                  S!5      (       d   e[        S"5      R                  S5      (       d   e[        S#5      R                  S5      (       d   e[        [        S"S$5      5      R                  S5      (       d   e[        [        S#S$5      5      R                  S5      (       d   eg )%Nr   rW   r   rV   rk   r=   r   r8   r.   g      r/   ig  z\Ar   r   r   r   I   i jh r"   <   droundingur2         @        r         @      @y            @      Yg@o.>Vg?g^s?rl   rm   rn   )r$   r%   altzetar'   logrD   rp   rK   )ss    r   test_altzetar      s   BF2;!2;!4=A1:2;$2;&   2;$3<=(((1:==Q    1:==Qr""""2;>>"RV)G+,,,,2;??2$q(((2$)))53'!+++53'1,,,4=GAJ&&&A1:==!A!H*d1g-....A1:==!A!H*d1g-....6?677773<??.////5>S!!!!6?c""""3uU#$'',,,,3ve$%((----r   c                     S[         l        [        [        5      S:X  d   eS[         l        [        S5      R	                  S5      (       d   e[        S[
        -  5      R	                  S5      (       d   eS[         l        [        S	5      n S[         l        [        U S-
  5      S
:X  d   e[        [
        S-  [        S9S:  d   e[        S[        S9S:  d   e[        [
        S-  5      S:X  d   e[        S5      S:X  d   eg )Nr   r   r"   r<   z61.0000000000000000000000000000007888609052210118073522(   z61.0000000000000000000000000000000000000148407238666182r2   i  z1.02363019598118e-9934r   rw   i  )r$   r%   rp   rR   r'   rD   r(   r   )vs    r   test_zeta_huger   >  s    BF9>>BF9<<PQQQQ2;>>RSSSSBFUABFqs8////4(+a///x(1,,,4=A:??r   c                      S[         l        [        * SS-  -  n S[         l        [        [	        U 5      5      S:X  d   eS[         l        [        [	        U 5      5      S:X  d   eS[         l        g )N   r   r   r   z=2.55880492708712e+1233536161668617575553892558646631323374078r"   z`2.5588049270871154960875033337384432038436330847333e+1233536161668617575553892558646631323374078)r$   r%   rD   r(   rp   )as    r   test_zeta_negativer   M  s[    BF	BF
ABFtAw<ZZZZBFtAw<}}}}BFr   c            	      j
   S[         l        S n S nU " S5      [        SS5      s=:X  a  [        S5      :X  d   e   eU " [        5      R                  S5      (       d   eU " [        * 5      R                  S5      (       d   eU " [        * S-   5      R                  S	5      (       d   eU " [        [        -   5      R                  S
5      (       d   eU " [        * [        -
  5      R                  S5      (       d   e[        U S5      R                  S5      (       d   eU " S5      R                  S5      (       d   eU " S5      R                  S5      (       d   eU " S5      R                  S5      (       d   eU " S5      R                  S5      (       d   eU " [        5      [        :X  d   eU" [        5      S:X  d   e[        S[        5      S:X  d   eU" [        5      R                  S5      (       d   eU" [        * 5      R                  S5      (       d   eU" [        [        -   5      R                  S5      (       d   eU" [        * [        -
  5      R                  S5      (       d   eS[        SSS[        -  [        -  -   5      -  R                  S5      (       d   eU " SS[        -  [        -  -   5      R                  S5      (       d   e[        U " [        5      5      (       d   e[        U " [        * 5      5      (       d   eU " S5      R                  S 5      (       d   eU " S!5      R                  U " S5      5      (       d   eU " S"5      R                  S#5      (       d   e[        [        S[        S[        5      5      5      (       d   e[        [        S[        S[        5      5      5      (       d   e[        [        S[        S[        * 5      5      5      (       d   e[        [        S[        S[        5      5      5      (       d   e[        [        S[        S[        5      5      5      (       d   e[        [        S[        S[        * 5      5      5      (       d   e[        [        S[        [        [        5      5      5      (       d   e[        [        S[        [        [        5      5      5      (       d   e[        [        S[        [        * [        * 5      5      5      (       d   eS$[         l        [        S%5      R                  [        S&S'5      5      (       d   eS[         l        g )(Nr   c                     [        SU 5      $ Nr   psizs    r   <lambda> test_polygamma.<locals>.<lambda>X  
    S1Xr   c                     [        SU 5      $ Nr   r   r   s    r   r   r   Y  r   r   r   r   guTE?g,$7@r   gdGDE@y)\Z[?ÕޛD?ybabJr?N<g?Vcb?绽|=g& _rn   g\)c=y|=|=yF<	 _    _AyWw'&l7Ww'&l7y\)c-ȥ\)c-Hr   ga#?g^jJ@yY/?Iyϐ=ӿ{?i@B r   r   yhVKٿy_%F@@K?r|   g69u@rz   y      Y      @y]vCq@˼@r   y            ?z%0.46317279488182026118963809283042317z$2.4821070143037957102007677817351115)r$   r%   r   digammarD   r'   ra   findrootrR   rG   rH   rK   )psi0psi1s     r   test_polygammar   V  s%   BFDD7c!Ah,'!*,,,,, 8;;*++++9<<*++++A;>>,----1:==CDDDDA;>>BCCCCD! 23333;>>,----;>>01111  !HIIII  !PQQQQ99>>q:??8;;*++++9<<*++++1:==CDDDDA;>>EFFFF#a"R%'	""&&'PQQQQ"R%'	?FGGGGcsd<??,----:==a!!!!=HIIIIQs1Sz"####Qs1Sz"####Qs1cT{#$$$$Qs1Sz"####Qs1Sz"####Qs1cT{#$$$$Qs3s|$%%%%Qs3s|$%%%%QsC4~&''''BF8$KMs tuuuuBFr   c                      S[         l        [        [        S[        5      5      S:X  d   e[        [        S[        5      5      S:X  d   eg )Nr<   r   zf0.9772133079420067332920694864061823436408346099943256380095232865318105924777141317302075654362928734r   zf-12.98876181434889529310283769414222588307175962213707170773803550518307617769657562747174101900659238)r$   r%   r(   r   rD   r
   r   r   test_polygamma_high_precr     sS    BFs1Ry>  F  F  F  Fs2bz?  G  G  G  Gr   c                  $   S[         l        S n S nS nU " S5      R                  [        * S[	        S5      -  -
  5      (       d   eU " S5      R                  [        * 5      (       d   eU" S5      R                  S[
        S-  -  5      (       d   eU" S5      R                  [
        S-  S-  5      (       d   eU" S	5      R                  [
        S-  S
[        -  -   5      (       d   eU" S5      R                  S[        -  5      (       d   eS[         l        S[        -  S[        S5      -  [
        S-  -  -   nS[         l        [        SS5      R                  U5      (       d   e[        SS5      R                  [
        S-  5      (       d   eg )Nr   c                     [        SU 5      $ r   r   r   s    r   r   +test_polygamma_identities.<locals>.<lambda>  r   r   c                     [        SU 5      $ r   r   r   s    r   r   r     r   r   c                     [        SU 5      $ )Nr   r   r   s    r   r   r     r   r   r=   r   r   r   r8   r   rW   rX   iJr   r   g?)
r$   r%   r'   eulerr~   rD   catalanaperyrC   r   )r   r   psi2ry   s       r   test_polygamma_identitiesr     sE   BFDDD9<<qQx((((7::uf9<<BE	""""7::b!eAg:==Q7*++++7::bhBFU
1T!W9RU?"ABFq;>>!q:==Qr   c                  ^   S n S[         l        S[        SS5      -  nS[        SS5      -  nU " SU-  5      * U " SU-  5      -
  U " SSU-   -  5      -   U " SSU-
  -  5      -   nS[        -  [	        S[        S5      -  [        -  5      -  nUR                  U5      (       d   eS	[         l        g )
Nc                     [        SU 5      $ r   r   r   s    r   r   'test_foxtrot_identity.<locals>.<lambda>  r   r   r"   r   r   r   r   r=   r	   r   )r$   r%   fractionrD   sechrC   r'   )r   r   bxys        r   test_foxtrot_identityr     s     DBF	hqmA	hqmA	c!etDF|#d3!9o5S!A#YGA	"T#d1g+b.!!A4477N7BFr   c                     S[         l        [        [        S[        5      5      S:X  d   e[        [        S[        S[
        -  -   5      5      S:X  d   e[        [        S[        S[
        -  [        -  -   5      5      S:X  d   eS[         l        [        [        S[        5      5      S:X  d   e[        [        S[        S[
        -  -   5      5      S	:X  d   e[        [        S[        S[
        -  [        -  -   5      5      S
:X  d   eg )Nr<   r"   zf-1344100348958402765749252447726432491812.641985273160531055707095989227897753035823152397679626136483   zw-0.00000000000000000189793739550804321623512073101895801993019919886375952881053090844591920308111549337295143780341396z(-0.00000000000000005225169411521692489752254721556835657523758895106315132447859377385233700094871256507814151956624433 - 0.00000000000000001813157041407010184702414110218205348527862196327980417757665282244728963891298080199341480881811613j)r   z-1.34410034895841e+39z-1.89793739550804e-18z.(-5.2251694115217e-17 - 1.81315704140701e-17j))r$   r%   r(   r   rD   era   r
   r   r   test_polygamma_high_orderr     s    BFs2r{   H  H  H  Hs2rBqDy!"  '`  `  `  `s2rBqDF{#$ *^ _ _ _ BFs2r{6666s2rBqDy!"&====s2rBqDF{#$(XXXXr   c                  B   S[         l        [        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      R                  S5      (       d   e[        S5      R                  S	5      (       d   e[        S
S-  5      R                  S5      (       d   e[        S5      R                  SS[	        S5      -  -
  5      (       d   e[        [
        5      [
        :X  d   e[        S5      S:X  d   e[        S5      R                  S5      (       d   eg )Nr   r   r   r   rZ   r   gUUUUUU?r   g_b7@r   r   gS@r=   y       @        y      ?        r]   yk4q?@w?)r$   r%   harmonicr'   r~   rR   r
   r   r   test_harmonicr     s    BFA;!A;!A;#A;>>*++++F45555BH  !23333C=AaAhJ''''C=CD>V###D>DEEEEr   c                      S[         l        [        S5      S-  n S[         l        [        [	        U 5      5      S:X  d   eS[         l        [        [	        U 5      5      S:X  d   eS[         l        g )N  r      r   z6.26075321389519e+12458010678r"   z@6.2607532138951929201303779291707455874010420783933e+12458010678r$   r%   r)   r(   rA   r   s    r   test_gamma_huge_1r     sY    BFFaABFuQx=;;;;BFuQx=^^^^BFr   c                      S[         l        [        SS-  5      S-  n S[         l        [        [	        U 5      5      S:X  d   eS[         l        [        [	        U 5      5      S:X  d   eg )	Nr   r   r<      r   zw1.82341134776679e+51729974693233641689901335581750771368291828240422018860515119656908623426021308685461258226190190661r"   z1.82341134776678875374414910350027596939980412984e+51729974693233641689901335581750771368291828240422018860515119656908623426021308685461258226190190661r   r   s    r   test_gamma_huge_2r     sm    BFBGrABFuQx=	34 4 4 BFuQx=	TU U Ur   c                  z   S[         l        SS-  S-  SS-  [        -  S-  -   n S[         l        [        U 5      n[	        UR
                  5      S:X  d   e[	        UR                  5      S	:X  d   eS
[         l        [        U 5      n[	        UR
                  5      S:X  d   e[	        UR                  5      S:X  d   eg )Nr   r   P   r   F   r   r   ze-6.82925203918106e+2636286142112569524501781477865238132302397236429627932441916056964386399485392600zd8.54647143678418e+2636286142112569524501781477865238132302397236429627932441916056964386399485392600r"   z-6.8292520391810548460682736226799637356016538421817e+2636286142112569524501781477865238132302397236429627932441916056964386399485392600z8.5464714367841748507479306948130687511711420234015e+2636286142112569524501781477865238132302397236429627932441916056964386399485392600r$   r%   ra   rA   r(   realimagr   r   s     r   test_gamma_huge_3r     s    BF
B!b"fQhl"ABFaAqvv;	 ! ! ! qvv;	      BFaAqvv;	CD D D qvv;	BC C Cr   c                      Sn S[         l        [        [        U 5      5      S:X  d   eS[         l        [        [        U 5      5      S:X  d   eS[         l        g )Ny      @     v@r   z2(8.95783268539713e+5164 - 1.94678798329735e+5164j)r"   zx(8.9578326853971339570292952697675570822206567327092e+5164 - 1.9467879832973509568895402139429643650329524144794e+5164j))r$   r%   r(   rA   r   s    r   test_gamma_huge_4r     sZ    ABFuQx=<= = =BFuQx=	   BFr   c                  ~   S[         l        SS-  [        -  S-  n S[         l        [        U 5      n[	        UR
                  5      S:X  d   e[	        UR                  5      S:X  d   eS[         l        [        U 5      n[	        UR
                  5      S	:X  d   e[	        UR                  5      S
:X  d   eS[         l        g )Nr   r   ru   r   r   zO-3.27753899634941e-227396058973640224580963937571892628368354580620654233316839zN-7.1519888950416e-227396058973640224580963937571892628368354580620654233316841r"   zr-3.2775389963494132168950056995974690946983219123935e-227396058973640224580963937571892628368354580620654233316839zr-7.1519888950415979749736749222530209713136588885897e-227396058973640224580963937571892628368354580620654233316841r   r   s     r   test_gamma_huge_5r     s    BF
B
QABFaAqvv;kkkkqvv;jjjjBFaAqvv;	-. . . qvv;	-. . . BFr   c                  z   S[         l        S[        [        S5      S-  -  -   n S[         l        [	        U 5      n[        UR                  5      S:X  d   e[        UR                  5      S:X  d   eS[         l        [	        U 5      n[        UR                  5      S:X  d   e[        UR                  5      S	:X  d   eg )
Nr<   r   r   r   r   z2.0z1.84556867019693e-1000r"   z91.8455686701969342787869758198351951379156813281202e-1000)r$   r%   ra   r)   rA   r(   r   r   )r   r   s     r   test_gamma_huge_7r     s    BF	Ac"gtmOABFaAqvv;% qvv;2222BFaAqvv;%qvv;VVVVr   c                     S[         l        [        S5      R                  [        75      (       d   eS[         l        [        S5      R                  S5      (       d   e[        S5      R                  S5      (       d   e[        S5      R                  S	5      (       d   e[        S
5      R                  S5      (       d   eS[         l        [        S5      R                  S5      (       d   e[        S5      R                  S5      (       d   e[        S5      R                  S5      (       d   e[        S
5      R                  S5      (       d   eg )Nr   r      r   z -0.07281584548367672486058637587r   z!-0.009690363192872318484530386035r   z 0.002053834420303345866160046543r   z 0.002325370065467300057468170178g*gF|؃gT3`?g;c?)r$   r%   	stieltjesr'   r   r
   r   r   test_stieltjesr     s   BFQ<??E6""""BFQ<??=>>>>Q<??>????Q<??=>>>>Q<??=>>>>BFQ<??;<<<<Q<??<====Q<??;<<<<Q<??<====r   c                  z   S[         l        [        S5      [        S5      s=:X  a  S:X  d   e   e[        S5       V s/ s H  n [	        U 5      PM     sn / SQ:X  d   e[        [	        S5      5      S:X  d   e[        [        [        5      5      (       d   e[        [	        [        5      5      (       d   e[        [        [        5      5      (       d   e[        [        5      [        :X  d   e[	        [        5      [        :X  d   e[        [        5      [        :X  d   e[        [	        [        * 5      5      (       d   e[        S5      R                  S	5      (       d   e[        S
5      R                  S5      (       d   e[        S5       Vs/ s H  n[        U5      PM     sn/ SQ:X  d   e[        SSS5       Vs/ s H  n[        U5      PM     sn/ SQ:X  d   e[        S5      nUS:X  a  [        U[        5      (       d   e[        S5      nUS:X  a  [        U[        5      (       d   eg s  sn f s  snf s  snf )Nr   r   r   r   )r   r   r   r   i   i   i {l     2ft r   z3.24570818422368e+1177245gffffff?gd?y       @      @ygƿ1?r   )r   r   r   l    l  i \&l     )r   r   r   rV   r   r   i y              rV   )r$   r%   barnesgrB   superfacr(   rG   rH   hyperfacrR   r'   
isinstancerK   )rM   rS   r   s      r   test_barnesgr   "  s   BF1:))))))!&q*AHQK*.____x~"====##3<3C=CC=C3$    3<??-....4=EFFFF!&q*AHQK*.\\\\!&qB0AHQK04SSSSA6jC((((A7z!S)))))! + +0s   H.H3=H8c                  d   S[         l        S V s/ s H  n [        U 5      PM     nn U H2  n [        SU 5      R	                  [        SU -
  5      * 5      (       a  M2   e   U H+  n [        SU 5      R	                  U SU -
  -  5      (       a  M+   e   U H.  n [        SU 5      R	                  U SU -
  S-  -  5      (       a  M.   e   U H4  n [        SU 5      R	                  U SU -   -  SU -
  S-  -  5      (       a  M4   e   U H=  n [        S	U 5      R	                  U SS
U -  -   U S-  -   -  SU -
  S
-  -  5      (       a  M=   e   [        SS5      R	                  S5      (       d   e[        SS5      R	                  S5      (       d   e[        SS5      R	                  S5      (       d   e[        SS5      R	                  S5      (       d   e[        SS5      R	                  S5      (       d   e[        SS5      R	                  S5      (       d   e[        SS5      R	                  S5      (       d   e[        SS[        [        5      -  5      R	                  S5      (       d   e[        SS5      R	                  S5      (       d   e[        SS5      R	                  S5      (       d   e[        SS5      R	                  S5      (       d   e[        S	S5      R	                  S5      (       d   e[        S	S5      R	                  S5      (       d   e[        S [        S-  -   S [        S-  -   5      R	                  S!5      (       d   e[        S"S5      R	                  [        S"5      5      (       d   e[        S"S5      R	                  [        S"5      * 5      (       d   e[        S#S$5      R	                  S%5      (       d   e[        S#S&5      R	                  S'5      (       d   e[        S(S5      R	                  [        S5      S)-  5      (       d   e[        S(S*5      R	                  S+5      (       d   eg s  sn f ),Nr   )r   r=   gGz?r   r	   rV   y              ?r{   r   r   r   r   rW   r   r.   r   r   y[-F@U޴r   g!fG?gV?ggy        ?y#]ſ`j?g?y8n+Yd?^n)ӿggᾁyp/M?[]?i  g jߊg=.g?i2  rV   g-C6zr=   yB8$P?g ?r{   rZ   gtHgWcFr3   yQ K1Q y               g      +@g      ?iL)r$   r%   	mpmathifypolylogr'   r~   rC   ra   rp   r}   r)   )r   zss     r   test_polylogr   7  s   BF E	F E1)A, EB	F1((#ac(3333R1((AaC1111RA))!QqS1H*5555RA))!QqS'1Q3(*:;;;;RA))!QqsU1a4Z.!A#*ABBBBR1a=HIIII1b>344441c?344441d677771dNOOOO1c?JKKKK1d677771c$q'k"%%&TUUUU2st$$$$2t	****1c?344442su%%%%2r?g&&&&3qs7C!G$''(XYYYY4?d4j))))4~....3+,//0BCCCC3 MNNNN5"  Q----5$""4((((5 
Gs   P-c                  h   S[         l        [        SS5      S-  R                  S5      (       d   e[        SS5      S-  R                  S5      (       d   e[        SS	5      R                  S
5      (       d   e[        SS5      R                  S5      (       d   e[	        SS5      S:X  d   e[	        SS5      S:X  d   e[	        SS5      S:X  d   e[	        S[
        5      S:X  d   e[	        S[
        * 5      S:X  d   e[        [	        S[        5      5      (       d   e[	        SS5      S:X  d   e[	        SS5      S:X  d   e[	        S[
        5      [
        :X  d   e[	        S[
        * 5      [
        * :X  d   e[        [	        S[        5      5      (       d   e[	        SS5      S:X  d   e[	        SS5      S:X  d   e[	        S5      S:X  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      R                  S5      (       d   eS[         l        [	        SS5      S:X  d   e[	        SS5      S:X  d   e[	        S5      S:X  d   eS[         l        [	        SS5      S:X  d   e[	        S S5      R                  [        [        S -  5      5      (       d   eg )!Nr   r   r   r   go   ?r   g8   ?r   y              @y)fɳ?@r   g      @g*
0(@r   r   r   i ii ii0r"   z3.4746902914629720259e74r   l   vreh@3 VBFv'r.y	UR|s&T r   l   .e0u&Y:j+I<1 |6vJb J   l   rw_3dtL#m,`3	.v(*A=V y              4@y @j#MB (3VjwBr=   )
r$   r%   polyexpr'   bellrR   rG   rH   sincrD   r
   r   r   test_bell_polyexpr   U  sz   BFAeV#''6666AeV#''55551R=IJJJJ2c?23333!9>>!9>>!9>>#;!3$<1a!9>>!9>>#;#3$<C4a":??!9>>8v1:B<8####;*$$$3<??56666BF3<ffff2;cccc8ffffBF3<8888A;>>$r#v,''''r   c                  0   S[         l        [        S5      R                  S5      (       d   e[        S5      R                  S5      (       d   e[        S5      [        :X  d   e[        [        5      S:X  d   e[        [        [        5      5      (       d   eg )Nr   r   y2k?-DT!	@r   gMҵ?r   r   )r$   r%   	primezetar'   rR   rG   rH   r
   r   r   test_primezetar   {  sx    BFS>KLLLLQ<??23333Q<3S>Q3    r   c                  h   S[         l        [        S5      R                  S5      (       d   e[        S5      R                  S5      (       d   e[        SSS9R                  S	5      (       d   e[        S
SS9R                  S5      (       d   e[        S
SS9R                  S5      (       d   e[        SSS9R                  S5      (       d   eS"S jn U " [        R                  S5      S5      (       d   eU " [        R                  S5      S5      (       d   eU " [        R                  S5      S5      (       d   eU " [        R                  SSS9S5      (       d   eU " [        R                  S
5      S5      (       d   eU " [        R                  S
SS9S5      (       d   eU " [        R                  SSS9S5      (       d   eU " [        R                  SSS9S5      (       d   eU " [        R                  SSS9S5      (       d   eU " [        R                  SSS9S5      (       d   eU " [        R                  SSS9S5      (       d   eU " [        R                  SSS9S5      (       d   eU " [        R                  SSS9S 5      (       d   eU " [        R                  SSS9S!5      (       d   eg )#Nr   y      ?     j@y& 6#+?@y      ?     j@y5g?7-m^I?y      ?    .Ar   
derivativey@V%<y      ?    .AyˇD@-2r   yV!V1y      ?    .y.F'@	p 1@c                 :    [        X-
  5      U[        U5      -  :  $ )N)r_   )r   r   tols      r   r'   test_rs_zeta.<locals>.ae  s    13x#c!f*$$r   y      ?     jy& 6#+?y      ?     jy5g?7-m^Iyz?ی^p@y.F'@	p 1y$P??y,ς?%@lUS>r   yԂ]5MԺ$k@y!&@\_Ur   y(1Sg@y-6ڿ+~y"虺m"'=UA@yِ@[@MomykLVy"DЫ@)gư>)r$   r%   rp   r'   fp)r'   s    r   test_rs_zetar     s   BF NOOOO  !NOOOO+../]^^^^
q),,-[\\\\
q),,-^____+../]^^^^%bggk"$RSSSSbggl#%RSSSSbggh!QRRRRbggh1g-/]^^^^bggfoOPPPPbggfg+-^____bggkag02_````bggkag02abbbbbggkag02`aaaabggkag02abbbbbgglqg13cddddbgglqg13`aaaabgglqg13abbbbbgglqg13abbbbr   c                  *   S[         l        [        S5      R                  S5      (       d   e[        SSS9R                  S5      (       d   e[        SSS9R                  S5      (       d   e[        S[        -   S	S9R                  S
5      (       d   eg )Nr   r!   g1/[㳄@r   r   gKKr   gFhnqr   yQ1@a߻w)r$   r%   siegelzr'   ra   r
   r   r   test_siegelzr     s    BF6?455556a(++,CDDDD6a(++,CDDDD6!8q),,-[\\\\r   c                     S[         l        [        SSSS9n [        SSSS9n[        SSSS9n[        U 5      R	                  S5      (       d   e[        U5      R	                  S	5      (       d   e[        U5      nUR
                  R	                  S
5      (       d   eUR                  R	                  S5      (       d   eS[         l        [        SSSS9n [        SSSS9n[        SSSS9n[        U 5      R	                  S5      (       d   e[        U5      R	                  S5      (       d   e[        U5      nUR
                  R	                  S5      (       d   eUR                  R	                  S5      (       d   eg )Nr   r   z1e-10T)exactz-1e-10z1e-10jg# _Bga_gox?g    _r   z1e-50z-1e-50z1e-50j1e50z-1e50z40.57721566490153286060651209008240243104215933593992)r$   r%   faddrp   r'   r   r   )s1s2s3r   s       r   test_zeta_near_1r     sC   BF	a	%B	a	&B	a	&B8;;788888;;67777RA6699+,,,,669934444BF	a	%B	a	&B	a	&B8;;v8;;wRA6699KLLLL6699Wr   N)#mpmathmpmath.libmpr   r   r   r   r,   r6   rN   rT   rh   rr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r
   r   r   <module>r      s     ; ;3+Ze>N%pN/Xb!QF.<+ZG
 "
YF
UC(
"W>**)<$(L!c6]r   