+
    ‰°³j  ã                   ól   € R t ^ RI5 ^ RI5 R tR tR tR tR tR tR t	R	 t
R
 tR tR tR tR tR# )z+
Test bit-level integer and mpf operations
)Ú*c                  ó  € \        ^ 4      ^ 8X  g   Q h\        ^4      ^8X  g   Q h\        ^4      ^8X  g   Q h\        ^4      ^8X  g   Q h\        ^^d,          4      ^e8X  g   Q h\        ^^d,          ^,
          4      ^d8X  g   Q hR# ©é    N)Úbitcount© ó    ÚZ/home/luca/screen-checking/.venv/lib/python3.14/site-packages/mpmath/tests/test_bitwise.pyÚtest_bitcountr
      s|   € Ü�A‹;˜!ÔÐÐÜ�A‹;˜!ÔÐÐÜ�A‹;˜!ÔÐÐÜ�A‹;˜!ÔÐÐÜ�A�s•FÓ˜sÔ"Ð"Ð"Ü�A�s•F˜1•HÓ Ô$Ð$Ò$r   c                  ó,  € \        ^ 4      ^ 8X  g   Q h\        ^4      ^ 8X  g   Q h\        ^4      ^8X  g   Q h\        ^4      ^ 8X  g   Q h\        ^4      ^8X  g   Q h\        ^^d,          4      ^d8X  g   Q h\        ^^d,          ^,
          4      ^ 8X  g   Q hR# r   )Útrailingr   r   r	   Útest_trailingr      sŽ   € Ü�A‹;˜!ÔÐÐÜ�A‹;˜!ÔÐÐÜ�A‹;˜!ÔÐÐÜ�A‹;˜!ÔÐÐÜ�A‹;˜!ÔÐÐÜ�A�s•FÓ˜sÔ"Ð"Ð"Ü�A�s•F˜1•HÓ Ô"Ð"Ò"r   c                  óÆ  € \        ^ R^\        4      R,          R8X  g   Q h\        ^ðR^\        4      R,          R8X  g   Q h\        ^ñR^\        4      R,          R8X  g   Q h\        ^ÿR^\        4      R,          R8X  g   Q h\        RR^\        4      R,          R8X  g   Q h\        RR^\        4      R,          R8X  g   Q h\        R	R^\        4      R,          R8X  g   Q hR# )
