Definition canonic_exp x :=
fexp (ln_beta beta x).
Definition canonic (f : float beta) :=
Fexp f = canonic_exp (F2R f).
Definition scaled_mantissa x :=
(x * bpow (- canonic_exp x))%R.
Definition generic_format (x : R) :=
x = F2R (Float beta (Ztrunc (scaled_mantissa x)) (canonic_exp x)).

(** Generic facts about any format *)
Theorem generic_format_discrete :
forall x m,
let e := canonic_exp x in
(F2R (Float beta m e) < x < F2R (Float beta (m + 1) e))%R ->
~ generic_format x.