Built with Alectryon, running Coq+SerAPI v8.10.0+0.7.0. Coq sources are in this panel; goals and messages will appear in the other. Bubbles () indicate interactive fragments: hover for details, tap to reveal contents. Use Ctrl+↑ Ctrl+↓ to navigate, Ctrl+🖱️ to focus.
This file is part of the Flocq formalization of floating-point arithmetic in Coq: http://flocq.gforge.inria.fr/
Copyright (C) 2009-2018 Sylvie Boldo
Copyright (C) 2009-2018 Guillaume Melquiond
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the COPYING file for more details.

Basic properties of floating-point formats: lemmas about mantissa, exponent...

Require Import Raux Defs Digits.

Section Float_prop.

Variable beta : radix.
Notation bpow e := (bpow beta e).

beta:radix

forall e m1 m2 : Z, Rcompare (F2R {| Fnum := m1; Fexp := e |}) (F2R {| Fnum := m2; Fexp := e |}) = (m1 ?= m2)%Z
beta:radix

forall e m1 m2 : Z, Rcompare (F2R {| Fnum := m1; Fexp := e |}) (F2R {| Fnum := m2; Fexp := e |}) = (m1 ?= m2)%Z
beta:radix
e, m1, m2:Z

Rcompare (F2R {| Fnum := m1; Fexp := e |}) (F2R {| Fnum := m2; Fexp := e |}) = (m1 ?= m2)%Z
beta:radix
e, m1, m2:Z

Rcompare (IZR (Fnum {| Fnum := m1; Fexp := e |}) * bpow (Fexp {| Fnum := m1; Fexp := e |})) (IZR (Fnum {| Fnum := m2; Fexp := e |}) * bpow (Fexp {| Fnum := m2; Fexp := e |})) = (m1 ?= m2)%Z
beta:radix
e, m1, m2:Z

Rcompare (IZR m1 * bpow e) (IZR m2 * bpow e) = (m1 ?= m2)%Z
beta:radix
e, m1, m2:Z

Rcompare (IZR m1) (IZR m2) = (m1 ?= m2)%Z
beta:radix
e, m1, m2:Z
(0 < bpow e)%R
beta:radix
e, m1, m2:Z

(0 < bpow e)%R
apply bpow_gt_0. Qed.
Basic facts
beta:radix

forall e m1 m2 : Z, (F2R {| Fnum := m1; Fexp := e |} <= F2R {| Fnum := m2; Fexp := e |})%R -> (m1 <= m2)%Z
beta:radix

forall e m1 m2 : Z, (F2R {| Fnum := m1; Fexp := e |} <= F2R {| Fnum := m2; Fexp := e |})%R -> (m1 <= m2)%Z
beta:radix
e, m1, m2:Z
H:(F2R {| Fnum := m1; Fexp := e |} <= F2R {| Fnum := m2; Fexp := e |})%R

(m1 <= m2)%Z
beta:radix
e, m1, m2:Z
H:(F2R {| Fnum := m1; Fexp := e |} <= F2R {| Fnum := m2; Fexp := e |})%R

(IZR m1 <= IZR m2)%R
beta:radix
e, m1, m2:Z
H:(F2R {| Fnum := m1; Fexp := e |} <= F2R {| Fnum := m2; Fexp := e |})%R

(0 < bpow e)%R
beta:radix
e, m1, m2:Z
H:(F2R {| Fnum := m1; Fexp := e |} <= F2R {| Fnum := m2; Fexp := e |})%R
(IZR m1 * bpow e <= IZR m2 * bpow e)%R
beta:radix
e, m1, m2:Z
H:(F2R {| Fnum := m1; Fexp := e |} <= F2R {| Fnum := m2; Fexp := e |})%R

(IZR m1 * bpow e <= IZR m2 * bpow e)%R
exact H. Qed.
beta:radix

forall m1 m2 e : Z, (m1 <= m2)%Z -> (F2R {| Fnum := m1; Fexp := e |} <= F2R {| Fnum := m2; Fexp := e |})%R
beta:radix

forall m1 m2 e : Z, (m1 <= m2)%Z -> (F2R {| Fnum := m1; Fexp := e |} <= F2R {| Fnum := m2; Fexp := e |})%R
beta:radix
m1, m2, e:Z
H:(m1 <= m2)%Z

(F2R {| Fnum := m1; Fexp := e |} <= F2R {| Fnum := m2; Fexp := e |})%R
beta:radix
m1, m2, e:Z
H:(m1 <= m2)%Z

(IZR (Fnum {| Fnum := m1; Fexp := e |}) * bpow (Fexp {| Fnum := m1; Fexp := e |}) <= IZR (Fnum {| Fnum := m2; Fexp := e |}) * bpow (Fexp {| Fnum := m2; Fexp := e |}))%R
beta:radix
m1, m2, e:Z
H:(m1 <= m2)%Z

(IZR m1 * bpow e <= IZR m2 * bpow e)%R
beta:radix
m1, m2, e:Z
H:(m1 <= m2)%Z

(0 <= bpow e)%R
beta:radix
m1, m2, e:Z
H:(m1 <= m2)%Z
(IZR m1 <= IZR m2)%R
beta:radix
m1, m2, e:Z
H:(m1 <= m2)%Z

(IZR m1 <= IZR m2)%R
now apply IZR_le. Qed.
beta:radix

forall e m1 m2 : Z, (F2R {| Fnum := m1; Fexp := e |} < F2R {| Fnum := m2; Fexp := e |})%R -> (m1 < m2)%Z
beta:radix

forall e m1 m2 : Z, (F2R {| Fnum := m1; Fexp := e |} < F2R {| Fnum := m2; Fexp := e |})%R -> (m1 < m2)%Z
beta:radix
e, m1, m2:Z
H:(F2R {| Fnum := m1; Fexp := e |} < F2R {| Fnum := m2; Fexp := e |})%R

(m1 < m2)%Z
beta:radix
e, m1, m2:Z
H:(F2R {| Fnum := m1; Fexp := e |} < F2R {| Fnum := m2; Fexp := e |})%R

(IZR m1 < IZR m2)%R
beta:radix
e, m1, m2:Z
H:(F2R {| Fnum := m1; Fexp := e |} < F2R {| Fnum := m2; Fexp := e |})%R

(0 < bpow e)%R
beta:radix
e, m1, m2:Z
H:(F2R {| Fnum := m1; Fexp := e |} < F2R {| Fnum := m2; Fexp := e |})%R
(IZR m1 * bpow e < IZR m2 * bpow e)%R
beta:radix
e, m1, m2:Z
H:(F2R {| Fnum := m1; Fexp := e |} < F2R {| Fnum := m2; Fexp := e |})%R

(IZR m1 * bpow e < IZR m2 * bpow e)%R
exact H. Qed.
beta:radix

forall e m1 m2 : Z, (m1 < m2)%Z -> (F2R {| Fnum := m1; Fexp := e |} < F2R {| Fnum := m2; Fexp := e |})%R
beta:radix

forall e m1 m2 : Z, (m1 < m2)%Z -> (F2R {| Fnum := m1; Fexp := e |} < F2R {| Fnum := m2; Fexp := e |})%R
beta:radix
e, m1, m2:Z
H:(m1 < m2)%Z

