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)).

Theorem generic_format_F2R : forall m e, ( m <> 0 -> canonic_exp (F2R (Float beta m e)) <= e )%Z -> generic_format (F2R (Float beta m e)).