Ë
    óÿæik  ã                   ó2   — d dl ­ d dl­ d dlZd„ Zd„ Zd„ Zy)é    )Ú*Nc                  ó&  — dt         _        t        d«      dz  dk(  sJ ‚t        d«      dz  dk(  sJ ‚t        d«      dz  d	k(  sJ ‚t        d«      d
z  dk(  sJ ‚t        d«      dz  j                  d«      sJ ‚t        d«      dz  j                  d«      sJ ‚t        d«      dz  j                  d«      sJ ‚t        d«      d
z  j                  d«      sJ ‚t        d«      dz  j                  d«      sJ ‚t        d«      dz  j                  d«      sJ ‚y )Né   é   g      @i   é@   g      à?é   g      à¿g      À?g      Àg      P?é
   gR[Ú:XL	@gX—úí¤Ãs@gIHb=Ô?g·�3äÆçi?g333333Ó?g¯¸[-˜ìÿ?g333333Ó¿gRB3Ï¹	à?)ÚmpÚdpsÚmpfÚae© ó    úl/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/mpmath/tests/test_power.pyÚtest_fractional_powr      s  € Ø„B„FÜˆr‹7�c‰>˜TÒ!Ð!Ð!Üˆr‹7�c‰>˜QÒÐÐÜˆr‹7�d‰?˜eÒ#Ð#Ð#Üˆr‹7�d‰?˜lÒ*Ð*Ð*Ü�‹G�s‰N×ÑÐ1Ô2Ð2Ð2Ü�‹G�s‰N×ÑÐ0Ô1Ð1Ð1Ü�‹G�t‰O×ÑÐ 3Ô4Ð4Ð4Ü�‹G�t‰O×ÑÐ 5Ô6Ð6Ð6Ü�‹G�s‰N×ÑÐ1Ô2Ð2Ð2Ü�‹G�t‰O×ÑÐ 3Ô4Ð4Ñ4r   c            
      ó˜  — t        j                  d«       dD ]°  } t        d«      D ]   }t        j                  d| dz
  z  d| z  «      }t        j                  dd«      }||z  }t	        t        t        |«      t        |«      | t        «      «      |k  sJ ‚t	        t        t        |«      t        |«      | t        «      «      |kD  rŒ J ‚ Œ² y)zR
    Test that inexact integer powers are rounded in the right
    direction.
    iÒ  )r	   é5   éÈ   é2   é   é   éd   N)	ÚrandomÚseedÚrangeÚrandintÚto_intÚmpf_powÚfrom_intÚ
