Ë
    täiÜ  ã                   óv   — d dl ­ d dlmZmZ d dlmZmZmZ ee	e
eegZeZeZeZd„ Zd„ Zd„ Zd„ Zd„ Zd	„ Zd
„ Zy)é    )Ú*)ÚmpfÚmp)ÚrandintÚchoiceÚseedc                  óÆ  — t        d«      } t        d«      }t        d«      }t        | |dt        «      t        d«      k(  sJ ‚t        | |dt        «      t        d«      k(  sJ ‚t        | |dt
        «      t        d«      k(  sJ ‚t        | |dt        «      t        d«      k(  sJ ‚t        | |dt        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚t        ||dt
        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚y ©	Né   é   éÿÿÿÿé   z
0.01010101z
0.01010110z-0.01010110z-0.01010101)ÚfiÚmpf_divÚround_floorÚfbÚround_ceilingÚ
round_downÚround_upÚround_nearest©ÚaÚbÚcs      úi/Volumes/fast/ai/experiments/MLX_z-image/.venv/lib/python3.12/site-packages/mpmath/tests/test_division.pyÚtest_div_1_3r      sM  € Ü
ˆ1‹€AÜ
ˆ1‹€AÜ
ˆ2‹€Aô �1�a˜œKÓ(¬b°Ó.>Ò>Ð>Ð>Ü�1�a˜œMÓ*¬b°Ó.>Ò>Ð>Ð>Ü�1�a˜œJÓ'¬b°Ó.>Ò>Ð>Ð>Ü�1�a˜œHÓ%¬b°Ó.>Ò>Ð>Ð>Ü�1�a˜œMÓ*¬b°Ó.>Ò>Ð>Ð>ô �1�a˜œKÓ(¬b°Ó.?Ò?Ð?Ð?Ü�1�a˜œMÓ*¬b°Ó.?Ò?Ð?Ð?Ü�1�a˜œJÓ'¬b°Ó.?Ò?Ð?Ð?Ü�1�a˜œHÓ%¬b°Ó.?Ò?Ð?Ð?Ü�1�a˜œMÓ*¬b°Ó.?Ò?Ð?Ñ?ó    c                  ó¢  — d} t        d«      }d}t        | |dt        «      t        d«      k(  sJ ‚t        | |dt        «      t        d«      k(  sJ ‚t        | |dt
        «      t        d«      k(  sJ ‚t        | |dt        «      t        d«      k(  sJ ‚t        | |dt        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚t        ||dt
        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚y r
   )r   Úmpf_rdiv_intr   r   r   r   r   r   r   s      r   Útest_mpf_divi_1_3r        sA  € Ø	€AÜ
ˆ1‹€AØ
€AÜ˜˜1˜a¤Ó-´2°lÓ3CÒCÐCÐCÜ˜˜1˜a¤Ó/´2°lÓ3CÒCÐCÐCÜ˜˜1˜a¤Ó,´2°lÓ3CÒCÐCÐCÜ˜˜1˜a¤Ó*´2°lÓ3CÒCÐCÐCÜ˜˜1˜a¤Ó/´2°lÓ3CÒCÐCÐCÜ˜˜1˜a¤Ó-´2°mÓ3DÒDÐDÐDÜ˜˜1˜a¤Ó/´2°mÓ3DÒDÐDÐDÜ˜˜1˜a¤Ó,´2°mÓ3DÒDÐDÐDÜ˜˜1˜a¤Ó*´2°mÓ3DÒDÐDÐDÜ˜˜1˜a¤Ó/´2°mÓ3DÒDÐDÑDr   c                  óž  — t        d«      } t        d«      }t        d«      }t        d«      }t        || dt        «      t        d«      k(  sJ ‚t        || dt        «      t        d«      k(  sJ ‚t        || dt        «      t        d«      k(  sJ ‚t        || dt        «      t        d«      k(  sJ ‚t        || dt        «      t        d«      k(  sJ ‚t        || dt        «      t        d«      k(  sJ ‚t        || dt        «      t        d«      k(  sJ ‚t        || dt        «      t        d«      k(  sJ ‚t        || dt        «      t        d«      k(  sJ ‚t        d«      }t        d	«      }t        d
«      }t        || dt        «      t        d«      k(  sJ ‚t        || dt        «      t        d«      k(  sJ ‚t        || dt        «      t        d«      k(  sJ ‚y )Ni@B iDéi Déi!Déé	   i,  i-  i_†øi`†øia†øi.  )r   r   r   r   r   )Úqr   r   r   s       r   Útest_div_300r$   0   s£  € ä
ˆ7‹€AÜ
ˆ9‹€AÜ
ˆ9‹€AÜ
ˆ9‹€Aô �1�a˜œJÓ'¬2¨c«7Ò2Ð2Ð2Ü�1�a˜œJÓ'¬2¨c«7Ò2Ð2Ð2Ü�1�a˜œJÓ'¬2¨c«7Ò2Ð2Ð2Ü�1�a˜œHÓ%¬¨C«Ò0Ð0Ð0Ü�1�a˜œHÓ%¬¨C«Ò0Ð0Ð0Ü�1�a˜œHÓ%¬¨C«Ò0Ð0Ð0ô �1�a˜œMÓ*¬b°«gÒ5Ð5Ð5Ü�1�a˜œMÓ*¬b°«gÒ5Ð5Ð5Ü�1�a˜œMÓ*¬b°«gÒ5Ð5Ð5ô 	ˆ9‹€AÜ
ˆ9‹€AÜ
ˆ9‹€AÜ�1�a˜œMÓ*¬b°«gÒ5Ð5Ð5Ü�1�a˜œMÓ*¬b°«gÒ5Ð5Ð5Ü�1�a˜œMÓ*¬b°«gÒ5Ð5Ñ5r   c            
      ó¢  — d} t        d«       t        | «      D ]´  }t        ddg«      t        ddt        dd«      z  «      z  }t        ddg«      t        ddt        dd«      z  «      z  }||z  }t	        t        |«      «      t        |«      z
  }t        |«      }t        |«      }t        |«      }t        D ]  }t        ||||«      |k(  rŒJ ‚ Œ¶ y )Néd   r   r   é
   )
r   Úranger   r   ÚbitcountÚabsÚtrailingr   Ú	all_modesr   )ÚNÚir   r   ÚpÚwidthÚmodes          r   Útest_tight_integer_divisionr2   N   sÂ   € à€AÜˆ„GÜ�1ŽXˆÜ�A�r�7‹Oœg a¨¬G°B¸Ó,<Ñ)<Ó=Ñ=ˆÜ�A�r�7‹Oœg a¨¬G°B¸Ó,<Ñ)<Ó=Ñ=ˆØ�‰EˆÜœ˜Q›Ó ¤8¨A£;Ñ.ˆÜˆq‹Eˆ”r˜!“u�1¤" Q£%˜aßˆDÜ˜1˜a ¨Ó-°Ó2Ð2Ð2ñ ñ r   c                  ó°  — t        d«      } t        d«      }t        | |dt        «      }t        ||t	        | d   «      t        «      | k(  sJ ‚t        ||dt
        «      t        d«      k(  sJ ‚t        ||dt
        «      t        d«      k(  sJ ‚t        ||dt        «      t        d	«      k(  sJ ‚t        ||dt        «      t        d
«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚t        ||dt        «      t        d	«      k(  sJ ‚t        ||dt        «      t        d
«      k(  sJ ‚t        d«      } t        d«      }t        | |dt        «      }t        ||t	        | d   «      t        «      | k(  sJ ‚t        ||dt
        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚t        ||dt        «      t        d«      k(  sJ ‚y )NzÎ0.101000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001z1.10101éú   r   é   z0.10r   z0.101z0.11z0.110zÏ-0.101000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001z-0.10z-0.110z-0.11z-0.101)r   Úmpf_mulr   r   r)   r   r   r   r   s      r   Útest_epsilon_roundingr7   \   s(  € ô 	Ð$Ó%€AÜ
ˆ9‹€AÜ��1�cœ;Ó'€AÜ�1�aœ ! A¡$›¬Ó5¸Ò:Ð:Ð:ä�1�a˜œJÓ'¬2¨f«:Ò5Ð5Ð5Ü�1�a˜œJÓ'¬2¨g«;Ò6Ð6Ð6Ü�1�a˜œHÓ%¬¨F«Ò3Ð3Ð3Ü�1�a˜œHÓ%¬¨G«Ò4Ð4Ð4Ü�1�a˜œKÓ(¬B¨v«JÒ6Ð6Ð6Ü�1�a˜œKÓ(¬B¨w«KÒ7Ð7Ð7Ü�1�a˜œMÓ*¬b°«jÒ8Ð8Ð8Ü�1�a˜œMÓ*¬b°«kÒ9Ð9Ð9ô 	Ð%Ó&€AÜ
ˆ9‹€AÜ��1�cœ;Ó'€AÜ�1�aœ ! A¡$›¬Ó5¸Ò:Ð:Ð:ä�1�a˜œJÓ'¬2¨g«;Ò6Ð6Ð6Ü�1�a˜œHÓ%¬¨H«Ò5Ð5Ð5ô �1�a˜œKÓ(¬B¨w«KÒ7Ð7Ð7Ü�1�a˜œKÓ(¬B¨x«LÒ8Ð8Ð8Ü�1�a˜œMÓ*¬b°«kÒ9Ð9Ð9Ü�1�a˜œMÓ*¬b°«lÒ:Ð:Ñ:r   c                  ó‚  — 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  dk(  sJ ‚t        d«      d
z  dk(  sJ ‚t        d«      dz  dk(  sJ ‚t        d«      dz  t        d«      k(  sJ ‚dt        d«      z  dk(  sJ ‚y )Né   éê   r   r   éýÿÿÿé   éý   g      Ð?g     ðÖ@g     ðÖÀg    �ðÖÀg      Ð¿g    �ðÖ@Ú1e10000000000z1.23e-1000000000r   z1.75g      ô?©r   Údpsr   © r   r   Útest_modrB   ~   sÞ   € Ø„B„FÜˆs‹8�a‰<˜1ÒÐÐÜˆr‹7�S‰=˜CÒÐÐÜˆt‹9�wÑ $Ò&Ð&Ð&Üˆt‹9�xÑ 9Ò,Ð,Ð,Üˆu‹:˜Ñ 8Ò+Ð+Ð+Üˆu‹:˜Ñ  EÒ)Ð)Ð)äˆÓ !Ñ# qÒ(Ð(Ð(ÜÐ!Ó" QÑ&¬#Ð.@Ó*AÒAÐAÐAàŒs�6‹{‰?˜dÒ"Ð"Ñ"r   c                  óœ   — dt         _        dt        d«      z  t        d«      k(  sJ ‚t        d«      t        d«      z  t        d«      k(  sJ ‚y )Nr9   r;   z0.1531879017645047z-19.583791966887116z-2.6342475750861301z0.35126216427941814z-7.4993775104985909r?   rA   r   r   Útest_div_negative_rnd_bugrD   Œ   sM   € Ø„B„FØ”#Ð*Ó+Ñ+¬sÐ3HÓ/IÒIÐIÐIÜÐ$Ó%¬Ð,AÓ(BÑBÄcÐJ_ÓF`Ò`Ð`Ñ`r   N)Úmpmath.libmpÚmpmathr   r   Úrandomr   r   r   r   r   r   r   r   r,   Ú	from_bstrr   Úfrom_intr   Ú
from_floatÚffr   r    r$   r2   r7   rB   rD   rA   r   r   Ú<module>rL      sW   ðÜ ß ç (Ñ (à˜-¨°X¸}ÐM€	à€Ø€Ø€ò@ò&Eò 6ò<3ò;òD#óar   