r   ºNé   NNéüÿÿÿ©r   r   r   ©r   é   r   éÿÿÿ©é   r   r   éÿÿÿéÿÿÿ)Úfrom_man_expÚ
round_downr   r   r	   Útest_round_downr      sÔ   € Ü˜˜2˜q¤*Ó-¨bÕ1°YÔ>Ð>Ð>Ü˜˜b !¤ZÓ0°Õ4¸
ÔBÐBÐBÜ˜˜b !¤ZÓ0°Õ4¸
ÔBÐBÐBÜ˜˜b !¤ZÓ0°Õ4¸
ÔBÐBÐBÜ˜˜r 1¤jÓ1°"Õ5¸ÔCÐCÐCÜ˜˜r 1¤jÓ1°"Õ5¸ÔCÐCÐCÜ˜˜r 1¤jÓ1°"Õ5¸ÔCÐCÒCr   c                  óÆ  € \        ^ R^\        4      R,          R8X  g   Q h\        ^ðR^\        4      R,          R8X  g   Q h\        ^ñR^\        4      R,          R8X  g   Q h\        ^ÿR^\        4      R,          R8X  g   Q h\        RR^\        4      R,          R8X  g   Q h\        R	R^\        4      R,          R
8X  g   Q h\        RR^\        4      R,          R
8X  g   Q hR# )r   r   Nr   r   r   ©r   r   é   r   r   r   ©r   r   r   r   )r   Úround_upr   r   r	   Útest_round_upr"   "   sÔ   € Ü˜˜2˜q¤(Ó+¨BÕ/°9Ô<Ð<Ð<Ü˜˜b !¤XÓ.¨rÕ2°jÔ@Ð@Ð@Ü˜˜b !¤XÓ.¨rÕ2°iÔ?Ð?Ð?Ü˜˜b !¤XÓ.¨rÕ2°iÔ?Ð?Ð?Ü˜˜r 1¤hÓ/°Õ3°zÔAÐAÐAÜ˜˜r 1¤hÓ/°Õ3°yÔ@Ð@Ð@Ü˜˜r 1¤hÓ/°Õ3°yÔ@Ð@Ò@r   c                  óÆ  € \        ^ R^\        4      R,          R8X  g   Q h\        ^ðR^\        4      R,          R8X  g   Q h\        ^ñR^\        4      R,          R8X  g   Q h\        ^ÿR^\        4      R,          R8X  g   Q h\        RR^\        4      R,          R8X  g   Q h\        RR^\        4      R,          R	8X  g   Q h\        R
R^\        4      R,          R	8X  g   Q hR# )r   r   Nr   r   r   r   r   r   r    r   )r   Úround_floorr   r   r	   Útest_round_floorr%   +   sÔ   € Ü˜˜2˜q¤+Ó.¨rÕ2°iÔ?Ð?Ð?Ü˜˜b !¤[Ó1°"Õ5¸ÔCÐCÐCÜ˜˜b !¤[Ó1°"Õ5¸ÔCÐCÐCÜ˜˜b !¤[Ó1°"Õ5¸ÔCÐCÐCÜ˜˜r 1¤kÓ2°2Õ6¸*ÔDÐDÐDÜ˜˜r 1¤kÓ2°2Õ6¸)ÔCÐCÐCÜ˜˜r 1¤kÓ2°2Õ6¸)ÔCÐCÒCr   c                  óÆ  € \        ^ R^\        4      R,          R8X  g   Q h\        ^ðR^\        4      R,          R8X  g   Q h\        ^ñR^\        4      R,          R8X  g   Q h\        ^ÿR^\        4      R,          R8X  g   Q h\        RR^\        4      R,          R8X  g   Q h\        R	R^\        4      R,          R8X  g   Q h\        R
R^\        4      R,          R8X  g   Q hR# )r   r   Nr   r   r   r   r   r   r   r   )r   Úround_ceilingr   r   r	   Útest_round_ceilingr(   4   sÔ   € Ü˜˜2˜q¤-Ó0°Õ4¸	ÔAÐAÐAÜ˜˜b !¤]Ó3°BÕ7¸:ÔEÐEÐEÜ˜˜b !¤]Ó3°BÕ7¸9ÔDÐDÐDÜ˜˜b !¤]Ó3°BÕ7¸9ÔDÐDÐDÜ˜˜r 1¤mÓ4°RÕ8¸JÔFÐFÐFÜ˜˜r 1¤mÓ4°RÕ8¸JÔFÐFÐFÜ˜˜r 1¤mÓ4°RÕ8¸JÔFÐFÒFr   c                  óF  € \        ^ R^\        4      R,          R8X  g   Q h\        ^ðR^\        4      R,          R8X  g   Q h\        ^÷R^\        4      R,          R8X  g   Q h\        ^øR^\        4      R,          R8X  g   Q h\        ^ùR^\        4      R,          R8X  g   Q h\        ^èR^\        4      R,          R8X  g   Q h\        ^éR^\        4      R,          R8X  g   Q h\        RR^\        4      R,          R	8X  g   Q h\        R
R^\        4      R,          R	8X  g   Q h\        RR^\        4      R,          R8X  g   Q h\        RR^\        4      R,          R8X  g   Q h\        RR^\        4      R,          R8X  g   Q h\        RR^\        4      R,          R	8X  g   Q hR# )r   r   Nr   r   r   r   )r   é   r   r   r   i	ÿÿÿiÿÿÿr    iÿÿÿiÿÿÿ)r   r*   r   iÿÿÿ)r   Úround_nearestr   r   r	   Útest_round_nearestr,   =   sˆ  € Ü˜˜2˜q¤-Ó0°Õ4¸	ÔAÐAÐAÜ˜˜b !¤]Ó3°BÕ7¸:ÔEÐEÐEÜ˜˜b !¤]Ó3°BÕ7¸:ÔEÐEÐEÜ˜˜b !¤]Ó3°BÕ7¸9ÔDÐDÐDÜ˜˜b !¤]Ó3°BÕ7¸9ÔDÐDÐDÜ˜˜b !¤]Ó3°BÕ7¸9ÔDÐDÐDÜ˜˜b !¤]Ó3°BÕ7¸:ÔEÐEÐEÜ˜˜r 1¤mÓ4°RÕ8¸JÔFÐFÐFÜ˜˜r 1¤mÓ4°RÕ8¸JÔFÐFÐFÜ˜˜r 1¤mÓ4°RÕ8¸IÔEÐEÐEÜ˜˜r 1¤mÓ4°RÕ8¸IÔEÐEÐEÜ˜˜r 1¤mÓ4°RÕ8¸IÔEÐEÐEÜ˜˜r 1¤mÓ4°RÕ8¸JÔFÐFÒFr   c                  ó2  € \        R R^5\        4      R8X  g   Q h\        RR^5\        4      R8X  g   Q h\        ^^ ^\        4      R8X  g   Q h\        R^ ^\        4      R	8X  g   Q h\        ^ÿ^ ^\        4      R
8X  g   Q h\        R^ ^\        4      R8X  g   Q hR# )l   ÿÿÿÿl   ~ÿÿÿ? NiÈÿÿÿ)r   r   r   r   i¿ÿÿÿ)r   r   r   r   )r   r   é   r   iáÿÿÿ)r   r   r.   r   )r   r   é   r   r   )r   r   r/   r   )r   r!   r+   r$   r   r   r	   Útest_rounding_bugsr0   L   sš   € äÐ)¨3°´HÓ=ÀÔMÐMÐMÜÐ,¨c°2´}ÓEÈÔUÐUÐUÜ˜˜A˜q¤(Ó+¨|Ô;Ð;Ð;Ü˜˜Q ¤;Ó/°<Ô?Ð?Ð?Ü˜˜Q ¤8Ó,°Ô<Ð<Ð<Ü˜˜a ¤KÓ0°LÔ@Ð@Ò@r   c                  óò   € \        R R4      p \        R R4      p\        R^ 4      pRp\        W^
R4      V8X  g   Q h\        W^
R4      V8X  g   Q h\        W ^
R4      V8X  g   Q h\        W!^
R4      V8X  g   Q hR# )i‹&  ÚdNiœÿÿÿi8ÿÿÿéÿÿÿÿ)r   iÿ  iöÿÿÿé
   )r   Úmpf_add)ÚaÚbÚcÚzs       r	   Útest_rounding_issue_200r:   U   s‡   € Ü�T˜$Ó€AÜ�T˜$Ó€AÜ�R˜Ó€AØ€AÜ�1˜˜SÓ! QÔ&Ð&Ð&Ü�1˜˜SÓ! QÔ&Ð&Ð&Ü�1˜˜SÓ! QÔ&Ð&Ð&Ü�1˜˜SÓ! QÔ&Ð&Ò&r   c                  óh  € \         p \        R 4      p\        R4      p\        V ^ ^5\        4      V 8X  g   Q h\        V ^^5\        4      V 8X  g   Q h\        V ^ ^5\        4      V8X  g   Q h\        V ^ ^5\
        4      V8X  g   Q h\        V ^ ^5\        4      V 8X  g   Q h\        V ^ ^5\        4      V 8X  g   Q h\        V ^^5\        4      V 8X  g   Q h\        V ^^5\
        4      V 8X  g   Q h\        V ^^5\        4      V8X  g   Q h\        V ^^5\        4      V8X  g   Q h\        V 4      p \        V4      p\        V4      p\        V ^ ^5\        4      V 8X  g   Q h\        V ^^5\        4      V 8X  g   Q h\        V ^ ^5\        4      V 8X  g   Q h\        V ^ ^5\        4      V 8X  g   Q h\        V ^ ^5\        4      V8X  g   Q h\        V ^ ^5\
        4      V8X  g   Q h\        V ^^5\        4      V8X  g   Q h\        V ^^5\        4      V8X  g   Q h\        V ^^5\        4      V 8X  g   Q h\        V ^^5\
        4      V 8X  g   Q hR# )gÿÿÿÿÿÿï?g     ð?N)	ÚfoneÚ