round_downÚround_up)ÚprecÚiÚaÚbÚabs        r   Útest_pow_integer_directionr'      sª   € ô
 ‡K�K�ÔÛˆÜ�r–ˆAÜ—‘˜q 4¨¡6™{¨A¨t©GÓ4ˆAÜ—‘˜q #Ó&ˆAØ�A‘ˆBäœ'¤(¨1£+¬x¸«{¸DÄ*ÓMÓNÐQSÒSÐSÐSÜœ'¤(¨1£+¬x¸«{¸DÄ(ÓKÓLÈrÓQÐQÐQñ ñ r   c                  ó˜  — d„ } dD �]6  \  }}|t         _        t        d«      t        d«      | dz   z  z   }t        d«      t        d«      | dz   z  z
  }| }| }|t         _        t        } | |d|«      dkD  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dk  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dkD  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dkD  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dkD  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dk  sJ ‚ | |d	|«      dk(  sJ ‚ | |d	|«      dkD  sJ ‚ | |d	|«      dk(  sJ ‚ | |d	|«      dkD  sJ ‚t        } | |d|«      dk(  sJ ‚ | |d|«      dk  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dkD  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dk  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dk  sJ ‚ | |d|«      dk  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dkD  sJ ‚ | |d|«      dk(  sJ ‚ | |d	|«      dk  sJ ‚ | |d	|«      dk(  sJ ‚ | |d	|«      dk  sJ ‚ | |d	|«      dk(  sJ ‚t
        } | |d|«      dkD  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dkD  sJ ‚ | |d|«      dkD  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dkD  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dkD  sJ ‚ | |d|«      dkD  sJ ‚ | |d|«      dk(  sJ ‚ | |d	|«      dk(  sJ ‚ | |d	|«      dkD  sJ ‚ | |d	|«      dk(  sJ ‚ | |d	|«      dkD  sJ ‚t        } | |d|«      dk(  sJ ‚ | |d|«      dk  sJ ‚ | |d|«      dk  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dk  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dk  sJ ‚ | |d|«      dk  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dk(  sJ ‚ | |d|«      dk  sJ ‚ | |d	|«      dk  sJ ‚ | |d	|«      dk(  sJ ‚ | |d	|«      dk  sJ ‚ | |d	|«      dk(  r�Œ7J ‚ d
t         _        y)aµ  
    Stress test directed rounding for powers with integer exponents.
    Basically, we look at the following cases:

    >>> 1.0001 ** -5 # doctest: +SKIP
    0.99950014996500702
    >>> 0.9999 ** -5 # doctest: +SKIP
    1.000500150035007
    >>> (-1.0001) ** -5 # doctest: +SKIP
    -0.99950014996500702
    >>> (-0.9999) ** -5 # doctest: +SKIP
    -1.000500150035007

    >>> 1.0001 ** -6 # doctest: +SKIP
    0.99940020994401269
    >>> 0.9999 ** -6 # doctest: +SKIP
    1.0006002100560125
    >>> (-1.0001) ** -6 # doctest: +SKIP
    0.99940020994401269
    >>> (-0.9999) ** -6 # doctest: +SKIP
    1.0006002100560125

    etc.

    We run the tests with values a very small epsilon away from 1:
    small enough that the result is indistinguishable from 1 when
    rounded to nearest at the output precision. We check that the
    result is not erroneously rounded to 1 in cases where the
    rounding should be done strictly away from 1.
    c                 ó`   — t        t        | j                  |t        j                  |«      «      S )N)Úmake_mpfÚmpf_pow_intÚ_mpf_r
   r"   )ÚxÚnÚrs      r   Úpowrz'test_pow_epsilon_rounding.<locals>.powrC   s    € Üœ A§G¡G¨Q´·±¸Ó;Ó<Ð<r   ))r   é   )iˆ  i¸  r   r   é   éÿÿÿÿé   éûÿÿÿiúÿÿÿr   N)r
   r"   r   r!   r    Úround_ceilingÚround_floorr   )r0   ÚinprecÚoutprecÚpos10001Úpos09999Úneg10001Úneg09999r/   s           r   Útest_pow_epsilon_roundingr>   #   sN  € ò@=ô 7Ñˆ�àŒŒä�q“6œC ›F f W¨Q¡YÑ/Ñ/ˆÜ�q“6œC ›F f W¨Q¡YÑ/Ñ/ˆØ�9ˆØ�9ˆàŒŒÜˆÙ�H˜a Ó# aÒ'Ð'Ð'Ù�H˜a Ó# qÒ(Ð(Ð(Ù�H˜a Ó# bÒ(Ð(Ð(Ù�H˜a Ó# rÒ)Ð)Ð)Ù�H˜a Ó# aÒ'Ð'Ð'Ù�H˜a Ó# qÒ(Ð(Ð(Ù�H˜a Ó# aÒ'Ð'Ð'Ù�H˜a Ó# qÒ(Ð(Ð(á�H˜b !Ó$¨Ò)Ð)Ð)Ù�H˜b !Ó$ qÒ(Ð(Ð(Ù�H˜b !Ó$¨Ò*Ð*Ð*Ù�H˜b !Ó$ rÒ)Ð)Ð)Ù�H˜b !Ó$¨Ò)Ð)Ð)Ù�H˜b !Ó$ qÒ(Ð(Ð(Ù�H˜b !Ó$¨Ò)Ð)Ð)Ù�H˜b !Ó$ qÒ(Ð(Ð(äˆÙ�H˜a Ó# qÒ(Ð(Ð(Ù�H˜a Ó# aÒ'Ð'Ð'Ù�H˜a Ó# rÒ)Ð)Ð)Ù�H˜a Ó# bÒ(Ð(Ð(Ù�H˜a Ó# qÒ(Ð(Ð(Ù�H˜a Ó# aÒ'Ð'Ð'Ù�H˜a Ó# qÒ(Ð(Ð(Ù�H˜a Ó# aÒ'Ð'Ð'á�H˜b !Ó$ qÒ(Ð(Ð(Ù�H˜b !Ó$¨Ò)Ð)Ð)Ù�H˜b !Ó$ rÒ)Ð)Ð)Ù�H˜b !Ó$¨Ò*Ð*Ð*Ù�H˜b !Ó$ qÒ(Ð(Ð(Ù�H˜b !Ó$¨Ò)Ð)Ð)Ù�H˜b !Ó$ qÒ(Ð(Ð(Ù�H˜b !Ó$¨Ò)Ð)Ð)äˆÙ�H˜a Ó# aÒ'Ð'Ð'Ù�H˜a Ó# qÒ(Ð(Ð(Ù�H˜a Ó# rÒ)Ð)Ð)Ù�H˜a Ó# bÒ(Ð(Ð(Ù�H˜a Ó# aÒ'Ð'Ð'Ù�H˜a Ó# qÒ(Ð(Ð(Ù�H˜a Ó# aÒ'Ð'Ð'Ù�H˜a Ó# qÒ(Ð(Ð(á�H˜b !Ó$¨Ò)Ð)Ð)Ù�H˜b !Ó$ qÒ(Ð(Ð(Ù�H˜b !Ó$ rÒ)Ð)Ð)Ù�H˜b !Ó$¨Ò*Ð*Ð*Ù�H˜b !Ó$¨Ò)Ð)Ð)Ù�H˜b !Ó$ qÒ(Ð(Ð(Ù�H˜b !Ó$¨Ò)Ð)Ð)Ù�H˜b !Ó$ qÒ(Ð(Ð(äˆÙ�H˜a Ó# qÒ(Ð(Ð(Ù�H˜a Ó# aÒ'Ð'Ð'Ù�H˜a Ó# bÒ(Ð(Ð(Ù�H˜a Ó# rÒ)Ð)Ð)Ù�H˜a Ó# qÒ(Ð(Ð(Ù�H˜a Ó# aÒ'Ð'Ð'Ù�H˜a Ó# qÒ(Ð(Ð(Ù�H˜a Ó# aÒ'Ð'Ð'á�H˜b !Ó$ qÒ(Ð(Ð(Ù�H˜b !Ó$¨Ò)Ð)Ð)Ù�H˜b !Ó$¨Ò*Ð*Ð*Ù�H˜b !Ó$ rÒ)Ð)Ð)Ù�H˜b !Ó$ qÒ(Ð(Ð(Ù�H˜b !Ó$¨Ò)Ð)Ð)Ù�H˜b !Ó$ qÒ(Ð(Ð(Ù�H˜b !Ó$¨Ô)Ð)Ð)ði 7ðl „B…Fr   )ÚmpmathÚmpmath.libmpr   r   r'   r>   r   r   r   Ú<module>rA      s   ðÜ Ü ã ò5òRó yr   