(F2R {| Fnum := m1; Fexp := e |} < F2R {| Fnum := m2; Fexp := e |})%R
beta:radix
e, m1, m2:Z
H:(m1 < m2)%Z

(IZR (Fnum {| Fnum := m1; Fexp := e |}) * bpow (Fexp {| Fnum := m1; Fexp := e |}) < IZR (Fnum {| Fnum := m2; Fexp := e |}) * bpow (Fexp {| Fnum := m2; Fexp := e |}))%R
beta:radix
e, m1, m2:Z
H:(m1 < m2)%Z

(IZR m1 * bpow e < IZR m2 * bpow e)%R
beta:radix
e, m1, m2:Z
H:(m1 < m2)%Z

(0 < bpow e)%R
beta:radix
e, m1, m2:Z
H:(m1 < m2)%Z
(IZR m1 < IZR m2)%R
beta:radix
e, m1, m2:Z
H:(m1 < m2)%Z

(IZR m1 < IZR m2)%R
now apply IZR_lt. Qed.
beta:radix

forall e m1 m2 : Z, m1 = m2 -> F2R {| Fnum := m1; Fexp := e |} = F2R {| Fnum := m2; Fexp := e |}
beta:radix

forall e m1 m2 : Z, m1 = m2 -> F2R {| Fnum := m1; Fexp := e |} = F2R {| Fnum := m2; Fexp := e |}
beta:radix
e, m1, m2:Z
H:m1 = m2

F2R {| Fnum := m1; Fexp := e |} = F2R {| Fnum := m2; Fexp := e |}
now apply (f_equal (fun m => F2R (Float beta m e))). Qed.
beta:radix

forall e m1 m2 : Z, F2R {| Fnum := m1; Fexp := e |} = F2R {| Fnum := m2; Fexp := e |} -> m1 = m2
beta:radix

forall e m1 m2 : Z, F2R {| Fnum := m1; Fexp := e |} = F2R {| Fnum := m2; Fexp := e |} -> m1 = m2
beta:radix
e, m1, m2:Z
H:F2R {| Fnum := m1; Fexp := e |} = F2R {| Fnum := m2; Fexp := e |}

m1 = m2
apply Zle_antisym ; apply le_F2R with e ; rewrite H ; apply Rle_refl. Qed.
beta:radix

forall m e : Z, F2R {| Fnum := Z.abs m; Fexp := e |} = Rabs (F2R {| Fnum := m; Fexp := e |})
beta:radix

forall m e : Z, F2R {| Fnum := Z.abs m; Fexp := e |} = Rabs (F2R {| Fnum := m; Fexp := e |})
beta:radix
m, e:Z

F2R {| Fnum := Z.abs m; Fexp := e |} = Rabs (F2R {| Fnum := m; Fexp := e |})
beta:radix
m, e:Z

(IZR (Fnum {| Fnum := Z.abs m; Fexp := e |}) * bpow (Fexp {| Fnum := Z.abs m; Fexp := e |}))%R = Rabs (IZR (Fnum {| Fnum := m; Fexp := e |}) * bpow (Fexp {| Fnum := m; Fexp := e |}))
beta:radix
m, e:Z

(IZR (Fnum {| Fnum := Z.abs m; Fexp := e |}) * bpow (Fexp {| Fnum := Z.abs m; Fexp := e |}))%R = (Rabs (IZR (Fnum {| Fnum := m; Fexp := e |})) * Rabs (bpow (Fexp {| Fnum := m; Fexp := e |})))%R
beta:radix
m, e:Z

(IZR (Fnum {| Fnum := Z.abs m; Fexp := e |}) * bpow (Fexp {| Fnum := Z.abs m; Fexp := e |}))%R = (IZR (Z.abs (Fnum {| Fnum := m; Fexp := e |})) * Rabs (bpow (Fexp {| Fnum := m; Fexp := e |})))%R
beta:radix
m, e:Z

(IZR (Z.abs m) * bpow e)%R = (IZR (Z.abs m) * Rabs (bpow e))%R
beta:radix
m, e:Z

bpow e = Rabs (bpow e)
beta:radix
m, e:Z

(bpow e >= 0)%R
beta:radix
m, e:Z

(0 <= bpow e)%R
apply bpow_ge_0. Qed.
beta:radix

forall m e : Z, F2R {| Fnum := - m; Fexp := e |} = (- F2R {| Fnum := m; Fexp := e |})%R
beta:radix

forall m e : Z, F2R {| Fnum := - m; Fexp := e |} = (- F2R {| Fnum := m; Fexp := e |})%R
beta:radix
m, e:Z

F2R {| Fnum := - m; Fexp := e |} = (- F2R {| Fnum := m; Fexp := e |})%R
beta:radix
m, e:Z

(IZR (Fnum {| Fnum := - m; Fexp := e |}) * bpow (Fexp {| Fnum := - m; Fexp := e |}))%R = (- (IZR (Fnum {| Fnum := m; Fexp := e |}) * bpow (Fexp {| Fnum := m; Fexp := e |})))%R
beta:radix
m, e:Z

(IZR (- m) * bpow e)%R = (- (IZR m * bpow e))%R
beta:radix
m, e:Z

(IZR (- m) * bpow e)%R = (- IZR m * bpow e)%R
now rewrite opp_IZR. Qed.
beta:radix

forall (b : bool) (m e : Z), F2R {| Fnum := SpecFloatCopy.cond_Zopp b m; Fexp := e |} = cond_Ropp b (F2R {| Fnum := m; Fexp := e |})
beta:radix

forall (b : bool) (m e : Z), F2R {| Fnum := SpecFloatCopy.cond_Zopp b m; Fexp := e |} = cond_Ropp b (F2R {| Fnum := m; Fexp := e |})
beta:radix
m, e:Z

(IZR (- m) * bpow e)%R = (- (IZR m * bpow e))%R
beta:radix
m, e:Z
(IZR m * bpow e)%R = (IZR m * bpow e)%R
beta:radix
m, e:Z

(IZR m * bpow e)%R = (IZR m * bpow e)%R
apply refl_equal. Qed.
Sign facts
beta:radix

forall e : Z, F2R {| Fnum := 0; Fexp := e |} = 0%R
beta:radix

forall e : Z, F2R {| Fnum := 0; Fexp := e |} = 0%R
beta:radix
e:Z

F2R {| Fnum := 0; Fexp := e |} = 0%R
beta:radix
e:Z

(IZR (Fnum {| Fnum := 0; Fexp := e |}) * bpow (Fexp {| Fnum := 0; Fexp := e |}))%R = 0%R
beta:radix
e:Z

(0 * bpow e)%R = 0%R
apply Rmult_0_l. Qed.
beta:radix

forall m e : Z, F2R {| Fnum := m; Fexp := e |} = 0%R -> m = 0%Z
beta:radix

forall m e : Z, F2R {| Fnum := m; Fexp := e |} = 0%R -> m = 0%Z
beta:radix
m, e:Z
H:F2R {| Fnum := m; Fexp := e |} = 0%R

