Apply Hexab to the current goal.
Let a0 be given.
Assume Ha0pack.
Apply Ha0pack to the current goal.
Assume Ha0Sq Hb0ex.
Apply Hb0ex to the current goal.
Let b0 be given.
Assume Hb0pack.
Apply Hb0pack to the current goal.
Assume Hb0Sq HIeq.
rewrite the current goal using HIeq (from right to left).
An exact proof term for the current goal is HpI.
Set b00 to be the term
b0 0.
Set b01 to be the term
b0 1.
We prove the intermediate
claim Hb00R:
b00 ∈ R.
We prove the intermediate
claim Hb00S:
SNo b00.
An
exact proof term for the current goal is
(real_SNo b00 Hb00R).
We prove the intermediate
claim Hb01not1:
¬ (Rlt 1 b01).
We prove the intermediate
claim Hxltb00:
Rlt x b00.
We prove the intermediate
claim Hb0Eta:
b0 = (b00,b01).
We prove the intermediate
claim Hunf:
∃c1 c2 d1 d2 : set, p = (c1,c2) ∧ b0 = (d1,d2) ∧ (Rlt c1 d1 ∨ (c1 = d1 ∧ Rlt c2 d2)).
Apply Hunf 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 Hcore2.
Apply Hcore2 to the current goal.
Assume Hab Hdisj.
Apply Hab to the current goal.
Assume HpEq2 HbEq2.
We prove the intermediate
claim HpPair:
(c1,c2) = (x,1).
We will
prove (c1,c2) = (x,1).
rewrite the current goal using HpEq (from right to left).
rewrite the current goal using HpEq2 (from right to left).
Use reflexivity.
We prove the intermediate
claim Hccoords:
c1 = x ∧ c2 = 1.
We prove the intermediate
claim Hc1eq:
c1 = x.
An
exact proof term for the current goal is
(andEL (c1 = x) (c2 = 1) Hccoords).
We prove the intermediate
claim Hc2eq:
c2 = 1.
An
exact proof term for the current goal is
(andER (c1 = x) (c2 = 1) Hccoords).
We prove the intermediate
claim HbPair:
(d1,d2) = (b00,b01).
We will
prove (d1,d2) = (b00,b01).
rewrite the current goal using Hb0Eta (from right to left).
rewrite the current goal using HbEq2 (from right to left).
Use reflexivity.
We prove the intermediate
claim Hdcoords:
d1 = b00 ∧ d2 = b01.
An
exact proof term for the current goal is
(tuple_eq_coords d1 d2 b00 b01 HbPair).
We prove the intermediate
claim Hd1eq:
d1 = b00.
An
exact proof term for the current goal is
(andEL (d1 = b00) (d2 = b01) Hdcoords).
We prove the intermediate
claim Hd2eq:
d2 = b01.
An
exact proof term for the current goal is
(andER (d1 = b00) (d2 = b01) Hdcoords).
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 H1ltb01:
Rlt 1 b01.
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
(andER (c1 = d1) (Rlt c2 d2) Heq).
An exact proof term for the current goal is (Hb01not1 H1ltb01).
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 b00) Hqineq).
We prove the intermediate
claim Hqltb00:
Rlt q b00.
An
exact proof term for the current goal is
(andER (Rlt x q) (Rlt q b00) Hqineq).
We prove the intermediate
claim H0ltq:
Rlt 0 q.
We prove the intermediate
claim HqS:
SNo q.
An
exact proof term for the current goal is
(real_SNo q HqR).
We prove the intermediate
claim Hqlt1:
Rlt q 1.
Apply FalseE to the current goal.
We prove the intermediate
claim H1ltb00:
Rlt 1 b00.
An
exact proof term for the current goal is
(Rlt_tra 1 q b00 (RltI 1 q real_1 HqR H1ltq) Hqltb00).
Apply FalseE to the current goal.
We prove the intermediate
claim H1ltb00:
Rlt 1 b00.
rewrite the current goal using H1eq (from left to right) at position 1.
An exact proof term for the current goal is Hqltb00.
An
exact proof term for the current goal is
(RltI q 1 HqR real_1 Hqlt1S).
Apply (SepI R (λt : set ⇒ ¬ (Rlt t 0) ∧ ¬ (Rlt 1 t)) q HqR) to the current goal.
Apply andI to the current goal.
An
exact proof term for the current goal is
(not_Rlt_sym 0 q H0ltq).
An
exact proof term for the current goal is
(not_Rlt_sym q 1 Hqlt1).
Set w to be the term
(q,eps_ 1).
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.
Set b0eta to be the term (b00,b01).
We prove the intermediate
claim Hb0Eta:
b0 = b0eta.
rewrite the current goal using Hb0Eta (from left to right).
Apply orIL to the current goal.
An exact proof term for the current goal is Hqltb00.
We prove the intermediate
claim HwI:
w ∈ I.
rewrite the current goal using HIeq (from left to right).
Apply andI to the current goal.
An exact proof term for the current goal is Ha0w.
An exact proof term for the current goal is Hwb0.
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 HwD:
w ∈ ordsq_D.
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 Hwcap:
w ∈ U ∩ ordsq_D.
Apply Hexb to the current goal.
Let b0 be given.
Assume Hb0pack.
Apply Hb0pack to the current goal.
Assume Hb0Sq HIeq.
rewrite the current goal using HIeq (from right to left).
An exact proof term for the current goal is HpI.
Set b00 to be the term
b0 0.
Set b01 to be the term
b0 1.
We prove the intermediate
claim Hb00R:
b00 ∈ R.
We prove the intermediate
claim Hb00S:
SNo b00.
An
exact proof term for the current goal is
(real_SNo b00 Hb00R).
We prove the intermediate
claim Hb01not1:
¬ (Rlt 1 b01).
We prove the intermediate
claim Hxltb00:
Rlt x b00.
We prove the intermediate
claim Hb0Eta:
b0 = (b00,b01).
We prove the intermediate
claim Hunf:
∃c1 c2 d1 d2 : set, p = (c1,c2) ∧ b0 = (d1,d2) ∧ (Rlt c1 d1 ∨ (c1 = d1 ∧ Rlt c2 d2)).
Apply Hunf 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 Hcore2.
Apply Hcore2 to the current goal.
Assume Hab Hdisj.
Apply Hab to the current goal.
Assume HpEq2 HbEq2.
We prove the intermediate
claim HpPair:
(c1,c2) = (x,1).
We will
prove (c1,c2) = (x,1).
rewrite the current goal using HpEq (from right to left).
rewrite the current goal using HpEq2 (from right to left).
Use reflexivity.
We prove the intermediate
claim Hccoords:
c1 = x ∧ c2 = 1.
We prove the intermediate
claim Hc1eq:
c1 = x.
An
exact proof term for the current goal is
(andEL (c1 = x) (c2 = 1) Hccoords).
We prove the intermediate
claim Hc2eq:
c2 = 1.
An
exact proof term for the current goal is
(andER (c1 = x) (c2 = 1) Hccoords).
We prove the intermediate
claim HbPair:
(d1,d2) = (b00,b01).
We will
prove (d1,d2) = (b00,b01).
rewrite the current goal using Hb0Eta (from right to left).
rewrite the current goal using HbEq2 (from right to left).
Use reflexivity.
We prove the intermediate
claim Hdcoords:
d1 = b00 ∧ d2 = b01.
An
exact proof term for the current goal is
(tuple_eq_coords d1 d2 b00 b01 HbPair).
We prove the intermediate
claim Hd1eq:
d1 = b00.
An
exact proof term for the current goal is
(andEL (d1 = b00) (d2 = b01) Hdcoords).
We prove the intermediate
claim Hd2eq:
d2 = b01.
An
exact proof term for the current goal is
(andER (d1 = b00) (d2 = b01) Hdcoords).
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 H1ltb01:
Rlt 1 b01.
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
(andER (c1 = d1) (Rlt c2 d2) Heq).
An exact proof term for the current goal is (Hb01not1 H1ltb01).
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 b00) Hqineq).
We prove the intermediate
claim Hqltb00:
Rlt q b00.
An
exact proof term for the current goal is
(andER (Rlt x q) (Rlt q b00) Hqineq).
We prove the intermediate
claim H0ltq:
Rlt 0 q.
We prove the intermediate
claim HqS:
SNo q.
An
exact proof term for the current goal is
(real_SNo q HqR).
We prove the intermediate
claim Hqlt1:
Rlt q 1.
Apply FalseE to the current goal.
We prove the intermediate
claim H1ltb00:
Rlt 1 b00.
An
exact proof term for the current goal is
(Rlt_tra 1 q b00 (RltI 1 q real_1 HqR H1ltq) Hqltb00).
Apply FalseE to the current goal.
We prove the intermediate
claim H1ltb00:
Rlt 1 b00.
rewrite the current goal using H1eq (from left to right) at position 1.
An exact proof term for the current goal is Hqltb00.
An
exact proof term for the current goal is
(RltI q 1 HqR real_1 Hqlt1S).
Apply (SepI R (λt : set ⇒ ¬ (Rlt t 0) ∧ ¬ (Rlt 1 t)) q HqR) to the current goal.
Apply andI to the current goal.
An
exact proof term for the current goal is
(not_Rlt_sym 0 q H0ltq).
An
exact proof term for the current goal is
(not_Rlt_sym q 1 Hqlt1).
Set w to be the term
(q,eps_ 1).
We prove the intermediate
claim Hb0Eta:
b0 = (b00,b01).
rewrite the current goal using Hb0Eta (from left to right).
Apply orIL to the current goal.
An exact proof term for the current goal is Hqltb00.
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 Hwb0.
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 HwD:
w ∈ ordsq_D.
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 Hwcap:
w ∈ U ∩ ordsq_D.