
    wgwD                     h    d dl  d Zd Zd Zd Zd Zd Zd Zd	 Zd
 Z	d Z
d Zd Zd Zd Zd Zy)    )*c                     dt         _        t        d      t        dd      k(  sJ t        d      t        dd      k7  sJ t        d      t        dd      k7  rJ t        dd      t        dd      k(  sJ t        t        d            dk(  sJ t	        t        d            dk(  sJ t        dd	      } d| v sJ d| v sJ d	| v sJ d
| vsJ d| vsJ t        dd	      | v sJ t        dd      | v sJ t        d
d      | vsJ t        dd      | vsJ t        t
         t
              }t        dd      |v sJ t        dt
              |v sJ t        dd      t        dd      v sJ d	t        t
         d      vsJ y )N         z0.1z1[0.099999999999999991673, 0.10000000000000000555]z2mpi('0.099999999999999992', '0.10000000000000001')   gg@r         @   
   )ivdpsmpistrreprinf)uws     _/home/mcse/projects/flask/flask-venv/lib/python3.12/site-packages/mpmath/tests/test_interval.pytest_interval_identityr      s   BFq6SAYq6SQZA#a)#$$r1:R###s5z?QQQQE
SSSSB
A7N76M66M6q==a<<r1:??q!9>>tQ<q   sC=!!!SD#Ar1:??q#;!q!9Ar
"""S#q\!"!    c                     t        t        d            t        d      k(  sJ t        t        d            t        d      k(  sJ t        t        dd            t        t        dd            k(  sJ t        t        j                  d            t        d      k(  sJ t        t        j                  dd            t        d      k(  sJ t        t        j                  dd            t        t        j                  dd            k(  sJ y )Nr
   g      
@   y      @      @)r	   r
   )r   r   )hashr   r   mpc r   r   test_interval_hashr      s    A<47"""D	?d4j(((Aa>T#a(^+++q	?d1g%%%qT
***uU#$RVVE%-@(AAAAr   c                  	   dt         _        t        d      t        dd      z   t        dd      k(  sJ t        dd      dz  t        dd      k(  sJ t        d      t        dd	      z   t        dt        d
            k(  sJ ddt        d      z  z  } | j                  dcxk  r| j
                  k  sJ  J t        d      t        d      z  } t         xj                  dz  c_        t         j                  d      }t         xj                  dz  c_        | j                  |cxk  r| j
                  k  sJ  J t        d      t        dt              z  sJ t        dd      t        z  t        dd      k(  sJ t        d      t        z  dk(  sJ t        d      dz  t        t         t              k(  sJ t        t              dz  t        t         t              k(  sJ t        d      t        z  t        t         t              k(  sJ dt        dt              z  t        dd      k(  sJ t        t        dd      t        dd      z  dz        dk(  sJ t        dd      dz  t        dd      k(  sJ t        dd      j                  dk(  sJ dt         _        t        t         j                        }dt         _        |}|j                  |j                  k  sJ |j
                  |j
                  kD  sJ t        t         j                        }||k(  sJ t        t        dd            t        dd      k(  sJ t        t        dd            t        dd      k(  sJ t        t        dd            t        dd      k(  sJ t        t        dd            t        dd      k(  sJ t        d      t        dd      z  t        d      k(  sJ t        dd      t        d      z  t        d      k(  sJ t        dd      j                  dk(  sJ t        dd      t        dd      z
  t        dd      k(  sJ t        t         d      t        dt              z
  t        t         d      k(  sJ t        t         d      t        t         t              z
  t        t         t              k(  sJ t        dt              t        t         d      z
  t        dt              k(  sJ y )Nr   r   r
   r   r      r	   r   gJz5z1.0000000000000002      ?2   iz0[-166.66666666666668561, -166.66666666666665719]@      r         )r   r   r   mpfabsqrtr   r   midpiabsdelta)xsqr)   r*   s       r   test_interval_arithmeticr2   #   s   BFq6C!HAa(((q!9a<3q!9$$$q6C5M!SC0D,E%FFFF	QQZA33=QSS===A#c(AFFaKF	BFFaKF33>acc>>>q6C3Kq!9s?c!Qi'''q6C<1q6A:cT3'''s8a<3tS>)))q6C<3tS>)))s1c{?c!Sk)))Bc#sm+q01:; ; ;q!9>SBZ'''q8<<1BFBEE
ABF	
A33993399BEE
A7N7s2ay>S1X%%%s3qz?c#aj(((s2ay>S1X%%%s2d|C
***q6C!HA&&&q8c!fA&&&q8>>Qq8c!Ah#b*,,,tA;Qs#sC4{222tA;cT#&#sd3-777q:SD#s2c{222r   c                     t        dd      t        z  t        t         d      k(  sJ t        dd      t         z  t        dt              k(  sJ t        dd      t        z  t        dt              k(  sJ t        dd      t        dt              z  t        dt              k(  sJ t        dd      t        z  t        t         t              k(  sJ t        dd      t        dt              z  t        t         t              k(  sJ t        dd      t        t         t              z  t        t         t              k(  sJ t        t         d      t        dd      z  t        t         d      k(  sJ t        t         d      t        dd      z  t        t         d      z  sJ t        t         d      t        t         t              z  t        t         t              k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        d	d
      t        dd	      z  t        dd      k(  sJ t        t        t              dz  t        t         t              k(  sJ t        t         t               dz  t        t         t              k(  sJ t        d      t        t         d	      z  t        t         t              k(  sJ t        d      t        dt              z  t        t         t              k(  sJ t        dt              t        d      z  t        t         t              k(  sJ t        t         d	      t        d      z  t        t         t              k(  sJ y )Nr   r   r	   r   i   it   r   r
   r&   r!   r   r   r   r   r   r   test_interval_mulr7   N   s   r1:sC4|+++r1:As+++q!9s?c!Sk)))q!9s1c{"c!Sk111r1:sC4~---r1:As#sC4~555r1:SD#&#sdC.888tQ<#a)#sC4|333tQ<#a)#c3$l222tQ<#sdC.(CcN:::r!9SR[ CSM111q8c"Qi3r!9,,,sC=1SD#...tcT?Q#sdC.000q6CQK3tC=000q6C3K3tC=000r#;Q3tC=000tA;Q3tC=000r   c                  X   t        d      dz  t        dd      k(  sJ t        d      dz  t        dd      k(  sJ t        dd      dz  t        dd      k(  sJ t        dd      dz  t        dd      k(  sJ t        dd      dz  t        dd      k(  sJ t        dd      dz  t        dd      k(  sJ t        d	d      dz  t        dd      k(  sJ t        dd      dz  t        dd      k(  sJ t        d
      dz  t        dd      k(  sJ t        d      dz  t        dd      k(  sJ t        d
      d	z  t        dd      k(  sJ t        d      d	z  t        dd      k(  sJ t        dd      t        z  t        dd      k(  sJ t        dd      t         z  t        dt              k(  sJ t        dt              t        z  t        dt              k(  sJ t        dt              t         z  t        dt              k(  sJ t        dt              t        z  t        dt              k(  sJ t        dt              t         z  t        dd      k(  sJ t        dd      dz  t        dd      k(  sJ t        dd      dz  dk(  sJ t        dd      t        d      z  t        dd      k(  sJ y )Nr
   r   	   r&   r	   r   r   ir   r         ?      пg      ?r6   r   r   r   test_interval_powr=   c   sz   q619Aq	!!!r7A:Q"""r1:q=C1I%%%r2;>SAY&&&r2;>Sb\)))r1:q=CQK'''r1:q=C1I%%%r1:q=C1I%%%q6R<3tT?***r7b=Cu----q6R<3vv....r7b=C////q!9s1ay(((q!9As+++q#;#Q,,,q#;3$#a+---q#;#Q,,,q#;3$#a)+++q!9>SAY&&&q!9>Qq8s1vQq)))r   c                  <    t        d      dz  t        d      k(  sJ y )Nr   r"   r   )r   r   r   r   test_interval_sqrtr?   z   s    q6S=CF"""r   c                     t        dd      t        dd      z  t        t         d      k(  sJ t        dd      t        dd      z  t        dt              k(  sJ t        t        t              t        t        t              z  t        dt              k(  sJ t        t        t              t        dt              z  t        dt              k(  sJ t        t        t              t        dd      z  t        t        t              k(  sJ t        dt              t        dt              z  t        dt              k(  sJ t        dt              t        dd      z  t        dt              k(  sJ t        dt              t        dd      z  t        dt              k(  sJ t        dt              t        dt              z  t        dt              k(  sJ t        dd      t        dt              z  t        dd      k(  sJ t        dd      t        dt              z  t        d	d
      k(  sJ t        t         d      t        dt              z  t        t         d
      k(  sJ t        t         t              t        dt              z  t        t         t              k(  sJ t        dt              t        dt              z  t        dt              k(  sJ t        d	t              t        dt              z  t        dt              k(  sJ t        dd      t        t        t              z  t        dd      k(  sJ t        dd      t        t        t              z  t        dd      k(  sJ t        dd      t        t        t              z  t        dd      k(  sJ t        t         d      t        t        t              z  t        t         d      k(  sJ t        t         d      t        t        t              z  t        t         d      k(  sJ t        t         t              t        t        t              z  t        t         t              k(  sJ t        d	t              t        t        t              z  t        dt              k(  sJ t        dt              t        t        t              z  t        dt              k(  sJ t        dt              t        t        t              z  t        dt              k(  sJ t        t        t              t        t        t              z  t        dt              k(  sJ t        dd      t        dd      z  t        t         t              k(  sJ t        dd      t        dd      z  t        dt              k(  sJ t        dd      t        dd      z  t        t         d      k(  sJ t        dd      t        dd      z  t        t         d      k(  sJ t        dd      t        dd      z  t        dt              k(  sJ t        dd      t        dd      z  t        dt              k(  sJ t        dd      t        dd      z  t        t         d      k(  sJ t        dd      t        dd      z  t        t         d      k(  sJ t        dd      t        dd      z  t        t         t              k(  sJ t        dd      t        dd      z  t        t         t              k(  sJ t        dd      t        dd      z  t        t         t              k(  sJ t        dd      t        dd      z  t        t         t              k(  sJ t        dd      t        dd      z  t        t         t              k(  sJ t        dd      t        dd      z  t        t         t              k(  sJ t        dd      t        dd      z  t        t         t              k(  sJ t        dd      t        dd      z  t        t         t              k(  sJ t        dd      t        dd      z  t        t         t              k(  sJ t        dd      t        dd      z  t        t         d      k(  sJ t        dd      t        dd      z  t        dt              k(  sJ t        dd      t        dd      z  t        dt              k(  sJ t        dd      t        dd      z  t        t         d      k(  sJ t        dd      t        dd      z  t        t         d      k(  sJ t        dd      t        dd      z  t        dt              k(  sJ t        dd      t        dd      z  t        dt              k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        dd      k(  sJ t        dd      t        dd      z  t        t         t              k(  sJ t        dd      t        dd      z  t        t         t              k(  sJ y )Nr"   r	   r   r   r'   r   r;         i        r<   r   r   r:   g       g      @g       @g      g       @g       g      g      ?      ?r6   r   r   r   test_interval_divrF   }   s
   sA;R#sC4666q!9s1ay C3K///sC=3sC=(C3K777sC=3q#;&#a+555sC=3q!9$C555q#;Q$As333q#;Q"c!Sk111q#;Q"c!Sk111q#;Q$As333r1:As#s2qz111r1:C%R444tQ<#c3-'3tR=888tS>CSM)S#s^;;;q#;S#&#a+555r3<#c3-'3sC=888r1:C%Q222q!9s3}$Aq	111q!9s3}$Aq	111tQ<#c3-'3tQ<777tQ<#c3-'3tQ<777tS>CSM)S#s^;;;r3<#c3-'3q#;666q#;S#&#a+555q#;S#&#a+555sC=3sC=(C3K777r1:Aq	!S#t_444q!9s1ay CcTN222r1:Aq	!S#s^333tUc!Qi'3tU+;;;;sA;Q"c#tn444sA;Q"c#tn444r4=3q!9$SD$777r4=3q!9$SD$777r1:B$SD3$777q!9s2s|#sC4#666r1:B$SD3$777tUc"cl*c3$o===sA;R%cTC4888sA;R%cTC4888r4=3r3<'3tcT?:::r4=3r3<'3tcT?:::r1:B
"c3$o555q!9s2qz!S#s^333r1:B
"c#tn444tUc"aj(CsdO;;;sA;R#sC4666sA;R#sC4666r4=3r1:%S3$777r4=3r1:%S3$777r1:C#s4~555q!9s3{"c#sm333r1:C#s4~555tUc#qk)Su-====sA;S!$C555sA;S!$C555r4=3sA;&#dD/999r4=3sA;&#dD/999r1:B%T3777q!9s2t}$D#666r1:B%S#666tUc"dm+s5#>>>sA;R&#dE*::::sA;R&#dE*::::r4=3r4=(CcN:::r4=3r4=(CcN:::q!9s1ay CcN222q!9s1ay CcN222r   c                     dt         _        t         j                  } t         j                  }t         j                  }t         j
                  } | t        d            dk(  sJ  |t        d            dk(  sJ  | t        dd            t        dd      k(  sJ  |t        dd            t        dd      k(  sJ  | t        dd            t        dd	      k(  sJ  |t        dd            t        d
d      k(  sJ  |t        dd            t        dd      k(  sJ  | t        dd            t        dd      k(  sJ  | t        dd            t        dd      k(  sJ  | t        dd            t        dd      k(  sJ  |t        dd            t        dd      k(  sJ  |t        dd            t        dd      k(  sJ t        dd       |t        dd            v sJ t        dd       |t        dd            v sJ  | t        dd            sJ  | t        dd            t        dd      k(  sJ  | t        dd            t        dd      k(  sJ t        dd       |t        dd            v sJ  |t        dd            t        dd       k(  sJ  |t        dd            t        d!d"      k(  sJ d#t         _        dd$d%z  z  t        d      z   }d&D ]  }|t         _        d |dt        |      z        v sJ d |dd$d%z  z  t        |      z        v sJ d | d't        |      z        v sJ d | |t        |      z        v sJ d | dt        |      z        v sJ d | dd$d%z  z  t        |      z        v rJ  dt         _         | t        dt                    t        dd      k(  sJ  |t        dt                    t        dd      k(  sJ  | t        t         d            t        dd      k(  sJ  |t        t         d            t        dd      k(  sJ  |t        dd            }t        |j                        j                  t        j	                  d            sJ t        |j                        j                  t        j	                  d            sJ t         j                  t        dd            }t        |j                        j                  t        j                  d            sJ t        |j                        j                  t        j                  d            sJ t        d(d)d      D ]y  }t         j                  |t         j
                  z        }	d|	v sJ |	dk\  sJ |	dk7  sJ t         j                  |dz   t         j
                  z        }	d|	v sJ |	dk\  sJ |	dk7  ryJ  t        d*d+d      D ]{  }t         j                  |t         j
                  z        }	d|	v sJ |	dk  sJ |r|	dk7  sJ t         j                  |dz   t         j
                  z        }	d|	v sJ |	dk  sJ |	dk7  r{J  t        d*d)      D ]  }t         j                  |dz   t         j
                  z        }	|	j                  dcxk  r|	j                  k  sJ  J t         j                  |t         j
                  z        }	|sy|	j                  dcxk  r|	j                  k  rJ  J  y ),Nr   r   r	   g(J?rE   g	T?r   grSW&ڿg(J?g	T?r   g&?r   r"         ?gO?g	TgKt?g0.++g0.;      @r   g_tg$r   g      @gJkp'?gI<l?g&?gF?gݹ7gb~;sֿg4gV
Nɓ7   r   r#   )r   (   P   g      @r      irA   )r   r   cossintanr-   r   r   r(   r)   aempr*   cotrange)
rN   rO   rP   r-   r   pr   vnr0   s
             r   test_interval_cos_sinrX      sQ   BF
&&C
&&C
&&C	Bs1v;!s1v;!s1Qx=C 6<<<<s1Qx=C#89999s1Qx=C 68NOOOOs1Qx=C 6<<<<s1Sz?c"8#>>>>s2qz?c"8#>>>>s2s|$:C @@@@s2s|$;S AAAAs2ay>S!79NOOOOs2c{s#9;QRRRR%'?@CBvDWWWW(*BCs3wW]K^G____s1c{s3{s#:<STTTTs1c{s#9;QRRRR%'=>#c!SkBRRRRs3{s#:<STTTTs1c{s#:<STTTTBF	"b&3s8A *C#b'	N"""C"b&R())))CB((((C#b'	N"""C#b'	N"""C"b&R())))* BFs1Sz?c"Qi'''s1Sz?c"Qi'''sC4{s2ay(((sC4{s2ay(((CAJAqss8;;rvvc{###qss8;;rvvay!!!
s3qzAqss8;;rvvay!!!qss8;;rvvc{###2a] FF1RUU7OQwwBwwBwwFFAcE255=!QwwBwwBww 2a] 	FF1RUU7OAvvAvv6M6FFAcE255=!AvvAvvAvv	 2a[ !FFAcE255=!ssQ}}}}FF1RUU7O33=QSS= = =!r   c                  |   dt         _        dt        _        t         j                  dd      dk(  sJ t         j                  dd      dk7  sJ t         j                  dd      dk7  sJ dt         j                  ddgddg      v sJ d	t         j                  ddgddg      vsJ t         j                  dd      d
z   dk(  sJ t         j                  ddgddg      dz   dz   t         j                  ddgddg      k(  sJ t         j                  ddgddg      dz  t         j                  ddgddg      k(  sJ t         j                  ddgddg      dz  t         j                  ddgddg      k(  sJ t         j                  ddgddg      dz  t         j                  ddgddg      k(  sJ t         j	                  d      j                  t        j	                  d            sJ t         j                  d      j                  t        j                  d            sJ t         j                  dd      t         j                  dd      z  j                  t        j                  dd      t        j                  dd      z        sJ d
t         j                  d      dz  v sJ d
t         j                  d      dz  v sJ t        t         j                  d            dk(  sJ t        t         j                  t                    t        k(  sJ t        t         j                  dd            dk(  sJ t        t         j                  d            dk(  sJ t        t         j                  dd            dk(  sJ t        t         j                  dddg            t         j                  ddg      k(  sJ t        t         j                  dddg            t         j                  ddg      k(  sJ t        t         j                  ddgddg            t         j                  ddg      k(  sJ t        t         j                  ddgddg            t         j                  ddg      k(  sJ t         j                  dd      dz  dk(  sJ t         j                  dd      dz  dk(  sJ t         j                  dd      dz  dk(  sJ t         j                  dd      dz  dk(  sJ t         j                  dd      dz  dk(  sJ t         j                  dd      dz  dk(  sJ t         j                  dd      dz  dk(  sJ t         j                  dd      dz  dk(  sJ t         j                  d      j                  t        j                  d            sJ t         j                  d      j                  t        j                  d            sJ t         j                  d      j                  t        j                  d            sJ t         j                  d      j                  t        j                  d            sJ y )Nr   r   r
          @      @y       @      @      ?      @r	   r   y       @      @y              ?y              @r   r!   rA   y               @rB   r;   r   r   r"   r   r&         y            (@y      G      "@y     ]      ^y     ^@     y      ?      пy              )r   r   rR   r   exprQ   logr(   r.   r   rN   rO   r   r   r   test_interval_complexr`     s   BFBF66!A;$66!A;$66!A;$2661Q%1&&&&rvvqeQqE****66!A;t###661Q%1"2%1qe)<<<<661Q%1"bffaUAa5&9999661Q%1#rvvr"gqe'<<<<661Q%1#rvvqeRG'<<<<66$<??266$<(((66$<??266$<(((FF1QK266#a=(,,RVVAa[BFF3qM-IJJJ"&&*#$$$"&&*#$$$rvvay>Qrvvc{s"""rvva{q   rvvay>Qrvva{q   rvva12661Q%=000rvvaA BFFAa5M111rvvqeQrF#$"v666rvvqeRG$%277766!A;!q   66!A;!%%%66!A;!y(((66!A;!y(((66!A;!y(((66!A;!y(((66!A;2.00066!A;2.00066!9<<q	"""66!9<<q	"""66$<??266$<(((66$<??266$<(((r   c                     dt         _        dt        _        t        j                  d      dk(  sJ t        j                  d      dk(  sJ t        j                  ddg      dk(  sJ t        j                  d      j	                  t
              sJ t        j                  d      j	                  t        j                  d            sJ t        j                  ddgddg      } t        j                  |       }|j                  j	                  t         j                  d	            sJ |j                  j	                  t         j                  d
            sJ t        j                  ddgddg      } t        j                  |       }|j                  j	                  t         j                  d            sJ |j                  j	                  t         j                  d
            sJ t        j                  ddgddg      } t        j                  |       }|j                  j	                  t         j                  d            sJ |j                  j	                  t         j                  d            sJ t        j                  ddgddg      } t        j                  |       }|j                  j	                  t         j                  d            sJ |j                  j	                  t         j                  d            sJ t        j                  ddgddg      } t        j                  |       }|j                  j	                  t         j                  d            sJ |j                  j	                  t         j                  d            sJ t        j                  ddgddg      } t        j                  |       }|j                  j	                  t         j                  d            sJ |j                  j	                  t         j                  d            sJ t        j                  ddgddg      } t        j                  |       }|j                  j	                  t         j                  d            sJ |j                  j	                  t         j                  d            sJ t        j                  ddgddg      } t        j                  |       }|j                  j	                  t         j
                         sJ |j                  j	                  t         j
                        sJ t        j                  ddgddg      } t        j                  |       }|j                  j	                  t         j
                         sJ |j                  j	                  t         j
                        sJ y )Nr   r
   r   r&   rZ   r   r   r   y            @y             @r	   r[   r   y      ?      @y      ?       r;   y      ?      y       @      y            y             y            )	rR   r   r   argrQ   r-   r   r)   r*   )zts     r   test_interval_complex_argre   9  s   BFBF66!9>>66!9>>661Q%=A66":==66$<??266$<(((
2w!uA
q	A3366"&&-   3366"&&-   
1vqeA
q	A3366"&&,3366"&&-   
!uaUA
q	A3366"&&,3366"&&,
!ubVA
q	A3366"&&,3366"&&,
!ubWA
q	A3366"&&,3366"&&,
1vr"gA
q	A3366"&&-   3366"&&,
2w2wA
q	A3366"&&-   3366"&&-   
2w1vA
q	A3366255&>>3366"%%==
1vr!fA
q	A3366255&>>3366"%%==r   c                     dt         _        t         j                  ddg      } | j                  d      J | j                  d      J | j                  d      J | j                  d      du sJ | j                  d      du sJ t         j                  d      } | j                  d      d	u sJ | j                  d
      d	u sJ | j                  d      d	u sJ | j                  d      du sJ | j                  d      du sJ | j                  t         j                  ddg            J | j                  t         j                  ddg            J y )Nr   r	   r   rH   gGz @FgGz?rI   Tg     @g@g5^I@gˡE@g     @)r   r   r(   rQ   )r0   s    r   test_interval_aerg   f  s=   BF
!uA447??449447??44:44:
sA44944	?d"""44	?d"""44;%44;%44E{#$,,,44I'(000r   c                     dxt         _        } t        dd      }t         j                  || dd      dk(  sJ t         j                  || ddd	      d
k(  sJ t         j                  || d      dk(  sJ t         j                  || dd      dk(  sJ t         j                  || dd      dk(  sJ t        dd      }t         j                  || d      dk(  sJ t         j                  t         j	                  t        d            | dd      dk(  sJ t         j                  t        dd      | d      dk(  sJ t         j
                  }t         j                  t         j                  t        d            | d      dk(  sJ dt         _        y )Nr%   r	   r   	plusminusr!   )mode	error_dps
1.5 +- 0.5F)rj   
use_spacesrk   z1.5+-0.5percent)rj   z1.5 (33.33%)brackets)rj   rm   z	[1.0,2.0])<>)rj   ro   z
<1.0, 2.0>z5.2582327113062393041z5.2582327113062749951diffz5.2582327113062[393041, 749951]z*0.54030230586813971740093660744[2955,3053]1e1231e129z[1.0e+123, 1.0e+129]z5000.1z-3.2797365856787867069110487[0926, 1191]e+2171r   )r   r   r   nstrrN   r^   )rW   r0   r^   s      r   test_interval_nstrrv   w  sk   OBFQAq	A771akQ77<GGG771akeq7IZWWW771ai7(N:::771ajU7;{JJJ771ajJ7?<OOO#%<=A771af7%)JJJJ77266#a&>16e7DHtttt773w(!&79=SSSS
&&C77266#h-(!&79=llllBFr   c                     dt         _        t         j                  d      t        t	        d      t	        d            k(  sJ t        dd      t         j                  d      v sJ t         j                  d      t        dd      k(  sJ t         j                  d	      t        d
d      k(  sJ t         j                  d      t        dd      k(  sJ t         j                  d      t        dd      k(  sJ y )Nr   rl   z1.0z2.0r	   r   z'1.5 (33.33333333333333333333333333333%)z[1, 2]z1[2, 3]r\   r]   z1.[23,46]e-8z1.23e-8z1.46e-8z12[3.4,5.9]e4z123.4e+4z125.9e4)r   r   convertr   r(   r   r   r   test_mpi_from_strry     s    BF::l#s3u:s5z'BBBBq!9

#LMMMM::h3q!9,,,::i CBK///::n%Y	)BBBB::o&#j)*DDDDr   c                  .	   dt         _        dt        _        t        j                  d      dk(  sJ t        j	                  d      dk(  sJ t        j	                  d      dk(  sJ t        j	                  d      dk(  sJ t        j	                  d      dk(  sJ t        j                  d      t         t        gk(  sJ t        j                  d      dk(  sJ t        j                  d      dk(  sJ t        j                  d      dk(  sJ dt        j                  d      v sJ t        j                  d      dk(  sJ t        j                  d      dk(  sJ d	t        j                  d      v sJ t        j                  ddgdd
g      t        j                  ddgddg      t        j                  ddgdd
g      t        j                  ddgddg      t        j                  ddgdd
g      t        j                  ddgdd
g      t        j                  ddgddg      g} | D ]Y  }t         j                  t         j                  |j                  |j                              t         j                  t         j                  |j                  |j                              t         j                  t         j                  |j                  |j                              t         j                  t         j                  |j                  |j                              g}d|j                  v rA|t         j                  |j                        t         j                  |j                        gz  }t        |D cg c]  }|j                   c}      }t!        |D cg c]  }|j                   c}      }t        |D cg c]  }|j                   c}      }t!        |D cg c]  }|j                   c}      }t        j                  |      }|j                  j#                  |      sJ |j                  j#                  |      sJ |j                  j#                  |      sJ |j                  j#                  |      rZJ  y c c}w c c}w c c}w c c}w )Nr   r   r	   r   r
   r!   gkﴑ[r'   g9B.?r   r;   r   r&   r   )rR   r   r   rgammafacgammar   loggammar   r)   cr*   dimagminrealmaxrQ   )	xsr0   ysymin_realmax_realmin_imagmax_imagrc   s	            r   test_interval_gammar     sj   BFBF99Q<166!9>>66!9>>66!9>>66!9>>88A;C4*$$$88A;!88A;!88A;!!RXXd^333;;q>Q;;q>Q!R[[^333
&&!A!u

&&!A2w

&&!A1v

&&!A1v

&&!A1v

&&"R!A

&&"R"R
!
#B   kk"&&QSS/*kk"&&QSS/*kk"&&QSS/*kk"&&QSS/*, ;2;;qss#R[[%566B+1+,+1+,+1+,+1+,KKNssvvhssvvhssvvhssvvh  ,+++s   3R
R
9R
R
c            
         dt         _        dt        _        dddddt        t	        d            ffD ]  \  } }t        | |      }t        |j                        t        |      k(  sJ t        |j                        t        |       k(  sJ t        |j                        t        |      k(  sJ t        |j                        t        |       k(  sJ t        |j                        t        |      k(  rJ  y )Nr   )g       r   )rD   r"   )rE   r	   )-infg     4@r   r   )
rR   r   r   floatr+   r   intr*   r)   complex)r)   r*   rs      r   test_interval_conversionsr     s    BFBFJ&%Q.!9; *11I133x3q6!!!QSSzU1X%%%QSSzU1X%%%qss|wqz)))qss|wqz)))*r   N)mpmathr   r   r2   r7   r=   r?   rF   rX   r`   re   rg   rv   ry   r   r   r   r   r   <module>r      s]    #0B)3V1**.#D3LK!Z')R+Z1""E( T
*r   