lean4-htt/tests/lean/run/floatBits.lean
Leonardo de Moura f13e5ca852
chore: naming convention and NaN normalization (#6097)
Changes:
- `Float.fromBits` => `Float.ofBits`
- NaN normalization
2024-11-16 00:14:28 +00:00

49 lines
693 B
Text

def d : Float := 1.245
/--
info: 4608285800708723180
-/
#guard_msgs in
#eval d.toBits
/--
info: true
-/
#guard_msgs in
#eval Float.ofBits d.toBits == d
/--
info: NaN
-/
#guard_msgs in
#eval Float.ofBits 9221120237041090560
/--
info: NaN
-/
#guard_msgs in
#eval Float.ofBits 18444492273895866368
/--
info: 9221120237041090560
-/
#guard_msgs in
#eval (Float.ofBits 9221120237041090560).toBits
/--
info: 9221120237041090560
-/
#guard_msgs in
#eval (Float.ofBits 18444492273895866368).toBits
/--
info: 9221120237041090560
-/
#guard_msgs in
#eval (1.0/0.0 - 1.0/0.0).toBits
/--
info: 9221120237041090560
-/
-- Should also produce quiet_NaN
#guard_msgs in
#eval (-(1.0/0.0 - 1.0/0.0)).toBits