from_floatÚmpf_perturbr+   r!   r'   r   r$   Úmpf_neg)r6   r7   r8   s      r	   Útest_perturbr@   _   s,  € Ü€AÜÐ&Ó'€AÜÐ%Ó&€AÜ�q˜!˜R¤Ó/°1Ô4Ð4Ð4Ü�q˜!˜R¤Ó/°1Ô4Ð4Ð4Ü�q˜!˜R¤Ó*¨aÔ/Ð/Ð/Ü�q˜!˜R¤Ó/°1Ô4Ð4Ð4Ü�q˜!˜R¤Ó,°Ô1Ð1Ð1Ü�q˜!˜R¤Ó-°Ô2Ð2Ð2Ü�q˜!˜R¤Ó*¨aÔ/Ð/Ð/Ü�q˜!˜R¤Ó/°1Ô4Ð4Ð4Ü�q˜!˜R¤Ó,°Ô1Ð1Ð1Ü�q˜!˜R¤Ó-°Ô2Ð2Ð2Ü�‹
€AÜ�‹
€AÜ�‹
€AÜ�q˜!˜R¤Ó/°1Ô4Ð4Ð4Ü�q˜!˜R¤Ó/°1Ô4Ð4Ð4Ü�q˜!˜R¤Ó*¨aÔ/Ð/Ð/Ü�q˜!˜R¤Ó-°Ô2Ð2Ð2Ü�q˜!˜R¤Ó,°Ô1Ð1Ð1Ü�q˜!˜R¤Ó/°1Ô4Ð4Ð4Ü�q˜!˜R¤Ó*¨aÔ/Ð/Ð/Ü�q˜!˜R¤Ó-°Ô2Ð2Ð2Ü�q˜!˜R¤Ó,°Ô1Ð1Ð1Ü�q˜!˜R¤Ó/°1Ô4Ð4Ò4r   c                  ó|  € \         p \        V ! R 4      V ! R4      4      V ! R4      8X  g   Q h\        V ! R 4      V ! R4      4      V ! R4      8X  g   Q h\        V ! R4      V ! R4      4      V ! R4      8X  g   Q h\        V ! R4      V ! R4      4      V ! R	4      8X  g   Q h\        \        \        V ! R4      4      \        4      V ! R4      8X  g   Q h\        \        V ! R4      \        4      \        4      V ! R4      8X  g   Q h\        \        \        V ! R
4      4      \        4      V ! R
4      8X  g   Q h\        \        V ! R
4      \        4      \        4      V ! R
4      8X  g   Q h\        \        \        4      \        8X  g   Q h\        \        \        4      \        8X  g   Q h\        \        \        4      \        8X  g   Q hR# )g      @g      @g      @g      à?g0Žä.ÿ++Ng      Àg      Àg      à¿g      Àg0Žä.ÿ+«)r=   r5   Úmpf_subr<   Úfzero)Úffs    r	   Útest_add_exactrE   {   sZ  € Ü	€BÜ‘2�c“7™B˜s›GÓ$©¨3«Ô/Ð/Ð/Ü‘2�c“7™B˜t›HÓ%©¨C«Ô0Ð0Ð0Ü‘2�d“8™R ›WÓ%©¨D«Ô1Ð1Ð1Ü‘2�d“8™R ›XÓ&©"¨T«(Ô2Ð2Ð2Ü”7œ4¡ F£Ó,¬dÓ3±r¸&³zÔAÐAÐAÜ”7™2˜f›:¤tÓ,¬dÓ3±r¸&³zÔAÐAÐAÜ”7œ4¡ G£Ó-¬tÓ4¹¸7»ÔCÐCÐCÜ”7™2˜g›;¬Ó-¬tÓ4¹¸7»ÔCÐCÐCÜ”4œÓ¤4Ô'Ð'Ð'Ü”5œ$Ó¤4Ô'Ð'Ð'Ü”5œ%Ó ¤EÔ)Ð)Ò)r   c                  óF  € ^\         n        \        ^4      p R EF  p\        ^^V^,
          ,          4      p\        ^^V,          4      p\        ^^V^,           ,          4      p\        ^^V^,
          ,          ) 4      p\        ^^V,          ) 4      p\        ^^V^,           ,          ) 4      pW,           V8X  g   Q hW,           V8X  g   Q hW,           V8X  g   Q hW,           V 8X  g   Q hW,           V 8X  g   Q hW,           V 8X  g   Q hW ,           V8X  g   Q hW0,           V8X  g   Q hW@,           V8X  g   Q hWP,           V 8X  g   Q hW`,           V 8X  g   Q hWp,           V 8X  g   Q hW,
          V) 8X  g   Q hW,
          V) 8X  g   Q hW,
          V) 8X  g   Q hW,
          V 8X  g   Q hW,
          V 8X  g   Q hW,
          V 8X  g   Q hW ,
          V8X  g   Q hW0,
          V8X  g   Q hW@,
          V8X  g   Q hWP,
          V ) 8X  g   Q hW`,
          V ) 8X  g   Q hWp,
          V ) 8X  d   EK  Q h	  R# )r   N)é    é@   )ÚmpÚdpsÚmpfÚldexp)ÚxÚpr6   r7   r8   r2   ÚeÚfs           r	   Útest_long_exponent_shiftsrQ   ‰   sî  € Ø„B„Fô 	ˆA‹€AÜˆÜ�!�A˜˜!�•HÓˆÜ�!�A�q•D‹MˆÜ�!�A˜˜!�•HÓˆÜ�!�Q˜˜1�•X�IÓˆÜ�!�Q˜•T�E‹NˆÜ�!�Q˜˜1�•X�IÓˆØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜˜Œ{Ðˆ{Ø•˜˜Œ{Ðˆ{Ø•˜˜Œ{Ðˆ{Ø•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜ŒzÐˆzØ•˜˜Œ{Ðˆ{Ø•˜˜Œ{Ðˆ{Ø•˜˜�{Ðˆ{ó= r   c                  ó^  € ^@\         n        \        ^4      \        ^4      \        ,           \        ^4      \        ,
          \        ^4      ) \        ,           \        ^4      ) \        ,
          3 F°  p \	        V 4      p\	        \        V ^ ^5RR7      4      pW8X  g   Q h\        W 4      p\        V4      p\        \        V^ ^5RR7      4      pWE8X  g   Q hR FF  p\        V P                  VR7      p\        \        V ^ ^5VR7      P                  VR7      pW8X  d   KF  Q h	  K²  	  ^5\         n        R# )rH   Ún)ÚprecÚrounding)ÚrndN)rS   r2   ÚurP   r8   )
rI   rT   rK   ÚepsÚfloatÚfaddÚmpcÚcomplexÚto_floatÚ_mpf_)rM   ÚfaÚfbr9   ÚcaÚcbrV   s          r	   Útest_float_roundingrc   ®   sç   € Ø„B„GÜ�!‹f”c˜!“fœS•j¤# a£&¬¥*¬s°1«v¨g´c­k¼CÀ»F¸7Ä3½;ÓGˆÜ�1‹XˆÜ”4˜˜! ¨SÔ1Ó2ˆØŒxˆˆxÜ�‹HˆÜ�Q‹ZˆÜ”T˜!˜A 2¨sÔ3Ó4ˆØŒxˆˆxÛ,ˆCÜ˜!Ÿ'™' sÔ+ˆBÜœ$˜q ¨°CÔ8×>Ñ>ÀCÔHˆBØ–8ˆO�8ó -ñ Hð „B†Gr   N)Ú__doc__ÚmpmathÚmpmath.libmpr
   r   r   r"   r%   r(   r,   r0   r:   r@   rE   rQ   rc   r   r   r	   Ú<module>rg      sZ   ðñô Ü ò%ò#òDòAòDòGòGòAò'ò5ò8*ò#ôJr   