m = 0%Z
beta:radix
m, e:Z
H:F2R {| Fnum := m; Fexp := e |} = 0%R

F2R {| Fnum := m; Fexp := e |} = F2R {| Fnum := 0; Fexp := e |}
now rewrite F2R_0. Qed.
beta:radix

forall m e : Z, (0 <= F2R {| Fnum := m; Fexp := e |})%R -> (0 <= m)%Z
beta:radix

forall m e : Z, (0 <= F2R {| Fnum := m; Fexp := e |})%R -> (0 <= m)%Z
beta:radix
m, e:Z
H:(0 <= F2R {| Fnum := m; Fexp := e |})%R

(0 <= m)%Z
beta:radix
m, e:Z
H:(0 <= F2R {| Fnum := m; Fexp := e |})%R

(F2R {| Fnum := 0; Fexp := e |} <= F2R {| Fnum := m; Fexp := e |})%R
now rewrite F2R_0. Qed.
beta:radix

forall m e : Z, (F2R {| Fnum := m; Fexp := e |} <= 0)%R -> (m <= 0)%Z
beta:radix

forall m e : Z, (F2R {| Fnum := m; Fexp := e |} <= 0)%R -> (m <= 0)%Z
beta:radix
m, e:Z
H:(F2R {| Fnum := m; Fexp := e |} <= 0)%R

(m <= 0)%Z
beta:radix
m, e:Z
H:(F2R {| Fnum := m; Fexp := e |} <= 0)%R

(F2R {| Fnum := m; Fexp := e |} <= F2R {| Fnum := 0; Fexp := e |})%R
now rewrite F2R_0. Qed.
beta:radix

forall m e : Z, (0 < F2R {| Fnum := m; Fexp := e |})%R -> (0 < m)%Z
beta:radix

forall m e : Z, (0 < F2R {| Fnum := m; Fexp := e |})%R -> (0 < m)%Z
beta:radix
m, e:Z
H:(0 < F2R {| Fnum := m; Fexp := e |})%R

(0 < m)%Z
beta:radix
m, e:Z
H:(0 < F2R {| Fnum := m; Fexp := e |})%R

(F2R {| Fnum := 0; Fexp := e |} < F2R {| Fnum := m; Fexp := e |})%R
now rewrite F2R_0. Qed.
beta:radix

forall m e : Z, (F2R {| Fnum := m; Fexp := e |} < 0)%R -> (m < 0)%Z
beta:radix

forall m e : Z, (F2R {| Fnum := m; Fexp := e |} < 0)%R -> (m < 0)%Z
beta:radix
m, e:Z
H:(F2R {| Fnum := m; Fexp := e |} < 0)%R

(m < 0)%Z
beta:radix
m, e:Z
H:(F2R {| Fnum := m; Fexp := e |} < 0)%R

(F2R {| Fnum := m; Fexp := e |} < F2R {| Fnum := 0; Fexp := e |})%R
now rewrite F2R_0. Qed.
beta:radix

forall f : float beta, (0 <= Fnum f)%Z -> (0 <= F2R f)%R
beta:radix

forall f : float beta, (0 <= Fnum f)%Z -> (0 <= F2R f)%R
beta:radix
f:float beta
H:(0 <= Fnum f)%Z

(0 <= F2R f)%R
beta:radix
f:float beta
H:(0 <= Fnum f)%Z

(F2R {| Fnum := 0; Fexp := Fexp f |} <= F2R f)%R
now apply F2R_le. Qed.
beta:radix

forall f : float beta, (Fnum f <= 0)%Z -> (F2R f <= 0)%R
beta:radix

forall f : float beta, (Fnum f <= 0)%Z -> (F2R f <= 0)%R
beta:radix
f:float beta
H:(Fnum f <= 0)%Z

(F2R f <= 0)%R
beta:radix
f:float beta
H:(Fnum f <= 0)%Z

(F2R f <= F2R {| Fnum := 0; Fexp := Fexp f |})%R
now apply F2R_le. Qed.
beta:radix

forall f : float beta, (0 < Fnum f)%Z -> (0 < F2R f)%R
beta:radix

forall f : float beta, (0 < Fnum f)%Z -> (0 < F2R f)%R
beta:radix
f:float beta
H:(0 < Fnum f)%Z

(0 < F2R f)%R
beta:radix
f:float beta
H:(0 < Fnum f)%Z

(F2R {| Fnum := 0; Fexp := Fexp f |} < F2R f)%R
now apply F2R_lt. Qed.
beta:radix

forall f : float beta, (Fnum f < 0)%Z -> (F2R f < 0)%R
beta:radix

forall f : float beta, (Fnum f < 0)%Z -> (F2R f < 0)%R
beta:radix
f:float beta
H:(Fnum f < 0)%Z

(F2R f < 0)%R
beta:radix
f:float beta
H:(Fnum f < 0)%Z

(F2R f < F2R {| Fnum := 0; Fexp := Fexp f |})%R
now apply F2R_lt. Qed.
beta:radix

forall f : float beta, Fnum f <> 0%Z -> F2R f <> 0%R
beta:radix

forall f : float beta, Fnum f <> 0%Z -> F2R f <> 0%R
beta:radix
f:float beta
H:Fnum f <> 0%Z
H1:F2R f = 0%R

False
beta:radix
f:float beta
H:Fnum f <> 0%Z
H1:F2R f = 0%R

Fnum f = 0%Z
now apply eq_0_F2R with (Fexp f). Qed.
beta:radix

forall f : float beta, (0 <= F2R f)%R -> (0 <= Fnum f)%Z
beta:radix

forall f : float beta, (0 <= F2R f)%R -> (0 <= Fnum f)%Z
beta:radix
f:float beta
H:(0 <= F2R f)%R

(0 <= Fnum f)%Z
beta:radix
f:float beta
H:(0 <= F2R f)%R

(Fnum f < 0)%Z -> (0 <= Fnum f)%Z
beta:radix
f:float beta
H1:(Fnum f < 0)%Z

~ (0 <= F2R f)%R
beta:radix
f:float beta
H1:(Fnum f < 0)%Z

(F2R f < 0)%R
now apply F2R_lt_0. Qed.
beta:radix

forall f : float beta, (F2R f <= 0)%R -> (Fnum f <= 0)%Z
beta:radix

forall f : float beta, (F2R f <= 0)%R -> (Fnum f <= 0)%Z
beta:radix
f:float beta
H:(F2R f <= 0)%R

(Fnum f <= 0)%Z
beta:radix
f:float beta
H:(F2R f <= 0)%R

(0 < Fnum f)%Z -> (Fnum f <= 0)%Z
beta:radix
f:float beta
H1:(0 < Fnum f)%Z

~ (F2R f <= 0)%R
beta:radix
f:float beta
H1:(0 < Fnum f)%Z

(0 < F2R f)%R
now apply F2R_gt_0. Qed.
Floats and bpow
beta:radix

forall e : Z, F2R {| Fnum := 1; Fexp := e |} = bpow e
beta:radix

forall e : Z, F2R {| Fnum := 1; Fexp := e |} = bpow e
beta:radix
e:Z

