Require Export VST.veric.base.
(* This file contains lemmas regarding "superprecise", and in principle, almost proving that "mapsto" is superprecise.  However, mapsto is not superprecise, because it's not quite true that decode_val is injective.  The only reason is the treatment of single-precision floating-point NaNs, where the conversion from single-prec to double-prec loses one bit of information: both quiet 32-bit NaNs and signalling 32-bit NaNs are quietly turned into quite 64-bit NaNs.  If CompCert ever changes so that this does not happen, then the lemmas in this file might become useful.  *)
Transparent Float.of_bits.
Transparent Float32.of_bits.

Lemma binary_normalize_finite:
forall b m e,
bounded (23 + 1) (2 ^ (8 - 1)) m e = true ->
match
binary_normalize 53 1024 eq_refl eq_refl mode_NE
(cond_Zopp b (Z.pos m)) e b
with B754_finite _ _ _ _ => True | _ => False
end.