Let y be given.
rewrite the current goal using HdefI (from left to right).
We prove the intermediate
claim HyR:
y ∈ R.
An exact proof term for the current goal is Hdlt.
We prove the intermediate
claim HcS:
SNo c.
An
exact proof term for the current goal is
(real_SNo c HcR).
We prove the intermediate
claim HyS:
SNo y.
An
exact proof term for the current goal is
(real_SNo y HyR).
We prove the intermediate
claim HrS:
SNo r.
An
exact proof term for the current goal is
(real_SNo r HrR).
We prove the intermediate
claim HrposS:
0 < r.
An
exact proof term for the current goal is
(RltE_lt 0 r HrposR).
An
exact proof term for the current goal is
(SNo_minus_SNo y HyS).
We prove the intermediate
claim HtS:
SNo t.
We prove the intermediate
claim Htlt:
t < r.
An
exact proof term for the current goal is
(abs_SNo_lt_imp_lt t r HtS HrS HrposS Habslt).
We prove the intermediate
claim Hmtlt:
minus_SNo t < r.
An
exact proof term for the current goal is
(SNo_minus_SNo c HcS).
rewrite the current goal using Hinv (from right to left) at position 2.
An exact proof term for the current goal is Hneg.
rewrite the current goal using Hcom (from right to left).
rewrite the current goal using Hneg2 (from right to left).
Use reflexivity.
rewrite the current goal using Hswap (from left to right).
An exact proof term for the current goal is Hmtlt.
We prove the intermediate
claim HyLt:
y < add_SNo c r.
We prove the intermediate
claim Hlt1:
y < add_SNo r c.
An
exact proof term for the current goal is
(add_SNo_minus_Lt1 y c r HyS HcS HrS HycLt).
An
exact proof term for the current goal is
(add_SNo_com r c HrS HcS).
rewrite the current goal using Hcom (from right to left).
An exact proof term for the current goal is Hlt1.
We prove the intermediate
claim Hlt1:
c < add_SNo r y.
An
exact proof term for the current goal is
(add_SNo_minus_Lt1 c y r HcS HyS HrS Htlt).
An
exact proof term for the current goal is
(add_SNo_com r y HrS HyS).
We prove the intermediate
claim Hlt2:
c < add_SNo y r.
rewrite the current goal using Hcom1 (from right to left).
An exact proof term for the current goal is Hlt1.
An
exact proof term for the current goal is
(SNo_minus_SNo r HrS).
We prove the intermediate
claim HyrS:
SNo (add_SNo y r).
An
exact proof term for the current goal is
(SNo_add_SNo y r HyS HrS).
We prove the intermediate
claim HcprR:
add_SNo c r ∈ R.
An
exact proof term for the current goal is
(real_add_SNo c HcR r HrR).
We prove the intermediate
claim HcprS:
SNo (add_SNo c r).
An
exact proof term for the current goal is
(real_SNo (add_SNo c r) HcprR).
We prove the intermediate
claim HrightRlt:
Rlt y (add_SNo c r).
An
exact proof term for the current goal is
(RltI y (add_SNo c r) HyR HcprR HyLt).
Let y be given.
rewrite the current goal using HdefI (from right to left).
An exact proof term for the current goal is HyI.
We prove the intermediate
claim HyR:
y ∈ R.
We prove the intermediate
claim Hright:
Rlt y (add_SNo c r).
We prove the intermediate
claim HcS:
SNo c.
An
exact proof term for the current goal is
(real_SNo c HcR).
We prove the intermediate
claim HyS:
SNo y.
An
exact proof term for the current goal is
(real_SNo y HyR).
We prove the intermediate
claim HrS:
SNo r.
An
exact proof term for the current goal is
(real_SNo r HrR).
We prove the intermediate
claim H0lt:
0 < r.
An
exact proof term for the current goal is
(RltE_lt 0 r HrposR).
We prove the intermediate
claim HltY:
y < add_SNo c r.
An
exact proof term for the current goal is
(RltE_lt y (add_SNo c r) Hright).
We prove the intermediate
claim HcprS:
SNo (add_SNo c r).
An
exact proof term for the current goal is
(SNo_add_SNo c r HcS HrS).
An
exact proof term for the current goal is
(add_SNo_com c r HcS HrS).
We prove the intermediate
claim Hlt2:
y < add_SNo r c.
rewrite the current goal using Hcom (from right to left).
An exact proof term for the current goal is HltY.
An
exact proof term for the current goal is
(SNo_minus_SNo r HrS).
An
exact proof term for the current goal is
(add_SNo_com r c HrS HcS).
rewrite the current goal using Hcom2 (from left to right).
Use reflexivity.
rewrite the current goal using Hassoc1 (from left to right).
rewrite the current goal using Hassoc2 (from left to right).
rewrite the current goal using Hrinv (from left to right).
rewrite the current goal using
(add_SNo_0R c HcS) (from left to right).
Use reflexivity.
We prove the intermediate
claim Hlt3:
c < add_SNo r y.
rewrite the current goal using Heqleft (from right to left).
An exact proof term for the current goal is Hsum.
An
exact proof term for the current goal is
(SNo_minus_SNo y HyS).
We prove the intermediate
claim HtS:
SNo t.
We prove the intermediate
claim Hablt:
abs_SNo t < r.
Apply (xm (0 ≤ t)) to the current goal.
rewrite the current goal using
(nonneg_abs_SNo t H0le) (from left to right).
An exact proof term for the current goal is HcyLt.
An
exact proof term for the current goal is
(SNo_minus_SNo c HcS).
rewrite the current goal using Hinv (from right to left) at position 2.
An exact proof term for the current goal is Hneg.
rewrite the current goal using Htdef (from left to right).
rewrite the current goal using Hneg2 (from left to right).
rewrite the current goal using Hcom (from left to right).
Use reflexivity.
rewrite the current goal using Hswap (from left to right).
An exact proof term for the current goal is HycLt.
We prove the intermediate
claim HabsR:
abs_SNo t ∈ R.
We prove the intermediate
claim HtR:
t ∈ R.
An
exact proof term for the current goal is
(abs_SNo_in_R t HtR).
We prove the intermediate
claim HabRlt:
Rlt (abs_SNo t) r.
An
exact proof term for the current goal is
(RltI (abs_SNo t) r HabsR HrR Hablt).
We prove the intermediate
claim Hablt1:
Rlt ab 1.
An
exact proof term for the current goal is
(Rlt_tra ab r 1 HabRlt Hrlt1R).
rewrite the current goal using Hbddef (from left to right).
rewrite the current goal using
(If_i_1 (Rlt ab 1) ab 1 Hablt1) (from left to right).
An exact proof term for the current goal is HabRlt.
An exact proof term for the current goal is HbdRlt.
∎