Built with Alectryon. 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.
Require ImportRequire Import
  HoTT.Classes.interfaces.abstract_algebra
  HoTT.Classes.interfaces.orders
  HoTT.Classes.theory.naturals
  HoTT.Classes.theory.rings.
Require Export
  HoTT.Classes.orders.semirings.

Generalizable Variables N R f.

Section Univ.
Context `{Funext} `{Univalence}.

(**
We axiomatize the order on the naturals and the integers as a non trivial
pseudo semiring order that satisfies the biinduction principle. We prove
some results that hold for the order on the naturals and the integers.
In particular, we show that given another non trivial pseudo semiring order
(that not necessarily has to satisfy the biinduction principle, for example
the rationals or the reals), any morphism to it is an order embedding.
*)
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)
n: N

0 ≤ f n
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)
n: N

0 ≤ f n
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)

forall n : N, 0 ≤ f n
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)

0 ≤ f 0
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)
forall n : N, 0 ≤ f n -> 0 ≤ f (1 + n)
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)

0 ≤ f 0
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)

00
reflexivity.
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)

forall n : N, 0 ≤ f n -> 0 ≤ f (1 + n)
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)
n: N
E: 0 ≤ f n

0 ≤ f (1 + n)
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)
n: N
E: 0 ≤ f n

01 + f n
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)
n: N
E: 0 ≤ f n

PropHolds (01)
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)
n: N
E: 0 ≤ f n
PropHolds (0 ≤ f n)
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)
n: N
E: 0 ≤ f n

PropHolds (01)
solve_propholds.
H: Funext
H0: Univalence
N: Type
H1: Apart N
H2: Plus N
H3: Mult N
H4: Zero N
H5: One N
Ale: Le N
Alt: Lt N
H6: FullPseudoSemiRingOrder Ale Alt
NaturalsToSemiRing0: NaturalsToSemiRing N
Naturals0: Naturals N
R: Type
H7: Apart R
H8: Plus R
H9: Mult R
H10: Zero R
H11: One R
Ale0: Le R
Alt0: Lt R
H12: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
f: N -> R
IsSemiRingPreserving0: IsSemiRingPreserving (f : N -> R)
n: N
E: 0 ≤ f n

