Apply Hexab to the current goal.
Let a be given.
Assume Hapack.
Apply Hapack to the current goal.
Assume HaSq Hexb.
Apply Hexb to the current goal.
Let b be given.
Assume Hbpack.
Apply Hbpack to the current goal.
Assume HbSq HIeq.
rewrite the current goal using HIeq (from right to left).
An exact proof term for the current goal is HpI.
We prove the intermediate
claim HbEta:
b = (b 0,b 1).
We prove the intermediate
claim Hb0R:
(b 0) ∈ R.
An
exact proof term for the current goal is
(SepE1 R (λt : set ⇒ ¬ (Rlt t 0) ∧ ¬ (Rlt 1 t)) (b 0) Hb0U).
We prove the intermediate
claim Hb0S:
SNo (b 0).
An
exact proof term for the current goal is
(real_SNo (b 0) Hb0R).
We prove the intermediate
claim Hb1prop:
¬ (Rlt 1 (b 1)).
We prove the intermediate
claim Hxltb0:
Rlt x (b 0).
We prove the intermediate
claim Hpb_unf:
∃c1 c2 d1 d2 : set, p = (c1,c2) ∧ b = (d1,d2) ∧ (Rlt c1 d1 ∨ (c1 = d1 ∧ Rlt c2 d2)).
Apply Hpb_unf to the current goal.
Let c1 be given.
Assume Hc2.
Apply Hc2 to the current goal.
Let c2 be given.
Assume Hd1.
Apply Hd1 to the current goal.
Let d1 be given.
Assume Hd2.
Apply Hd2 to the current goal.
Let d2 be given.
Assume Hcore.
We prove the intermediate
claim Hpb':
p = (c1,c2) ∧ b = (d1,d2).
An
exact proof term for the current goal is
(andEL (p = (c1,c2) ∧ b = (d1,d2)) (Rlt c1 d1 ∨ (c1 = d1 ∧ Rlt c2 d2)) Hcore).
We prove the intermediate
claim HpEq':
p = (c1,c2).
An
exact proof term for the current goal is
(andEL (p = (c1,c2)) (b = (d1,d2)) Hpb').
We prove the intermediate
claim HbEq':
b = (d1,d2).
An
exact proof term for the current goal is
(andER (p = (c1,c2)) (b = (d1,d2)) Hpb').
We prove the intermediate
claim Hdisj:
Rlt c1 d1 ∨ (c1 = d1 ∧ Rlt c2 d2).
An
exact proof term for the current goal is
(andER (p = (c1,c2) ∧ b = (d1,d2)) (Rlt c1 d1 ∨ (c1 = d1 ∧ Rlt c2 d2)) Hcore).
We prove the intermediate
claim Hpcoords:
x = c1 ∧ 1 = c2.
We prove the intermediate
claim Hpc:
(x,1) = (c1,c2).
rewrite the current goal using HpEq (from right to left).
An exact proof term for the current goal is HpEq'.
We prove the intermediate
claim Hc1eq:
c1 = x.
Use symmetry.
An
exact proof term for the current goal is
(andEL (x = c1) (1 = c2) Hpcoords).
We prove the intermediate
claim Hbcoords:
d1 = (b 0) ∧ d2 = (b 1).
We prove the intermediate
claim Hbd:
(d1,d2) = (b 0,b 1).
rewrite the current goal using HbEq' (from right to left).
An exact proof term for the current goal is HbEta.
We prove the intermediate
claim Hd1eq:
d1 = (b 0).
An
exact proof term for the current goal is
(andEL (d1 = (b 0)) (d2 = (b 1)) Hbcoords).
We prove the intermediate
claim Hcase:
Rlt x (b 0) ∨ (x = (b 0) ∧ Rlt 1 (b 1)).
Apply Hdisj to the current goal.
Apply orIL to the current goal.
rewrite the current goal using Hc1eq (from right to left) at position 1.
rewrite the current goal using Hd1eq (from right to left).
An exact proof term for the current goal is Hlt.
Apply orIR to the current goal.
We prove the intermediate
claim Hc1d1:
c1 = d1.
An
exact proof term for the current goal is
(andEL (c1 = d1) (Rlt c2 d2) Heq).
We prove the intermediate
claim Hc2d2:
Rlt c2 d2.
An
exact proof term for the current goal is
(andER (c1 = d1) (Rlt c2 d2) Heq).
Apply andI to the current goal.
rewrite the current goal using Hc1eq (from right to left).
rewrite the current goal using Hd1eq (from right to left).
An exact proof term for the current goal is Hc1d1.
We will
prove Rlt 1 (b 1).
We prove the intermediate
claim Hc2eq:
c2 = 1.
Use symmetry.
An
exact proof term for the current goal is
(andER (x = c1) (1 = c2) Hpcoords).
We prove the intermediate
claim Hd2eq:
d2 = (b 1).
An
exact proof term for the current goal is
(andER (d1 = (b 0)) (d2 = (b 1)) Hbcoords).
rewrite the current goal using Hc2eq (from right to left) at position 1.
rewrite the current goal using Hd2eq (from right to left).
An exact proof term for the current goal is Hc2d2.
Apply Hcase to the current goal.
An exact proof term for the current goal is H1.
Apply FalseE to the current goal.
An
exact proof term for the current goal is
(Hb1prop (andER (x = (b 0)) (Rlt 1 (b 1)) H2)).
Let q be given.
Assume Hqpack.
Apply Hqpack to the current goal.
Assume HqQ Hqineq.
We prove the intermediate
claim HqR:
q ∈ R.
We prove the intermediate
claim Hxltq:
Rlt x q.
An
exact proof term for the current goal is
(andEL (Rlt x q) (Rlt q (b 0)) Hqineq).
We prove the intermediate
claim Hqltb0:
Rlt q (b 0).
An
exact proof term for the current goal is
(andER (Rlt x q) (Rlt q (b 0)) Hqineq).
Apply (SepI R (λt : set ⇒ ¬ (Rlt t 0) ∧ ¬ (Rlt 1 t)) q HqR) to the current goal.
Apply andI to the current goal.
We will
prove ¬ (Rlt q 0).
We prove the intermediate
claim Hx0:
Rlt x 0.
An
exact proof term for the current goal is
(Rlt_tra x q 0 Hxltq Hq0).
An exact proof term for the current goal is (Hxnotlt0 Hx0).
We will
prove ¬ (Rlt 1 q).
We prove the intermediate
claim H1b0:
Rlt 1 (b 0).
An
exact proof term for the current goal is
(Rlt_tra 1 q (b 0) H1q Hqltb0).
Set w to be the term
(q,0).
rewrite the current goal using HpEq (from left to right).
Apply orIL to the current goal.
An exact proof term for the current goal is Hxltq.
rewrite the current goal using HbEta (from left to right).
Apply orIL to the current goal.
An exact proof term for the current goal is Hqltb0.
We prove the intermediate
claim HwI:
w ∈ I.
rewrite the current goal using HIeq (from left to right).
We prove the intermediate
claim HwU:
w ∈ U.
An exact proof term for the current goal is (HIU w HwI).
We prove the intermediate
claim H0ltq:
Rlt 0 q.
Apply FalseE to the current goal.
An
exact proof term for the current goal is
(Hxnotlt0 (RltI x 0 HxR real_0 Hxlt0)).
rewrite the current goal using Hxeq0 (from right to left) at position 1.
An exact proof term for the current goal is Hxltq.
We prove the intermediate
claim Hqlt1:
Rlt q 1.
An
exact proof term for the current goal is
(Rlt_tra q (b 0) 1 Hqltb0 (RltI (b 0) 1 Hb0R real_1 Hb0lt1)).
rewrite the current goal using Hb0eq1 (from right to left).
An exact proof term for the current goal is Hqltb0.
Apply FalseE to the current goal.
We prove the intermediate
claim HwC:
w ∈ ordsq_C.
We use q to witness the existential quantifier.
Apply andI to the current goal.
Apply andI to the current goal.
An exact proof term for the current goal is H0ltq.
An exact proof term for the current goal is Hqlt1.
We prove the intermediate
claim Hwc:
w ∈ U ∩ ordsq_C.
Apply Hexb to the current goal.
Let b be given.
Assume Hbpack.
Apply Hbpack to the current goal.
Assume HbSq HIeq.
rewrite the current goal using HIeq (from right to left).
An exact proof term for the current goal is HpI.
We prove the intermediate
claim HbEta:
b = (b 0,b 1).
We prove the intermediate
claim Hb0R:
(b 0) ∈ R.
An
exact proof term for the current goal is
(SepE1 R (λt : set ⇒ ¬ (Rlt t 0) ∧ ¬ (Rlt 1 t)) (b 0) Hb0U).
We prove the intermediate
claim Hb0S:
SNo (b 0).
An
exact proof term for the current goal is
(real_SNo (b 0) Hb0R).
We prove the intermediate
claim Hb1prop:
¬ (Rlt 1 (b 1)).
We prove the intermediate
claim Hxltb0:
Rlt x (b 0).
We prove the intermediate
claim Hpb_unf:
∃c1 c2 d1 d2 : set, p = (c1,c2) ∧ b = (d1,d2) ∧ (Rlt c1 d1 ∨ (c1 = d1 ∧ Rlt c2 d2)).
Apply Hpb_unf to the current goal.
Let c1 be given.
Assume Hc2.
Apply Hc2 to the current goal.
Let c2 be given.
Assume Hd1.
Apply Hd1 to the current goal.
Let d1 be given.
Assume Hd2.
Apply Hd2 to the current goal.
Let d2 be given.
Assume Hcore.
We prove the intermediate
claim Hpb':
p = (c1,c2) ∧ b = (d1,d2).
An
exact proof term for the current goal is
(andEL (p = (c1,c2) ∧ b = (d1,d2)) (Rlt c1 d1 ∨ (c1 = d1 ∧ Rlt c2 d2)) Hcore).
We prove the intermediate
claim HpEq':
p = (c1,c2).
An
exact proof term for the current goal is
(andEL (p = (c1,c2)) (b = (d1,d2)) Hpb').
We prove the intermediate
claim HbEq':
b = (d1,d2).
An
exact proof term for the current goal is
(andER (p = (c1,c2)) (b = (d1,d2)) Hpb').
We prove the intermediate
claim Hdisj:
Rlt c1 d1 ∨ (c1 = d1 ∧ Rlt c2 d2).
An
exact proof term for the current goal is
(andER (p = (c1,c2) ∧ b = (d1,d2)) (Rlt c1 d1 ∨ (c1 = d1 ∧ Rlt c2 d2)) Hcore).
We prove the intermediate
claim Hpcoords:
x = c1 ∧ 1 = c2.
We prove the intermediate
claim Hpc:
(x,1) = (c1,c2).
rewrite the current goal using HpEq (from right to left).
An exact proof term for the current goal is HpEq'.
We prove the intermediate
claim Hc1eq:
c1 = x.
Use symmetry.
An
exact proof term for the current goal is
(andEL (x = c1) (1 = c2) Hpcoords).
We prove the intermediate
claim Hbcoords:
d1 = (b 0) ∧ d2 = (b 1).
We prove the intermediate
claim Hbd:
(d1,d2) = (b 0,b 1).
rewrite the current goal using HbEq' (from right to left).
An exact proof term for the current goal is HbEta.
We prove the intermediate
claim Hd1eq:
d1 = (b 0).
An
exact proof term for the current goal is
(andEL (d1 = (b 0)) (d2 = (b 1)) Hbcoords).
Apply Hdisj to the current goal.
rewrite the current goal using Hc1eq (from right to left) at position 1.
rewrite the current goal using Hd1eq (from right to left).
An exact proof term for the current goal is Hlt.
Apply FalseE to the current goal.
We prove the intermediate
claim Hc2d2:
Rlt c2 d2.
An
exact proof term for the current goal is
(andER (c1 = d1) (Rlt c2 d2) Hc1d1).
We prove the intermediate
claim Hc2eq:
c2 = 1.
Use symmetry.
An
exact proof term for the current goal is
(andER (x = c1) (1 = c2) Hpcoords).
We prove the intermediate
claim Hd2eq:
d2 = (b 1).
An
exact proof term for the current goal is
(andER (d1 = (b 0)) (d2 = (b 1)) Hbcoords).
We prove the intermediate
claim H1ltb1:
Rlt 1 (b 1).
rewrite the current goal using Hc2eq (from right to left) at position 1.
rewrite the current goal using Hd2eq (from right to left).
An exact proof term for the current goal is Hc2d2.
An exact proof term for the current goal is (Hb1prop H1ltb1).
Let q be given.
Assume Hqpack.
Apply Hqpack to the current goal.
Assume HqQ Hqineq.
We prove the intermediate
claim HqR:
q ∈ R.
We prove the intermediate
claim Hxltq:
Rlt x q.
An
exact proof term for the current goal is
(andEL (Rlt x q) (Rlt q (b 0)) Hqineq).
We prove the intermediate
claim Hqltb0:
Rlt q (b 0).
An
exact proof term for the current goal is
(andER (Rlt x q) (Rlt q (b 0)) Hqineq).
Apply (SepI R (λt : set ⇒ ¬ (Rlt t 0) ∧ ¬ (Rlt 1 t)) q HqR) to the current goal.
Apply andI to the current goal.
We will
prove ¬ (Rlt q 0).
We prove the intermediate
claim Hx0:
Rlt x 0.
An
exact proof term for the current goal is
(Rlt_tra x q 0 Hxltq Hq0).
An exact proof term for the current goal is (Hxnotlt0 Hx0).
We will
prove ¬ (Rlt 1 q).
We prove the intermediate
claim H1b0:
Rlt 1 (b 0).
An
exact proof term for the current goal is
(Rlt_tra 1 q (b 0) H1q Hqltb0).
Set w to be the term
(q,0).
rewrite the current goal using HbEta (from left to right).
Apply orIL to the current goal.
An exact proof term for the current goal is Hqltb0.
We prove the intermediate
claim HwI:
w ∈ I.
rewrite the current goal using HIeq (from left to right).
An exact proof term for the current goal is Hwb.
We prove the intermediate
claim HwU:
w ∈ U.
An exact proof term for the current goal is (HIU w HwI).
We prove the intermediate
claim H0ltq:
Rlt 0 q.
Apply FalseE to the current goal.
An
exact proof term for the current goal is
(Hxnotlt0 (RltI x 0 HxR real_0 Hxlt0)).
rewrite the current goal using Hxeq0 (from right to left) at position 1.
An exact proof term for the current goal is Hxltq.
We prove the intermediate
claim Hqlt1:
Rlt q 1.
An
exact proof term for the current goal is
(Rlt_tra q (b 0) 1 Hqltb0 (RltI (b 0) 1 Hb0R real_1 Hb0lt1)).
rewrite the current goal using Hb0eq1 (from right to left).
An exact proof term for the current goal is Hqltb0.
Apply FalseE to the current goal.
We prove the intermediate
claim HwC:
w ∈ ordsq_C.
We use q to witness the existential quantifier.
Apply andI to the current goal.
Apply andI to the current goal.
An exact proof term for the current goal is H0ltq.
An exact proof term for the current goal is Hqlt1.
We prove the intermediate
claim Hwc:
w ∈ U ∩ ordsq_C.