F2R {| Fnum := 1; Fexp := e |} = bpow e
beta:radix
e:Z

(IZR (Fnum {| Fnum := 1; Fexp := e |}) * bpow (Fexp {| Fnum := 1; Fexp := e |}))%R = bpow e
beta:radix
e:Z

(1 * bpow e)%R = bpow e
apply Rmult_1_l. Qed.
beta:radix

forall m e : Z, (0 < m)%Z -> (bpow e <= F2R {| Fnum := m; Fexp := e |})%R
beta:radix

forall m e : Z, (0 < m)%Z -> (bpow e <= F2R {| Fnum := m; Fexp := e |})%R
beta:radix
m, e:Z
H:(0 < m)%Z

(bpow e <= F2R {| Fnum := m; Fexp := e |})%R
beta:radix
m, e:Z
H:(0 < m)%Z

(F2R {| Fnum := 1; Fexp := e |} <= F2R {| Fnum := m; Fexp := e |})%R
beta:radix
m, e:Z
H:(0 < m)%Z

(1 <= m)%Z
now apply (Zlt_le_succ 0). Qed.
beta:radix

forall m e1 e2 : Z, (0 < m)%Z -> (F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R -> (F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix

forall m e1 e2 : Z, (0 < m)%Z -> (F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R -> (F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z

(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R -> (F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R

(F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R

(e1 <= e2)%Z
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
He:(e1 <= e2)%Z
(F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
(* . *)
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R

(bpow e1 <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
He:(e1 <= e2)%Z
(F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R

(bpow e1 <= F2R {| Fnum := m; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
(F2R {| Fnum := m; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
He:(e1 <= e2)%Z
(F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R

(bpow e1 <= IZR (Fnum {| Fnum := m; Fexp := e1 |}) * bpow (Fexp {| Fnum := m; Fexp := e1 |}))%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
(F2R {| Fnum := m; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
He:(e1 <= e2)%Z
(F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R

(bpow e1 <= IZR m * bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
(F2R {| Fnum := m; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
He:(e1 <= e2)%Z
(F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R

(1 * bpow e1 <= IZR m * bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
(F2R {| Fnum := m; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
He:(e1 <= e2)%Z
(F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R

(0 <= bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
(1 <= IZR m)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
(F2R {| Fnum := m; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
He:(e1 <= e2)%Z
(F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R

(1 <= IZR m)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
(F2R {| Fnum := m; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
He:(e1 <= e2)%Z
(F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R

(1 <= m)%Z
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
(F2R {| Fnum := m; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
He:(e1 <= e2)%Z
(F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R

(F2R {| Fnum := m; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
He:(e1 <= e2)%Z
(F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
H:(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R
He:(e1 <= e2)%Z

(F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
(* . *)
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z

(F2R {| Fnum := m; Fexp := e1 |} < bpow e2)%R -> (F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow e2)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z

(F2R {| Fnum := m; Fexp := e1 |} < bpow (e2 - e1 + e1))%R -> (F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow (e2 - e1 + e1))%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z

(F2R {| Fnum := m; Fexp := e1 |} < bpow (e2 - e1) * bpow e1)%R -> (F2R {| Fnum := m + 1; Fexp := e1 |} <= bpow (e2 - e1) * bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z

(IZR (Fnum {| Fnum := m; Fexp := e1 |}) * bpow (Fexp {| Fnum := m; Fexp := e1 |}) < bpow (e2 - e1) * bpow e1)%R -> (IZR (Fnum {| Fnum := m + 1; Fexp := e1 |}) * bpow (Fexp {| Fnum := m + 1; Fexp := e1 |}) <= bpow (e2 - e1) * bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z

(IZR m * bpow e1 < bpow (e2 - e1) * bpow e1)%R -> (IZR (m + 1) * bpow e1 <= bpow (e2 - e1) * bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z

(IZR m * bpow e1 < IZR (beta ^ (e2 - e1)) * bpow e1)%R -> (IZR (m + 1) * bpow e1 <= IZR (beta ^ (e2 - e1)) * bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
H:(IZR m * bpow e1 < IZR (beta ^ (e2 - e1)) * bpow e1)%R

(IZR (m + 1) * bpow e1 <= IZR (beta ^ (e2 - e1)) * bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
H:(IZR m * bpow e1 < IZR (beta ^ (e2 - e1)) * bpow e1)%R

(0 <= bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
H:(IZR m * bpow e1 < IZR (beta ^ (e2 - e1)) * bpow e1)%R
(IZR (m + 1) <= IZR (beta ^ (e2 - e1)))%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
H:(IZR m * bpow e1 < IZR (beta ^ (e2 - e1)) * bpow e1)%R

(IZR (m + 1) <= IZR (beta ^ (e2 - e1)))%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
H:(IZR m < IZR (beta ^ (e2 - e1)))%R

(IZR (m + 1) <= IZR (beta ^ (e2 - e1)))%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
H:(IZR m * bpow e1 < IZR (beta ^ (e2 - e1)) * bpow e1)%R
(0 < bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
H:(IZR m < IZR (beta ^ (e2 - e1)))%R

(m + 1 <= beta ^ (e2 - e1))%Z
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
H:(IZR m * bpow e1 < IZR (beta ^ (e2 - e1)) * bpow e1)%R
(0 < bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
H:(IZR m < IZR (beta ^ (e2 - e1)))%R

(m < beta ^ (e2 - e1))%Z
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
H:(IZR m * bpow e1 < IZR (beta ^ (e2 - e1)) * bpow e1)%R
(0 < bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
H:(IZR m * bpow e1 < IZR (beta ^ (e2 - e1)) * bpow e1)%R

(0 < bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(0 < m)%Z
He:(e1 <= e2)%Z

(0 <= e2 - e1)%Z
now apply Zle_minus_le_0. Qed.
beta:radix

forall m e1 e2 : Z, (1 < m)%Z -> (bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix

forall m e1 e2 : Z, (1 < m)%Z -> (bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z

(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z

(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z

(bpow (e2 - e1 + e1) < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow (e2 - e1 + e1) <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z

(bpow (e2 - e1) * bpow e1 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow (e2 - e1) * bpow e1 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z

(bpow (e2 - e1) * bpow e1 < IZR (Fnum {| Fnum := m; Fexp := e1 |}) * bpow (Fexp {| Fnum := m; Fexp := e1 |}))%R -> (bpow (e2 - e1) * bpow e1 <= IZR (Fnum {| Fnum := m - 1; Fexp := e1 |}) * bpow (Fexp {| Fnum := m - 1; Fexp := e1 |}))%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z

(bpow (e2 - e1) * bpow e1 < IZR m * bpow e1)%R -> (bpow (e2 - e1) * bpow e1 <= IZR (m - 1) * bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z

(IZR (beta ^ (e2 - e1)) * bpow e1 < IZR m * bpow e1)%R -> (IZR (beta ^ (e2 - e1)) * bpow e1 <= IZR (m - 1) * bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) * bpow e1 < IZR m * bpow e1)%R

(IZR (beta ^ (e2 - e1)) * bpow e1 <= IZR (m - 1) * bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) * bpow e1 < IZR m * bpow e1)%R

(0 <= bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) * bpow e1 < IZR m * bpow e1)%R
(IZR (beta ^ (e2 - e1)) <= IZR (m - 1))%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) * bpow e1 < IZR m * bpow e1)%R

(IZR (beta ^ (e2 - e1)) <= IZR (m - 1))%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) < IZR m)%R

(IZR (beta ^ (e2 - e1)) <= IZR (m - 1))%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) * bpow e1 < IZR m * bpow e1)%R
(0 < bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) < IZR m)%R

(beta ^ (e2 - e1) <= m - 1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) * bpow e1 < IZR m * bpow e1)%R
(0 < bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) < IZR m)%R

(Z.pred (Z.succ (beta ^ (e2 - e1))) <= m - 1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) * bpow e1 < IZR m * bpow e1)%R
(0 < bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) < IZR m)%R

(Z.succ (beta ^ (e2 - e1)) <= m)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) * bpow e1 < IZR m * bpow e1)%R
(0 < bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) < IZR m)%R

(beta ^ (e2 - e1) < m)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) * bpow e1 < IZR m * bpow e1)%R
(0 < bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
H:(IZR (beta ^ (e2 - e1)) * bpow e1 < IZR m * bpow e1)%R

(0 < bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z
(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e1 <= e2)%Z

(0 <= e2 - e1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z

(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R -> (bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R

(bpow e2 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R

(bpow e2 <= 1 * bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R
(1 * bpow e1 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R

(bpow e2 <= bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R
(1 * bpow e1 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R

(e2 <= e1)%Z
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R
(1 * bpow e1 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R

(1 * bpow e1 <= F2R {| Fnum := m - 1; Fexp := e1 |})%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R

(1 * bpow e1 <= IZR (Fnum {| Fnum := m - 1; Fexp := e1 |}) * bpow (Fexp {| Fnum := m - 1; Fexp := e1 |}))%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R

(1 * bpow e1 <= IZR (m - 1) * bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R

(0 <= bpow e1)%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R
(1 <= IZR (m - 1))%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R

(1 <= IZR (m - 1))%R
beta:radix
m, e1, e2:Z
Hm:(1 < m)%Z
He:(e2 < e1)%Z
H:(bpow e2 < F2R {| Fnum := m; Fexp := e1 |})%R

(1 <= m - 1)%Z
omega. Qed.
beta:radix

forall (f : float beta) (e' : Z), (Z.abs (Fnum f) < beta ^ (e' - Fexp f))%Z -> (Rabs (F2R f) < bpow e')%R
beta:radix

forall (f : float beta) (e' : Z), (Z.abs (Fnum f) < beta ^ (e' - Fexp f))%Z -> (Rabs (F2R f) < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z

(Rabs (F2R {| Fnum := m; Fexp := e |}) < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z

(F2R {| Fnum := Z.abs m; Fexp := e |} < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e <= e')%Z

(F2R {| Fnum := Z.abs m; Fexp := e |} < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z
(F2R {| Fnum := Z.abs m; Fexp := e |} < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e <= e')%Z

(IZR (Fnum {| Fnum := Z.abs m; Fexp := e |}) * bpow (Fexp {| Fnum := Z.abs m; Fexp := e |}) < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z
(F2R {| Fnum := Z.abs m; Fexp := e |} < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e <= e')%Z

(IZR (Z.abs m) * bpow e < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z
(F2R {| Fnum := Z.abs m; Fexp := e |} < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e <= e')%Z

(0 < bpow (- e))%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e <= e')%Z
(IZR (Z.abs m) * bpow e * bpow (- e) < bpow e' * bpow (- e))%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z
(F2R {| Fnum := Z.abs m; Fexp := e |} < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e <= e')%Z

(IZR (Z.abs m) * bpow e * bpow (- e) < bpow e' * bpow (- e))%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z
(F2R {| Fnum := Z.abs m; Fexp := e |} < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e <= e')%Z

(IZR (Z.abs m) < bpow (e' + - e))%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z
(F2R {| Fnum := Z.abs m; Fexp := e |} < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e <= e')%Z

(IZR (Z.abs m) < IZR (beta ^ (e' + - e)))%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e <= e')%Z
(0 <= e' + - e)%Z
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z
(F2R {| Fnum := Z.abs m; Fexp := e |} < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e <= e')%Z

(IZR (Z.abs m) < IZR (beta ^ (e' + - e)))%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z
(F2R {| Fnum := Z.abs m; Fexp := e |} < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z

(F2R {| Fnum := Z.abs m; Fexp := e |} < bpow e')%R
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z

(beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}) <= Z.abs (Fnum {| Fnum := m; Fexp := e |}))%Z
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z

(beta ^ (e' - e) <= Z.abs m)%Z
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z

(e' - e < 0)%Z -> (beta ^ (e' - e) <= Z.abs m)%Z
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z
(e' - e < 0)%Z
beta:radix
m, e, e':Z
Hm:(Z.abs (Fnum {| Fnum := m; Fexp := e |}) < beta ^ (e' - Fexp {| Fnum := m; Fexp := e |}))%Z
He:(e' < e)%Z

(e' - e < 0)%Z -> (beta ^ (e' - e) <= Z.abs m)%Z
beta:radix
m, e, e':Z

(e' - e < 0)%Z -> (beta ^ (e' - e) <= Z.abs m)%Z
beta:radix
m, e, e':Z

forall p : positive, (Z.neg p < 0)%Z -> (beta ^ Z.neg p <= Z.abs m)%Z
beta:radix
m, e, e':Z
p:positive

(beta ^ Z.neg p <= Z.abs m)%Z
apply Zabs_pos. Qed.
beta:radix

forall e' m e : Z, (e' <= e)%Z -> F2R {| Fnum := m; Fexp := e |} = F2R {| Fnum := m * beta ^ (e - e'); Fexp := e' |}
beta:radix

forall e' m e : Z, (e' <= e)%Z -> F2R {| Fnum := m; Fexp := e |} = F2R {| Fnum := m * beta ^ (e - e'); Fexp := e' |}
beta:radix
e', m, e:Z
He:(e' <= e)%Z

F2R {| Fnum := m; Fexp := e |} = F2R {| Fnum := m * beta ^ (e - e'); Fexp := e' |}
beta:radix
e', m, e:Z
He:(e' <= e)%Z

(IZR (Fnum {| Fnum := m; Fexp := e |}) * bpow (Fexp {| Fnum := m; Fexp := e |}))%R = (IZR (Fnum {| Fnum := m * beta ^ (e - e'); Fexp := e' |}) * bpow (Fexp {| Fnum := m * beta ^ (e - e'); Fexp := e' |}))%R
beta:radix
e', m, e:Z
He:(e' <= e)%Z

(IZR m * bpow e)%R = (IZR (m * beta ^ (e - e')) * bpow e')%R
beta:radix
e', m, e:Z
He:(e' <= e)%Z

(IZR m * bpow e)%R = (IZR m * (bpow (e - e') * bpow e'))%R
beta:radix
e', m, e:Z
He:(e' <= e)%Z
(0 <= e - e')%Z
beta:radix
e', m, e:Z
He:(e' <= e)%Z

bpow e = (bpow (e - e') * bpow e')%R
beta:radix
e', m, e:Z
He:(e' <= e)%Z
(0 <= e - e')%Z
beta:radix
e', m, e:Z
He:(e' <= e)%Z

bpow (e - e' + e') = (bpow (e - e') * bpow e')%R
beta:radix
e', m, e:Z
He:(e' <= e)%Z
(0 <= e - e')%Z
beta:radix
e', m, e:Z
He:(e' <= e)%Z

(0 <= e - e')%Z
now apply Zle_minus_le_0. Qed.
beta:radix

forall m e e' p : Z, (Z.abs m < beta ^ p)%Z -> (bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R -> F2R {| Fnum := m; Fexp := e |} = F2R {| Fnum := m * beta ^ (e - e' + p); Fexp := e' - p |}
beta:radix

forall m e e' p : Z, (Z.abs m < beta ^ p)%Z -> (bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R -> F2R {| Fnum := m; Fexp := e |} = F2R {| Fnum := m * beta ^ (e - e' + p); Fexp := e' - p |}
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R

F2R {| Fnum := m; Fexp := e |} = F2R {| Fnum := m * beta ^ (e - e' + p); Fexp := e' - p |}
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R

(0 <= p)%Z
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z
F2R {| Fnum := m; Fexp := e |} = F2R {| Fnum := m * beta ^ (e - e' + p); Fexp := e' - p |}
beta:radix
m, e, e':Z
p:positive
Hm:(Z.abs m < beta ^ Z.neg p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R

(0 <= Z.neg p)%Z
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z
F2R {| Fnum := m; Fexp := e |} = F2R {| Fnum := m * beta ^ (e - e' + p); Fexp := e' - p |}
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z

F2R {| Fnum := m; Fexp := e |} = F2R {| Fnum := m * beta ^ (e - e' + p); Fexp := e' - p |}
(* . *)
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z

F2R {| Fnum := m; Fexp := e |} = F2R {| Fnum := m * beta ^ (e - (e' - p)); Fexp := e' - p |}
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z

(e' - p <= e)%Z
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z

(e' - 1 < e + p)%Z -> (e' - p <= e)%Z
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z
(e' - 1 < e + p)%Z
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z

(e' - 1 < e + p)%Z
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z

(bpow (e' - 1) < bpow (e + p))%R
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z

(Rabs (F2R {| Fnum := m; Fexp := e |}) < bpow (e + p))%R
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z

(F2R {| Fnum := Z.abs m; Fexp := e |} < bpow p * bpow e)%R
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z

(0 < bpow e)%R
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z
(IZR (Fnum {| Fnum := Z.abs m; Fexp := e |}) < bpow p)%R
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z

(IZR (Fnum {| Fnum := Z.abs m; Fexp := e |}) < bpow p)%R
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z

(IZR (Fnum {| Fnum := Z.abs m; Fexp := e |}) < IZR (beta ^ p))%R
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z
(0 <= p)%Z
beta:radix
m, e, e', p:Z
Hm:(Z.abs m < beta ^ p)%Z
Hf:(bpow (e' - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}))%R
Hp:(0 <= p)%Z

(0 <= p)%Z
exact Hp. Qed.
Floats and mag
beta:radix

forall (x : R) (m e : Z), (0 < m)%Z -> (F2R {| Fnum := m; Fexp := e |} <= x < F2R {| Fnum := m + 1; Fexp := e |})%R -> mag beta x = mag beta (F2R {| Fnum := m; Fexp := e |})
beta:radix

forall (x : R) (m e : Z), (0 < m)%Z -> (F2R {| Fnum := m; Fexp := e |} <= x < F2R {| Fnum := m + 1; Fexp := e |})%R -> mag beta x = mag beta (F2R {| Fnum := m; Fexp := e |})
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R

mag beta x = mag beta (F2R {| Fnum := m; Fexp := e |})
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He:F2R {| Fnum := m; Fexp := e |} <> 0%R -> (bpow (ex - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}) < bpow ex)%R

mag beta x = Build_mag_prop beta (F2R {| Fnum := m; Fexp := e |}) ex He
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He:F2R {| Fnum := m; Fexp := e |} <> 0%R -> (bpow (ex - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}) < bpow ex)%R

mag beta x = ex
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He:F2R {| Fnum := m; Fexp := e |} <> 0%R -> (bpow (ex - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}) < bpow ex)%R

(bpow (ex - 1) <= Rabs x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He:F2R {| Fnum := m; Fexp := e |} <> 0%R -> (bpow (ex - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}) < bpow ex)%R

(0 < F2R {| Fnum := m; Fexp := e |})%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He:F2R {| Fnum := m; Fexp := e |} <> 0%R -> (bpow (ex - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}) < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R
(bpow (ex - 1) <= Rabs x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He:F2R {| Fnum := m; Fexp := e |} <> 0%R -> (bpow (ex - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}) < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R

(bpow (ex - 1) <= Rabs x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He:(bpow (ex - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}) < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R

(bpow (ex - 1) <= Rabs x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R

(bpow (ex - 1) <= Rabs x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He:(bpow (ex - 1) <= Rabs (F2R {| Fnum := m; Fexp := e |}) < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R
(0 <= F2R {| Fnum := m; Fexp := e |})%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R

(bpow (ex - 1) <= Rabs x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He1:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |})%R
He2:(F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R

(bpow (ex - 1) <= Rabs x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He1:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |})%R
He2:(F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R

(0 < x)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He1:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |})%R
He2:(F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R
Hx1:(0 < x)%R
(bpow (ex - 1) <= Rabs x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He1:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |})%R
He2:(F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R
Hx1:(0 < x)%R

(bpow (ex - 1) <= Rabs x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He1:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |})%R
He2:(F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R
Hx1:(0 < x)%R

(bpow (ex - 1) <= x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He1:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |})%R
He2:(F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R
Hx1:(0 < x)%R
(0 <= x)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He1:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |})%R
He2:(F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R
Hx1:(0 < x)%R

(bpow (ex - 1) <= x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He1:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |})%R
He2:(F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R
Hx1:(0 < x)%R

(bpow (ex - 1) <= x)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He1:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |})%R
He2:(F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R
Hx1:(0 < x)%R
(x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He1:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |})%R
He2:(F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R
Hx1:(0 < x)%R

(x < bpow ex)%R
beta:radix
x:R
m, e:Z
Hp:(0 < m)%Z
Hx:(F2R {| Fnum := m; Fexp := e |} <= x)%R
Hx2:(x < F2R {| Fnum := m + 1; Fexp := e |})%R
ex:Z
He1:(bpow (ex - 1) <= F2R {| Fnum := m; Fexp := e |})%R
He2:(F2R {| Fnum := m; Fexp := e |} < bpow ex)%R
Hp1:(0 < F2R {| Fnum := m; Fexp := e |})%R
Hx1:(0 < x)%R

(F2R {| Fnum := m + 1; Fexp := e |} <= bpow ex)%R
now apply F2R_p1_le_bpow. Qed.
beta:radix

forall m e : Z, m <> 0%Z -> mag beta (F2R {| Fnum := m; Fexp := e |}) = (mag beta (IZR m) + e)%Z
beta:radix

forall m e : Z, m <> 0%Z -> mag beta (F2R {| Fnum := m; Fexp := e |}) = (mag beta (IZR m) + e)%Z
beta:radix
m, e:Z
H:m <> 0%Z

mag beta (F2R {| Fnum := m; Fexp := e |}) = (mag beta (IZR m) + e)%Z
beta:radix
m, e:Z
H:m <> 0%Z

mag beta (IZR m * bpow e) = (mag beta (IZR m) + e)%Z
beta:radix
m, e:Z
H:m <> 0%Z

IZR m <> 0%R
now apply IZR_neq. Qed.
beta:radix

forall n : Z, n <> 0%Z -> Zdigits beta n = mag beta (IZR n)
beta:radix

forall n : Z, n <> 0%Z -> Zdigits beta n = mag beta (IZR n)
beta:radix
n:Z
Hn:n <> 0%Z

Zdigits beta n = mag beta (IZR n)
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:IZR n <> 0%R -> (bpow (e - 1) <= Rabs (IZR n) < bpow e)%R

Zdigits beta n = e
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= Rabs (IZR n) < bpow e)%R

Zdigits beta n = e
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= IZR (Z.abs n) < bpow e)%R

Zdigits beta n = e
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= IZR (Z.abs n) < bpow e)%R
Hd:(beta ^ (Zdigits beta n - 1) <= Z.abs n < beta ^ Zdigits beta n)%Z

Zdigits beta n = e
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= IZR (Z.abs n) < bpow e)%R
Hd:(beta ^ (Zdigits beta n - 1) <= Z.abs n < beta ^ Zdigits beta n)%Z
Hd':n <> 0%Z -> (0 < Zdigits beta n)%Z

Zdigits beta n = e
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= IZR (Z.abs n) < bpow e)%R
Hd:(beta ^ (Zdigits beta n - 1) <= Z.abs n < beta ^ Zdigits beta n)%Z
Hd':n <> 0%Z -> (0 < Zdigits beta n)%Z

(bpow (Zdigits beta n - 1) < bpow e)%R
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= IZR (Z.abs n) < bpow e)%R
Hd:(beta ^ (Zdigits beta n - 1) <= Z.abs n < beta ^ Zdigits beta n)%Z
Hd':n <> 0%Z -> (0 < Zdigits beta n)%Z
(bpow (e - 1) < bpow (Zdigits beta n))%R
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= IZR (Z.abs n) < bpow e)%R
Hd:(beta ^ (Zdigits beta n - 1) <= Z.abs n < beta ^ Zdigits beta n)%Z
Hd':n <> 0%Z -> (0 < Zdigits beta n)%Z

(bpow (Zdigits beta n - 1) <= IZR (Z.abs n))%R
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= IZR (Z.abs n) < bpow e)%R
Hd:(beta ^ (Zdigits beta n - 1) <= Z.abs n < beta ^ Zdigits beta n)%Z
Hd':n <> 0%Z -> (0 < Zdigits beta n)%Z
(bpow (e - 1) < bpow (Zdigits beta n))%R
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= IZR (Z.abs n) < bpow e)%R
Hd:(beta ^ (Zdigits beta n - 1) <= Z.abs n < beta ^ Zdigits beta n)%Z
Hd':n <> 0%Z -> (0 < Zdigits beta n)%Z

(IZR (beta ^ (Zdigits beta n - 1)) <= IZR (Z.abs n))%R
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= IZR (Z.abs n) < bpow e)%R
Hd:(beta ^ (Zdigits beta n - 1) <= Z.abs n < beta ^ Zdigits beta n)%Z
Hd':n <> 0%Z -> (0 < Zdigits beta n)%Z
(bpow (e - 1) < bpow (Zdigits beta n))%R
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= IZR (Z.abs n) < bpow e)%R
Hd:(beta ^ (Zdigits beta n - 1) <= Z.abs n < beta ^ Zdigits beta n)%Z
Hd':n <> 0%Z -> (0 < Zdigits beta n)%Z

(bpow (e - 1) < bpow (Zdigits beta n))%R
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= IZR (Z.abs n) < bpow e)%R
Hd:(beta ^ (Zdigits beta n - 1) <= Z.abs n < beta ^ Zdigits beta n)%Z
Hd':n <> 0%Z -> (0 < Zdigits beta n)%Z

(IZR (Z.abs n) < bpow (Zdigits beta n))%R
beta:radix
n:Z
Hn:n <> 0%Z
e:Z
He:(bpow (e - 1) <= IZR (Z.abs n) < bpow e)%R
Hd:(beta ^ (Zdigits beta n - 1) <= Z.abs n < beta ^ Zdigits beta n)%Z
Hd':n <> 0%Z -> (0 < Zdigits beta n)%Z

(IZR (Z.abs n) < IZR (beta ^ Zdigits beta n))%R
now apply IZR_lt. Qed.
beta:radix

forall m e : Z, m <> 0%Z -> mag beta (F2R {| Fnum := m; Fexp := e |}) = (Zdigits beta m + e)%Z
beta:radix

forall m e : Z, m <> 0%Z -> mag beta (F2R {| Fnum := m; Fexp := e |}) = (Zdigits beta m + e)%Z
beta:radix
m, e:Z
Hm:m <> 0%Z

mag beta (F2R {| Fnum := m; Fexp := e |}) = (Zdigits beta m + e)%Z
beta:radix
m, e:Z
Hm:m <> 0%Z

(mag beta (IZR m) + e)%Z = (Zdigits beta m + e)%Z
beta:radix
m, e:Z
Hm:m <> 0%Z

mag beta (IZR m) = Zdigits beta m
beta:radix
m, e:Z
Hm:m <> 0%Z

Zdigits beta m = mag beta (IZR m)
now apply Zdigits_mag. Qed.
beta:radix

forall (x : R) (m e : Z), (0 < m)%Z -> (F2R {| Fnum := m; Fexp := e |} <= x < F2R {| Fnum := m + 1; Fexp := e |})%R -> mag beta x = (Zdigits beta m + e)%Z
beta:radix

forall (x : R) (m e : Z), (0 < m)%Z -> (F2R {| Fnum := m; Fexp := e |} <= x < F2R {| Fnum := m + 1; Fexp := e |})%R -> mag beta x = (Zdigits beta m + e)%Z
beta:radix
x:R
m, e:Z
Hm:(0 < m)%Z
Bx:(F2R {| Fnum := m; Fexp := e |} <= x < F2R {| Fnum := m + 1; Fexp := e |})%R

mag beta x = (Zdigits beta m + e)%Z
beta:radix
x:R
m, e:Z
Hm:(0 < m)%Z
Bx:mag beta x = mag beta (F2R {| Fnum := m; Fexp := e |})

mag beta x = (Zdigits beta m + e)%Z
beta:radix
x:R
m, e:Z
Hm:(0 < m)%Z
Bx:mag beta x = mag beta (F2R {| Fnum := m; Fexp := e |})

mag beta (F2R {| Fnum := m; Fexp := e |}) = (Zdigits beta m + e)%Z
beta:radix
x:R
m, e:Z
Hm:(0 < m)%Z
Bx:mag beta x = mag beta (F2R {| Fnum := m; Fexp := e |})

m <> 0%Z
now apply Zgt_not_eq. Qed.
beta:radix

forall m1 e1 m2 e2 : Z, (0 < m1)%Z -> (F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R -> (e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix

forall m1 e1 m2 e2 : Z, (0 < m1)%Z -> (F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R -> (e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R

(e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R

(e2 < e1)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
(e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
(* . *)
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R

~ (e2 >= e1)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
(e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
H0:(e2 >= e1)%Z

False
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
(e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
H0:(e2 >= e1)%Z

(F2R {| Fnum := m1 + 1; Fexp := e1 |} <= F2R {| Fnum := m2; Fexp := e2 |})%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
(e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
H0:(e1 <= e2)%Z

(F2R {| Fnum := m1 + 1; Fexp := e1 |} <= F2R {| Fnum := m2; Fexp := e2 |})%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
(e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
H0:F2R {| Fnum := m2; Fexp := e2 |} = F2R {| Fnum := m2 * beta ^ (e2 - e1); Fexp := e1 |}

(F2R {| Fnum := m1 + 1; Fexp := e1 |} <= F2R {| Fnum := m2; Fexp := e2 |})%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
(e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
H0:F2R {| Fnum := m2; Fexp := e2 |} = F2R {| Fnum := m2 * beta ^ (e2 - e1); Fexp := e1 |}

(F2R {| Fnum := m1 + 1; Fexp := e1 |} <= F2R {| Fnum := m2 * beta ^ (e2 - e1); Fexp := e1 |})%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
(e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
H0:F2R {| Fnum := m2; Fexp := e2 |} = F2R {| Fnum := m2 * beta ^ (e2 - e1); Fexp := e1 |}

(m1 + 1 <= m2 * beta ^ (e2 - e1))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
(e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
H0:F2R {| Fnum := m2; Fexp := e2 |} = F2R {| Fnum := m2 * beta ^ (e2 - e1); Fexp := e1 |}

(m1 < m2 * beta ^ (e2 - e1))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
(e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
H0:F2R {| Fnum := m2; Fexp := e2 |} = F2R {| Fnum := m2 * beta ^ (e2 - e1); Fexp := e1 |}

(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2 * beta ^ (e2 - e1); Fexp := e1 |})%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
(e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z

(e2 < e1)%Z /\ (e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
(* . *)
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z

(e2 < e1)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
(e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z

(e1 + mag beta (IZR m1))%Z = (e2 + mag beta (IZR m2))%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z

(mag beta (IZR m1) + e1)%Z = (mag beta (IZR m2) + e2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z

(0 < m2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
(mag beta (IZR m1) + e1)%Z = (mag beta (IZR m2) + e2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z

(0 < F2R {| Fnum := m2; Fexp := e2 |})%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
(mag beta (IZR m1) + e1)%Z = (mag beta (IZR m2) + e2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z

(0 < F2R {| Fnum := m1; Fexp := e1 |})%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
(mag beta (IZR m1) + e1)%Z = (mag beta (IZR m2) + e2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z

(mag beta (IZR m1) + e1)%Z = (mag beta (IZR m2) + e2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z

mag beta (F2R {| Fnum := m1; Fexp := e1 |}) = mag beta (F2R {| Fnum := m2; Fexp := e2 |})
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R

Build_mag_prop beta (F2R {| Fnum := m1; Fexp := e1 |}) e1' H1 = mag beta (F2R {| Fnum := m2; Fexp := e2 |})
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R

e1' = mag beta (F2R {| Fnum := m2; Fexp := e2 |})
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R

mag beta (F2R {| Fnum := m2; Fexp := e2 |}) = e1'
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R

(bpow (e1' - 1) <= Rabs (F2R {| Fnum := m2; Fexp := e2 |}) < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R

(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(bpow (e1' - 1) <= Rabs (F2R {| Fnum := m2; Fexp := e2 |}) < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R

(bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R
(0 <= m1)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(bpow (e1' - 1) <= Rabs (F2R {| Fnum := m2; Fexp := e2 |}) < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R

F2R {| Fnum := m1; Fexp := e1 |} <> 0%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R
(0 <= m1)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(bpow (e1' - 1) <= Rabs (F2R {| Fnum := m2; Fexp := e2 |}) < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R

(F2R {| Fnum := m1; Fexp := e1 |} > 0)%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R
(0 <= m1)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(bpow (e1' - 1) <= Rabs (F2R {| Fnum := m2; Fexp := e2 |}) < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R

(0 < F2R {| Fnum := m1; Fexp := e1 |})%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R
(0 <= m1)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(bpow (e1' - 1) <= Rabs (F2R {| Fnum := m2; Fexp := e2 |}) < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R

(0 <= m1)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(bpow (e1' - 1) <= Rabs (F2R {| Fnum := m2; Fexp := e2 |}) < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H1:F2R {| Fnum := m1; Fexp := e1 |} <> 0%R -> (bpow (e1' - 1) <= Rabs (F2R {| Fnum := m1; Fexp := e1 |}) < bpow e1')%R
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R

(bpow (e1' - 1) <= Rabs (F2R {| Fnum := m2; Fexp := e2 |}) < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R

(bpow (e1' - 1) <= Rabs (F2R {| Fnum := m2; Fexp := e2 |}) < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R

(bpow (e1' - 1) <= F2R {| Fnum := m2; Fexp := e2 |} < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(0 <= m2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R

(bpow (e1' - 1) <= F2R {| Fnum := m2; Fexp := e2 |})%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(F2R {| Fnum := m2; Fexp := e2 |} < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(0 <= m2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R

(bpow (e1' - 1) < F2R {| Fnum := m2; Fexp := e2 |})%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(F2R {| Fnum := m2; Fexp := e2 |} < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(0 <= m2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R

(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |})%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(F2R {| Fnum := m2; Fexp := e2 |} < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(0 <= m2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R

(F2R {| Fnum := m2; Fexp := e2 |} < bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(0 <= m2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R

(F2R {| Fnum := m1 + 1; Fexp := e1 |} <= bpow e1')%R
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R
(0 <= m2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
e1':Z
H2:(bpow (e1' - 1) <= F2R {| Fnum := m1; Fexp := e1 |} < bpow e1')%R

(0 <= m2)%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z

m2 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z

0%Z <> m2
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z
m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z

m1 <> 0%Z
beta:radix
m1, e1, m2, e2:Z
Hp1:(0 < m1)%Z
H12:(F2R {| Fnum := m1; Fexp := e1 |} < F2R {| Fnum := m2; Fexp := e2 |})%R
H21:(F2R {| Fnum := m2; Fexp := e2 |} < F2R {| Fnum := m1 + 1; Fexp := e1 |})%R
He:(e2 < e1)%Z
Hp2:(0 < m2)%Z

0%Z <> m1
now apply Zlt_not_eq. Qed. End Float_prop.