Built with Alectryon, running Coq+SerAPI v8.18.0+0.18.3. Bubbles () indicate interactive fragments: hover for details, tap to reveal contents. Use Ctrl+↑ Ctrl+↓ to navigate, Ctrl+🖱️ to focus. On Mac, use instead of Ctrl.
[Loading ML file number_string_notation_plugin.cmxs (using legacy method) ... done]
Require Export HoTT.Classes.orders.rings. Generalizable Variables F f R Fle Flt. Section contents. Context `{OrderedField F}.
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F
Px: 0 < x

0 < // (x; positive_apart_zero x Px)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F
Px: 0 < x

0 < // (x; positive_apart_zero x Px)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F
Px: 0 < x

x * 0 < x // (x; positive_apart_zero x Px)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F
Px: 0 < x

0 < x // (x; positive_apart_zero x Px)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F
Px: 0 < x

0 < 1
apply lt_0_1. Qed.
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F
Px: x < 0

// (x; negative_apart_zero x Px) < 0
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F
Px: x < 0

// (x; negative_apart_zero x Px) < 0
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F
Px: x < 0
negxpos:= fst (flip_neg_negate x) Px: 0 < - x

// (x; negative_apart_zero x Px) < 0
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F
Px: x < 0
negxpos:= fst (flip_neg_negate x) Px: 0 < - x

- x // (x; negative_apart_zero x Px) < - x * 0
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F
Px: x < 0
negxpos:= fst (flip_neg_negate x) Px: 0 < - x

- x // (x; negative_apart_zero x Px) < 0
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F
Px: x < 0
negxpos:= fst (flip_neg_negate x) Px: 0 < - x

- (x // (x; negative_apart_zero x Px)) < 0
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F
Px: x < 0
negxpos:= fst (flip_neg_negate x) Px: 0 < - x

-1 < 0
apply flip_pos_negate, lt_0_1. Qed.
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: y < x

let apy0 := positive_apart_zero y Py in let apx0 := positive_apart_zero x (transitivity Py ltyx) in // (x; apx0) < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: y < x

let apy0 := positive_apart_zero y Py in let apx0 := positive_apart_zero x (transitivity Py ltyx) in // (x; apx0) < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: y < x
X: 0 < x

let apy0 := positive_apart_zero y Py in let apx0 := positive_apart_zero x (transitivity Py ltyx) in // (x; apx0) < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: y < x
X: 0 < x

x // (x; positive_apart_zero x (transitivity Py ltyx)) < x // (y; positive_apart_zero y Py)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: y < x
X: 0 < x

1 < x // (y; positive_apart_zero y Py)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: y < x
X: 0 < x

1 < // (y; positive_apart_zero y Py) * x
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: y < x
X: 0 < x

y * 1 < y * (// (y; positive_apart_zero y Py) * x)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: y < x
X: 0 < x

y < y // (y; positive_apart_zero y Py) * x
rewrite (recip_inverse' y), mult_1_l; assumption. Qed.
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x

let apx0 := positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx) in // (x; apx0) < y
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x

let apx0 := positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx) in // (x; apx0) < y
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0

let apx0 := positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx) in // (x; apx0) < y
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)

let apx0 := positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx) in // (x; apx0) < y
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)
eq':= ap pr1 eq: (recip_on_apart (recip_on_apart (y; apy0))).1 = (y; apy0).1

let apx0 := positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx) in // (x; apx0) < y
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)
eq':= ap pr1 eq: // recip_on_apart (y; apy0) = y

let apx0 := positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx) in // (x; apx0) < y
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)
eq':= ap pr1 eq: // recip_on_apart (y; apy0) = y

// (x; positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx)) < // recip_on_apart (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)
eq':= ap pr1 eq: // recip_on_apart (y; apy0) = y

// (x; positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx)) < // (// (y; apy0); recip_apart (y; apy0).1 (y; apy0).2)
(* need : // (y; apy0) < x *) (* have : //(y;pseudo_order_lt_apart_flip 0 y Py) < x *)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)
eq':= ap pr1 eq: // recip_on_apart (y; apy0) = y
ltyx2:= ltyx: // (y; positive_apart_zero y Py) < x

// (x; positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx2)) < // (// (y; apy0); recip_apart (y; apy0).1 (y; apy0).2)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)
eq':= ap pr1 eq: // recip_on_apart (y; apy0) = y
ltyx2:= ltyx: // (y; positive_apart_zero y Py) < x

// (x; positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx)) < // (// (y; apy0); recip_apart (y; apy0).1 (y; apy0).2)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)
eq':= ap pr1 eq: // recip_on_apart (y; apy0) = y
ltyx2: // (y; apy0) < x

// (x; positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx)) < // (// (y; apy0); recip_apart (y; apy0).1 (y; apy0).2)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)
eq':= ap pr1 eq: // recip_on_apart (y; apy0) = y
ltyx2: // (y; apy0) < x
ltyx_recips:= flip_lt_recip x (// (y; apy0)) (pos_recip_compat y Py) ltyx2: let apy1 := positive_apart_zero (// (y; apy0)) (pos_recip_compat y Py) in let apx0 := positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx2) in // (x; apx0) < // (// (y; apy0); apy1)

// (x; positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx)) < // (// (y; apy0); recip_apart (y; apy0).1 (y; apy0).2)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)
eq':= ap pr1 eq: // recip_on_apart (y; apy0) = y
ltyx2: // (y; apy0) < x
ltyx_recips:= flip_lt_recip x (// (y; apy0)) (pos_recip_compat y Py) ltyx2: // (x; positive_apart_zero x (strictorder_trans 0 (// (y; apy0)) x (pos_recip_compat y Py) ltyx2)) < // (// (y; apy0); positive_apart_zero (// (y; apy0)) (pos_recip_compat y Py))

// (x; positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx)) < // (// (y; apy0); recip_apart (y; apy0).1 (y; apy0).2)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)
eq':= ap pr1 eq: // recip_on_apart (y; apy0) = y
ltyx2: // (y; apy0) < x
ltyx_recips: // (x; positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx)) < // (// (y; apy0); positive_apart_zero (// (y; apy0)) (pos_recip_compat y Py))

// (x; positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx)) < // (// (y; apy0); recip_apart (y; apy0).1 (y; apy0).2)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)
eq':= ap pr1 eq: // recip_on_apart (y; apy0) = y
ltyx2: // (y; apy0) < x
ltyx_recips: // (x; positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx)) < // (// (y; apy0); positive_apart_zero (// (y; apy0)) (pos_recip_compat y Py))

// (x; positive_apart_zero x (strictorder_trans 0 (// (y; apy0)) x (pos_recip_compat y Py) ltyx)) < // (// (y; apy0); recip_apart y apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Py: 0 < y
ltyx: // (y; positive_apart_zero y Py) < x
apy0:= positive_apart_zero y Py: y ≶ 0
eq:= recip_involutive (y; apy0): recip_on_apart (recip_on_apart (y; apy0)) = (y; apy0)
eq':= ap pr1 eq: // recip_on_apart (y; apy0) = y
ltyx2: // (y; apy0) < x
ltyx_recips: // (x; positive_apart_zero x (transitivity (pos_recip_compat y Py) ltyx)) < // (// (y; apy0); recip_apart y apy0)

// (x; positive_apart_zero x (strictorder_trans 0 (// (y; apy0)) x (pos_recip_compat y Py) ltyx)) < // (// (y; apy0); recip_apart y apy0)
assumption. Qed.
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
ltyx: y < // (x; positive_apart_zero x Px)

x < // (y; positive_apart_zero y Py)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
ltyx: y < // (x; positive_apart_zero x Px)

x < // (y; positive_apart_zero y Py)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
ltyx: y < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0

x < // (y; positive_apart_zero y Py)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
ltyx: y < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0
apy0:= positive_apart_zero y Py: y ≶ 0

x < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
ltyx: y < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0
apy0:= positive_apart_zero y Py: y ≶ 0

((x; apx0) : ApartZero F).1 < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
ltyx: y < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0
apy0:= positive_apart_zero y Py: y ≶ 0

(recip_on_apart (recip_on_apart (x; apx0))).1 < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
ltyx: y < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0
apy0:= positive_apart_zero y Py: y ≶ 0

// (// (x; apx0); recip_apart x apx0) < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
ltyx: y < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0
apy0:= positive_apart_zero y Py: y ≶ 0
ltry: 0 < // (y; positive_apart_zero y Py)

// (// (x; apx0); recip_apart x apx0) < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
ltyx: y < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0
apy0:= positive_apart_zero y Py: y ≶ 0
ltry: 0 < // (y; apy0)

// (// (x; apx0); recip_apart x apx0) < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
apy0:= positive_apart_zero y Py: y ≶ 0
ltyx: ((y; apy0) : ApartZero F).1 < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0
ltry: 0 < // (y; apy0)

// (// (x; apx0); recip_apart x apx0) < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
apy0:= positive_apart_zero y Py: y ≶ 0
ltyx: (recip_on_apart (recip_on_apart (y; apy0))).1 < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0
ltry: 0 < // (y; apy0)

// (// (x; apx0); recip_apart x apx0) < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
apy0:= positive_apart_zero y Py: y ≶ 0
ltyx: // (// (y; apy0); recip_apart y apy0) < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0
ltry: 0 < // (y; apy0)

// (// (x; apx0); recip_apart x apx0) < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
apy0:= positive_apart_zero y Py: y ≶ 0
ltry: 0 < // (y; apy0)
ltyx: // (// (y; apy0); positive_apart_zero (// (y; apy0)) ltry) < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0

// (// (x; apx0); recip_apart x apx0) < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
apy0:= positive_apart_zero y Py: y ≶ 0
ltry: 0 < // (y; apy0)
ltyx: // (// (y; apy0); positive_apart_zero (// (y; apy0)) ltry) < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0
ltxy: let apx1 := positive_apart_zero (// (x; apx0)) (transitivity (pos_recip_compat (// (y; apy0)) ltry) ltyx) in // (// (x; apx0); apx1) < // (y; apy0)

// (// (x; apx0); recip_apart x apx0) < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
apy0:= positive_apart_zero y Py: y ≶ 0
ltry: 0 < // (y; apy0)
ltyx: // (// (y; apy0); positive_apart_zero (// (y; apy0)) ltry) < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0
ltxy: // (// (x; apx0); positive_apart_zero (// (x; apx0)) (strictorder_trans 0 (// (// (y; apy0); positive_apart_zero (// (y; apy0)) ltry)) (// (x; apx0)) (pos_recip_compat (// (y; apy0)) ltry) ltyx)) < // (y; apy0)

// (// (x; apx0); recip_apart x apx0) < // (y; apy0)
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x, y: F
Px: 0 < x
Py: 0 < y
apy0:= positive_apart_zero y Py: y ≶ 0
ltry: 0 < // (y; apy0)
ltyx: // (// (y; apy0); positive_apart_zero (// (y; apy0)) ltry) < // (x; positive_apart_zero x Px)
apx0:= positive_apart_zero x Px: x ≶ 0
ltxy: // (// (x; apx0); recip_apart x apx0) < // (y; apy0)

// (// (x; apx0); recip_apart x apx0) < // (y; apy0)
assumption. Qed.
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F

x * recip' 2 (positive_apart_zero 2 lt_0_2) + x * recip' 2 (positive_apart_zero 2 lt_0_2) = x
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F

x * recip' 2 (positive_apart_zero 2 lt_0_2) + x * recip' 2 (positive_apart_zero 2 lt_0_2) = x
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F

x * (recip' 2 (positive_apart_zero 2 lt_0_2) + recip' 2 (positive_apart_zero 2 lt_0_2)) = x
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F

x * (1 * recip' 2 (positive_apart_zero 2 lt_0_2) + 1 * recip' 2 (positive_apart_zero 2 lt_0_2)) = x
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F

x * (2 * recip' 2 (positive_apart_zero 2 lt_0_2)) = x
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F

x * 1 = x
F: Type
Alt: Lt F
Ale: Le F
Aap: Apart F
Azero: Zero F
Aone: One F
Aplus: Plus F
Anegate: Negate F
Amult: Mult F
Arecip: Recip F
Ajoin: Join F
Ameet: Meet F
H: OrderedField F
x: F

x = x
reflexivity. Qed. End contents.