PropHolds (0 ≤ f n)
trivial. Qed. Section nat_int_order. Context `{Naturals N} `{Apart N} `{Le N} `{Lt N} `{!FullPseudoSemiRingOrder le lt} `{FullPseudoSemiRingOrder R} `{!IsSemiCRing R} `{!Biinduction R} `{PropHolds (10)}. (* Add Ring R : (stdlib_semiring_theory R). *)
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)

forall x : R, {z : N & ((x = naturals_to_semiring N R z) + (plus x (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)

forall x : R, {z : N & ((x = naturals_to_semiring N R z) + (plus x (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)

{z : N & ((0 = naturals_to_semiring N R z) + (plus 0 (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
forall n : R, {z : N & ((n = naturals_to_semiring N R z) + (plus n (naturals_to_semiring N R z) = 0))%type} <-> {z : N & ((plus 1 n = naturals_to_semiring N R z) + (plus (plus 1 n) (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)

{z : N & ((0 = naturals_to_semiring N R z) + (plus 0 (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)

(0 = naturals_to_semiring N R 0) + (0 + naturals_to_semiring N R 0 = 0)
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)

0 = naturals_to_semiring N R 0
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)

naturals_to_semiring N R 0 = 0
exact preserves_0.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)

forall n : R, {z : N & ((n = naturals_to_semiring N R z) + (plus n (naturals_to_semiring N R z) = 0))%type} <-> {z : N & ((plus 1 n = naturals_to_semiring N R z) + (plus (plus 1 n) (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R

{z : N & ((n = naturals_to_semiring N R z) + (plus n (naturals_to_semiring N R z) = 0))%type} <-> {z : N & ((plus 1 n = naturals_to_semiring N R z) + (plus (plus 1 n) (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
E: {z : N & ((n = naturals_to_semiring N R z) + (plus n (naturals_to_semiring N R z) = 0))%type}

{z : N & ((plus 1 n = naturals_to_semiring N R z) + (plus (plus 1 n) (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
E: {z : N & ((plus 1 n = naturals_to_semiring N R z) + (plus (plus 1 n) (naturals_to_semiring N R z) = 0))%type}
{z : N & ((n = naturals_to_semiring N R z) + (plus n (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
E: {z : N & ((n = naturals_to_semiring N R z) + (plus n (naturals_to_semiring N R z) = 0))%type}

{z : N & ((plus 1 n = naturals_to_semiring N R z) + (plus (plus 1 n) (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n = naturals_to_semiring N R z

{z0 : N & ((plus 1 n = naturals_to_semiring N R z0) + (plus (plus 1 n) (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n + naturals_to_semiring N R z = 0
{z0 : N & ((plus 1 n = naturals_to_semiring N R z0) + (plus (plus 1 n) (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n = naturals_to_semiring N R z

{z0 : N & ((plus 1 n = naturals_to_semiring N R z0) + (plus (plus 1 n) (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n = naturals_to_semiring N R z

(1 + n = naturals_to_semiring N R (1 + z)) + (1 + n + naturals_to_semiring N R (1 + z) = 0)
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n = naturals_to_semiring N R z

1 + n = naturals_to_semiring N R (1 + z)
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n = naturals_to_semiring N R z

1 + naturals_to_semiring N R z = naturals_to_semiring N R (1 + z)
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n = naturals_to_semiring N R z

1 + naturals_to_semiring N R z = 1 + naturals_to_semiring N R z
reflexivity.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n + naturals_to_semiring N R z = 0

{z0 : N & ((plus 1 n = naturals_to_semiring N R z0) + (plus (plus 1 n) (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n + naturals_to_semiring N R z = 0
Ez: z = 0

{z0 : N & ((plus 1 n = naturals_to_semiring N R z0) + (plus (plus 1 n) (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n + naturals_to_semiring N R z = 0
z': N
Ez: z = 1 + z'
{z0 : N & ((plus 1 n = naturals_to_semiring N R z0) + (plus (plus 1 n) (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n + naturals_to_semiring N R z = 0
Ez: z = 0

{z0 : N & ((plus 1 n = naturals_to_semiring N R z0) + (plus (plus 1 n) (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n + naturals_to_semiring N R 0 = 0
Ez: z = 0

{z0 : N & ((plus 1 n = naturals_to_semiring N R z0) + (plus (plus 1 n) (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n = 0
Ez: z = 0

{z0 : N & ((plus 1 n = naturals_to_semiring N R z0) + (plus (plus 1 n) (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n = 0
Ez: z = 0

{z0 : N & ((plus 1 0 = naturals_to_semiring N R z0) + (plus (plus 1 0) (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n = 0
Ez: z = 0

(1 + 0 = naturals_to_semiring N R 1) + (1 + 0 + naturals_to_semiring N R 1 = 0)
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n = 0
Ez: z = 0

1 + 0 = naturals_to_semiring N R 1
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n = 0
Ez: z = 0

1 = 1
reflexivity.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: n + naturals_to_semiring N R z = 0
z': N
Ez: z = 1 + z'

{z0 : N & ((plus 1 n = naturals_to_semiring N R z0) + (plus (plus 1 n) (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z': N
E: n + naturals_to_semiring N R (1 + z') = 0

{z : N & ((plus 1 n = naturals_to_semiring N R z) + (plus (plus 1 n) (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z': N
E: n + naturals_to_semiring N R (1 + z') = 0

1 + n + naturals_to_semiring N R z' = 0
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z': N
E: n + naturals_to_semiring N R (1 + z') = 0

1 + n + naturals_to_semiring N R z' = n + naturals_to_semiring N R (1 + z')
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z': N

1 + n + naturals_to_semiring N R z' = n + naturals_to_semiring N R (1 + z')
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z': N

1 + n + naturals_to_semiring N R z' = n + (1 + naturals_to_semiring N R z')
rewrite plus_assoc,(plus_comm n);reflexivity.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
E: {z : N & ((plus 1 n = naturals_to_semiring N R z) + (plus (plus 1 n) (naturals_to_semiring N R z) = 0))%type}

{z : N & ((n = naturals_to_semiring N R z) + (plus n (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: 1 + n = naturals_to_semiring N R z

{z0 : N & ((n = naturals_to_semiring N R z0) + (plus n (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: 1 + n + naturals_to_semiring N R z = 0
{z0 : N & ((n = naturals_to_semiring N R z0) + (plus n (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: 1 + n = naturals_to_semiring N R z

{z0 : N & ((n = naturals_to_semiring N R z0) + (plus n (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
E: 1 + n = naturals_to_semiring N R 0

{z : N & ((n = naturals_to_semiring N R z) + (plus n (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z': N
E: 1 + n = naturals_to_semiring N R (1 + z')
{z : N & ((n = naturals_to_semiring N R z) + (plus n (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
E: 1 + n = naturals_to_semiring N R 0

{z : N & ((n = naturals_to_semiring N R z) + (plus n (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
E: 1 + n = naturals_to_semiring N R 0

n + naturals_to_semiring N R 1 = 0
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
E: 1 + n = naturals_to_semiring N R 0

naturals_to_semiring N R 0 = 0
exact preserves_0.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z': N
E: 1 + n = naturals_to_semiring N R (1 + z')

{z : N & ((n = naturals_to_semiring N R z) + (plus n (naturals_to_semiring N R z) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z': N
E: 1 + n = naturals_to_semiring N R (1 + z')

n = naturals_to_semiring N R z'
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z': N
E: 1 + n = 1 + naturals_to_semiring N R z'

n = naturals_to_semiring N R z'
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z': N
E: 1 + n = 1 + naturals_to_semiring N R z'

1 + n = 1 + naturals_to_semiring N R z'
trivial.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: 1 + n + naturals_to_semiring N R z = 0

{z0 : N & ((n = naturals_to_semiring N R z0) + (plus n (naturals_to_semiring N R z0) = 0))%type}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: 1 + n + naturals_to_semiring N R z = 0

(n = naturals_to_semiring N R (1 + z)) + (n + naturals_to_semiring N R (1 + z) = 0)
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: 1 + n + naturals_to_semiring N R z = 0

n + naturals_to_semiring N R (1 + z) = 0
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
n: R
z: N
E: 1 + n + naturals_to_semiring N R z = 0

n + (1 + naturals_to_semiring N R z) = 1 + n + naturals_to_semiring N R z
rewrite plus_assoc,(plus_comm n);reflexivity. Qed.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R

0 ≤ x -> {z : N & x = naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R

0 ≤ x -> {z : N & x = naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
z: N
Ez1: x = naturals_to_semiring N R z

0 ≤ x -> {z0 : N & x = naturals_to_semiring N R z0}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
z: N
Ez2: x + naturals_to_semiring N R z = 0
0 ≤ x -> {z0 : N & x = naturals_to_semiring N R z0}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
z: N
Ez1: x = naturals_to_semiring N R z

0 ≤ x -> {z0 : N & x = naturals_to_semiring N R z0}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
z: N
Ez1: x = naturals_to_semiring N R z
X: 0 ≤ x

x = naturals_to_semiring N R z
trivial.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
z: N
Ez2: x + naturals_to_semiring N R z = 0

0 ≤ x -> {z0 : N & x = naturals_to_semiring N R z0}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
z: N
Ez2: x + naturals_to_semiring N R z = 0
E: 0 ≤ x

{z0 : N & x = naturals_to_semiring N R z0}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
z: N
Ez2: x + naturals_to_semiring N R z = 0
E: 0 ≤ x

x = naturals_to_semiring N R 0
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
z: N
Ez2: x + naturals_to_semiring N R z = 0
E: 0 ≤ x

x = 0
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
z: N
Ez2: x + naturals_to_semiring N R z = 0
E: 0 ≤ x

x ≤ 0
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
z: N
Ez2: x + naturals_to_semiring N R z = 0
E: 0 ≤ x

x ≤ x + naturals_to_semiring N R z
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
z: N
Ez2: x + naturals_to_semiring N R z = 0
E: 0 ≤ x

0 ≤ naturals_to_semiring N R z
apply to_semiring_nonneg. Qed.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x ≤ y <-> {z : N & y = x + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x ≤ y <-> {z : N & y = x + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x ≤ y -> {z : N & y = x + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
{z : N & y = x + naturals_to_semiring N R z} -> x ≤ y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x ≤ y -> {z : N & y = x + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x ≤ y

{z : N & y = x + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x ≤ y
z: R
Ez1: 0 ≤ z
Ez2: y = x + z

{z0 : N & y = x + naturals_to_semiring N R z0}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x ≤ y
z: R
Ez1: 0 ≤ z
Ez2: y = x + z
u: N
Eu: z = naturals_to_semiring N R u

{z0 : N & y = x + naturals_to_semiring N R z0}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x ≤ y
z: R
Ez1: 0 ≤ z
Ez2: y = x + z
u: N
Eu: z = naturals_to_semiring N R u

y = x + naturals_to_semiring N R u
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x ≤ y
z: R
Ez1: 0 ≤ z
Ez2: y = x + z
u: N
Eu: z = naturals_to_semiring N R u

y = x + z
trivial.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

{z : N & y = x + naturals_to_semiring N R z} -> x ≤ y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
z: N
Ez: y = x + naturals_to_semiring N R z

x ≤ y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
z: N
Ez: y = x + naturals_to_semiring N R z

x ≤ x + naturals_to_semiring N R z
apply nonneg_plus_le_compat_r, to_semiring_nonneg. Qed.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x < y <-> {z : N & y = x + 1 + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x < y <-> {z : N & y = x + 1 + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x < y -> {z : N & y = x + 1 + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
{z : N & y = x + 1 + naturals_to_semiring N R z} -> x < y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x < y -> {z : N & y = x + 1 + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x < y

{z : N & y = x + 1 + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x < y
z0: N
Ez: y = x + naturals_to_semiring N R z0

{z : N & y = x + 1 + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x < y
Ez: y = x + naturals_to_semiring N R 0

{z : N & y = x + 1 + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x < y
z: N
Ez: y = x + naturals_to_semiring N R (1 + z)
{z0 : N & y = x + 1 + naturals_to_semiring N R z0}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x < y
Ez: y = x + naturals_to_semiring N R 0

{z : N & y = x + 1 + naturals_to_semiring N R z}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x < y
Ez: y = x

{z : N & y = x + 1 + naturals_to_semiring N R z}
destruct (lt_ne_flip x y);trivial.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x < y
z: N
Ez: y = x + naturals_to_semiring N R (1 + z)

{z0 : N & y = x + 1 + naturals_to_semiring N R z0}
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x < y
z: N
Ez: y = x + naturals_to_semiring N R (1 + z)

y = x + 1 + naturals_to_semiring N R z
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x < y
z: N
Ez: y = x + 1 + naturals_to_semiring N R z

y = x + 1 + naturals_to_semiring N R z
trivial.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

{z : N & y = x + 1 + naturals_to_semiring N R z} -> x < y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
z: N
Ez: y = x + 1 + naturals_to_semiring N R z

x < y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
z: N
Ez: y = x + 1 + naturals_to_semiring N R z

x < x + 1 + naturals_to_semiring N R z
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
z: N
Ez: y = x + 1 + naturals_to_semiring N R z

0 ≤ naturals_to_semiring N R z
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
z: N
Ez: y = x + 1 + naturals_to_semiring N R z
x < x + 1
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
z: N
Ez: y = x + 1 + naturals_to_semiring N R z

0 ≤ naturals_to_semiring N R z
apply to_semiring_nonneg.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
z: N
Ez: y = x + 1 + naturals_to_semiring N R z

x < x + 1
apply pos_plus_lt_compat_r; solve_propholds. Qed.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x < y <-> x + 1 ≤ y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x < y <-> x + 1 ≤ y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x < y <-> ?Goal
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
?Goal <-> x + 1 ≤ y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x < y <-> ?Goal
apply nat_int_lt_plus.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

{z : N & y = x + 1 + naturals_to_semiring N R z} <-> x + 1 ≤ y
apply symmetry,nat_int_le_plus. Qed.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x < y <-> 1 + x ≤ y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x < y <-> 1 + x ≤ y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x < y <-> x + 1 ≤ y
apply lt_iff_plus_1_le. Qed.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R

0 < x <-> 1 ≤ x
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R

0 < x <-> 1 ≤ x
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
E: 0 < x

1 ≤ x
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
E: 1 ≤ x
0 < x
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
E: 0 < x

1 ≤ x
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
E: 0 < x

0 + 1 ≤ x
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
E: 0 < x

0 < x
trivial.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x: R
E: 1 ≤ x

0 < x
apply lt_le_trans with 1; [solve_propholds | trivial]. Qed.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x ≤ y <-> x < y + 1
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x ≤ y <-> x < y + 1
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x ≤ y

x < y + 1
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x < y + 1
x ≤ y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x ≤ y

x < y + 1
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x ≤ y

x + 1 ≤ y + 1
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x ≤ y

x ≤ y
trivial.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x < y + 1

x ≤ y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R
E: x < y + 1

x < y + 1
trivial. Qed.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x ≤ y <-> x < 1 + y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x ≤ y <-> x < 1 + y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
x, y: R

x ≤ y <-> x < y + 1
apply le_iff_lt_plus_1. Qed. Section another_semiring. Context `{FullPseudoSemiRingOrder R2} `{!IsSemiCRing R2} `{PropHolds ((1 : R2) ≶ 0)} `{!IsSemiRingPreserving (f : R -> R2)}.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)

OrderPreserving f
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)

OrderPreserving f
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)

OrderPreserving f
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
E: x ≤ y

f x ≤ f y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
E: {z : N & y = x + naturals_to_semiring N R z}

f x ≤ f y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
z: N
E: y = x + naturals_to_semiring N R z

f x ≤ f y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
z: N
E: y = x + naturals_to_semiring N R z

f x ≤ f x + naturals_to_semiring N R2 z
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
z: N
E: y = x + naturals_to_semiring N R z

0 ≤ naturals_to_semiring N R2 z
apply to_semiring_nonneg. Qed.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)

StrictlyOrderPreserving f
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)

StrictlyOrderPreserving f
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)

StrictlyOrderPreserving f
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
E: x < y

f x < f y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
E: {z : N & y = x + 1 + naturals_to_semiring N R z}

f x < f y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
z: N
E: y = x + 1 + naturals_to_semiring N R z

f x < f y
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
z: N
E: y = x + 1 + naturals_to_semiring N R z

f x < f x + 1 + naturals_to_semiring N R2 z
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
z: N
E: y = x + 1 + naturals_to_semiring N R z

0 ≤ naturals_to_semiring N R2 z
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
z: N
E: y = x + 1 + naturals_to_semiring N R z
f x < f x + 1
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
z: N
E: y = x + 1 + naturals_to_semiring N R z

0 ≤ naturals_to_semiring N R2 z
apply to_semiring_nonneg.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)
x, y: R
z: N
E: y = x + 1 + naturals_to_semiring N R z

f x < f x + 1
apply pos_plus_lt_compat_r; solve_propholds. Qed.
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)

OrderEmbedding f
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)

OrderEmbedding f
H: Funext
H0: Univalence
N: Type
Aap: Apart N
Aplus: Plus N
Amult: Mult N
Azero: Zero N
Aone: One N
Ale: Le N
Alt: Lt N
U: NaturalsToSemiRing N
H1: Naturals N
H2: Apart N
H3: Le N
H4: Lt N
FullPseudoSemiRingOrder0: FullPseudoSemiRingOrder le lt
R: Type
H5: Apart R
H6: Plus R
H7: Mult R
H8: Zero R
H9: One R
Ale0: Le R
Alt0: Lt R
H10: FullPseudoSemiRingOrder Ale0 Alt0
IsSemiCRing0: IsSemiCRing R
Biinduction0: Biinduction R
H11: PropHolds (10)
R2: Type
H12: Apart R2
H13: Plus R2
H14: Mult R2
H15: Zero R2
H16: One R2
Ale1: Le R2
Alt1: Lt R2
H17: FullPseudoSemiRingOrder Ale1 Alt1
IsSemiCRing1: IsSemiCRing R2
H18: PropHolds ((1 : R2) ≶ 0)
f: R -> R2
IsSemiRingPreserving0: IsSemiRingPreserving (f : R -> R2)

OrderReflecting f
exact full_pseudo_order_reflecting. Qed. End another_semiring. End nat_int_order. End Univ.