# dmath_cos # Independent oracle: Decimal at 430 and 570 digits / exact Fraction arithmetic. # Frozen bits and sweep require review; generation never recalibrates them. # Nonfinite outputs: nan checks classification; +/-inf checks classification and sign. # sweep dd5127d63bcdaf72 # case input0 input1 frozen0 frozen1 reference0 reference1 max_ulp positive_zero 0000000000000000 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=0x0.0p+0 y=0x0.0p+0 negative_zero 8000000000000000 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=-0x0.0p+0 y=0x0.0p+0 least_subnormal 0000000000000001 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=0x0.0000000000001p-1022 y=0x0.0p+0 negative_least_subnormal 8000000000000001 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=-0x0.0000000000001p-1022 y=0x0.0p+0 third_subnormal 0000000000000003 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=0x0.0000000000003p-1022 y=0x0.0p+0 negative_third_subnormal 8000000000000003 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=-0x0.0000000000003p-1022 y=0x0.0p+0 largest_subnormal 000fffffffffffff 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=0x0.fffffffffffffp-1022 y=0x0.0p+0 negative_largest_subnormal 800fffffffffffff 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=-0x0.fffffffffffffp-1022 y=0x0.0p+0 least_normal 0010000000000000 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=0x1.0000000000000p-1022 y=0x0.0p+0 negative_least_normal 8010000000000000 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=-0x1.0000000000000p-1022 y=0x0.0p+0 largest_finite 7fefffffffffffff 0000000000000000 bfefffe62ecfab75 0000000000000000 bfefffe62ecfab75 0000000000000000 1 # x=0x1.fffffffffffffp+1023 y=0x0.0p+0 negative_largest_finite ffefffffffffffff 0000000000000000 bfefffe62ecfab75 0000000000000000 bfefffe62ecfab75 0000000000000000 1 # x=-0x1.fffffffffffffp+1023 y=0x0.0p+0 positive_infinity 7ff0000000000000 0000000000000000 nan 0000000000000000 nan 0000000000000000 1 # x=inf y=0x0.0p+0 negative_infinity fff0000000000000 0000000000000000 nan 0000000000000000 nan 0000000000000000 1 # x=-inf y=0x0.0p+0 quiet_nan_payload 7ff8abcdef135790 0000000000000000 nan 0000000000000000 nan 0000000000000000 1 # x=nan y=0x0.0p+0 negative_quiet_nan_payload fff8abcdef135790 0000000000000000 nan 0000000000000000 nan 0000000000000000 1 # x=nan y=0x0.0p+0 signaling_nan_payload 7ff0000000010248 0000000000000000 nan 0000000000000000 nan 0000000000000000 1 # x=nan y=0x0.0p+0 negative_signaling_nan_payload fff0000000010248 0000000000000000 nan 0000000000000000 nan 0000000000000000 1 # x=nan y=0x0.0p+0 small_positive_angle 3fd6000000000000 0000000000000000 3fee20bf49acd6c1 0000000000000000 3fee20bf49acd6c1 0000000000000000 1 # x=0x1.6000000000000p-2 y=0x0.0p+0 small_negative_angle bfd6000000000000 0000000000000000 3fee20bf49acd6c1 0000000000000000 3fee20bf49acd6c1 0000000000000000 1 # x=-0x1.6000000000000p-2 y=0x0.0p+0 moderate_positive_angle 4045e80000000000 0000000000000000 3fef8a30fe6ef96c 0000000000000000 3fef8a30fe6ef96c 0000000000000000 1 # x=0x1.5e80000000000p+5 y=0x0.0p+0 moderate_negative_angle c045e80000000000 0000000000000000 3fef8a30fe6ef96c 0000000000000000 3fef8a30fe6ef96c 0000000000000000 1 # x=-0x1.5e80000000000p+5 y=0x0.0p+0 large_reduction 428a5c739b18426f 0000000000000000 3fda2a49d24e0f94 0000000000000000 3fda2a49d24e0f94 0000000000000000 1 # x=0x1.a5c739b18426fp+41 y=0x0.0p+0 very_large_reduction 72a73b4a82cf19de 0000000000000000 3fe4832d2f71ebb6 0000000000000000 3fe4832d2f71ebb6 0000000000000000 1 # x=0x1.73b4a82cf19dep+811 y=0x0.0p+0 quarter_turn_kernel_below 3fe921fb54442d17 0000000000000000 3fe6a09e667f3bce 0000000000000000 3fe6a09e667f3bcd 0000000000000000 1 # x=0x1.921fb54442d17p-1 y=0x0.0p+0 quarter_turn_kernel_at 3fe921fb54442d18 0000000000000000 3fe6a09e667f3bcd 0000000000000000 3fe6a09e667f3bcd 0000000000000000 1 # x=0x1.921fb54442d18p-1 y=0x0.0p+0 quarter_turn_kernel_above 3fe921fb54442d19 0000000000000000 3fe6a09e667f3bcc 0000000000000000 3fe6a09e667f3bcc 0000000000000000 1 # x=0x1.921fb54442d19p-1 y=0x0.0p+0 negative_quarter_turn_kernel_below bfe921fb54442d17 0000000000000000 3fe6a09e667f3bce 0000000000000000 3fe6a09e667f3bcd 0000000000000000 1 # x=-0x1.921fb54442d17p-1 y=0x0.0p+0 negative_quarter_turn_kernel_at bfe921fb54442d18 0000000000000000 3fe6a09e667f3bcd 0000000000000000 3fe6a09e667f3bcd 0000000000000000 1 # x=-0x1.921fb54442d18p-1 y=0x0.0p+0 negative_quarter_turn_kernel_above bfe921fb54442d19 0000000000000000 3fe6a09e667f3bcc 0000000000000000 3fe6a09e667f3bcc 0000000000000000 1 # x=-0x1.921fb54442d19p-1 y=0x0.0p+0 medium_reduction_cutoff_below 413921faffffffff 0000000000000000 3fee483125700ac3 0000000000000000 3fee483125700ac3 0000000000000000 1 # x=0x1.921faffffffffp+20 y=0x0.0p+0 medium_reduction_cutoff_at 413921fb00000000 0000000000000000 3fee4831257a62da 0000000000000000 3fee4831257a62da 0000000000000000 1 # x=0x1.921fb00000000p+20 y=0x0.0p+0 medium_reduction_cutoff_above 413921fb00000001 0000000000000000 3fee48312584baf1 0000000000000000 3fee48312584baf1 0000000000000000 1 # x=0x1.921fb00000001p+20 y=0x0.0p+0 negative_medium_reduction_cutoff_below c13921faffffffff 0000000000000000 3fee483125700ac3 0000000000000000 3fee483125700ac3 0000000000000000 1 # x=-0x1.921faffffffffp+20 y=0x0.0p+0 negative_medium_reduction_cutoff_at c13921fb00000000 0000000000000000 3fee4831257a62da 0000000000000000 3fee4831257a62da 0000000000000000 1 # x=-0x1.921fb00000000p+20 y=0x0.0p+0 negative_medium_reduction_cutoff_above c13921fb00000001 0000000000000000 3fee48312584baf1 0000000000000000 3fee48312584baf1 0000000000000000 1 # x=-0x1.921fb00000001p+20 y=0x0.0p+0 tiny_cutoff_below 3e46a09dffffffff 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=0x1.6a09dffffffffp-27 y=0x0.0p+0 tiny_cutoff_at 3e46a09e00000000 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=0x1.6a09e00000000p-27 y=0x0.0p+0 tiny_cutoff_above 3e46a09e00000001 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=0x1.6a09e00000001p-27 y=0x0.0p+0 negative_tiny_cutoff_below be46a09dffffffff 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=-0x1.6a09dffffffffp-27 y=0x0.0p+0 negative_tiny_cutoff_at be46a09e00000000 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=-0x1.6a09e00000000p-27 y=0x0.0p+0 negative_tiny_cutoff_above be46a09e00000001 0000000000000000 3ff0000000000000 0000000000000000 3ff0000000000000 0000000000000000 1 # x=-0x1.6a09e00000001p-27 y=0x0.0p+0