Set S1 to be the term
S0 ∖ {t}.
We prove the intermediate
claim HS1subt:
S1 ⊆ t.
Let x be given.
We prove the intermediate
claim HxS0:
x ∈ S0.
An
exact proof term for the current goal is
(setminusE1 S0 {t} x HxS1).
We prove the intermediate
claim HxSucc:
x ∈ ordsucc t.
An exact proof term for the current goal is (HS0sub x HxS0).
Apply (ordsuccE t x HxSucc) to the current goal.
An exact proof term for the current goal is Hxt.
Apply FalseE to the current goal.
We prove the intermediate
claim Hxnot:
x ∉ {t}.
An
exact proof term for the current goal is
(setminusE2 S0 {t} x HxS1).
We prove the intermediate
claim HxIn:
x ∈ {t}.
rewrite the current goal using Hxeq (from left to right).
An
exact proof term for the current goal is
(SingI t).
An exact proof term for the current goal is (Hxnot HxIn).
We prove the intermediate
claim Hexm:
∃m : set, nat_p m ∧ (m ⊆ t ∧ equip S1 m).
An exact proof term for the current goal is (Hpt S1 HS1subt).
Apply Hexm to the current goal.
Let m be given.
We prove the intermediate
claim HmNat:
nat_p m.
An
exact proof term for the current goal is
(andEL (nat_p m) (m ⊆ t ∧ equip S1 m) Hmpack).
We prove the intermediate
claim HmTail:
m ⊆ t ∧ equip S1 m.
An
exact proof term for the current goal is
(andER (nat_p m) (m ⊆ t ∧ equip S1 m) Hmpack).
We prove the intermediate
claim HmSubt:
m ⊆ t.
An
exact proof term for the current goal is
(andEL (m ⊆ t) (equip S1 m) HmTail).
We prove the intermediate
claim HeqS1m:
equip S1 m.
An
exact proof term for the current goal is
(andER (m ⊆ t) (equip S1 m) HmTail).
We prove the intermediate
claim HtNotS1:
t ∉ S1.
We prove the intermediate
claim HtNot:
t ∉ {t}.
An
exact proof term for the current goal is
(setminusE2 S0 {t} t HtS1).
An
exact proof term for the current goal is
(HtNot (SingI t)).
We prove the intermediate
claim HeqmS1:
equip m S1.
An
exact proof term for the current goal is
(equip_sym S1 m HeqS1m).
We prove the intermediate
claim HS0eq:
S0 = S1 ∪ {t}.
Let x be given.
Apply (xm (x = t)) to the current goal.
rewrite the current goal using Hxeq (from left to right).
We prove the intermediate
claim HxnotSing:
x ∉ {t}.
An
exact proof term for the current goal is
(Hxneq (SingE t x HxSing)).
We prove the intermediate
claim HxS1:
x ∈ S1.
An
exact proof term for the current goal is
(setminusI S0 {t} x HxS0 HxnotSing).
An
exact proof term for the current goal is
(binunionI1 S1 {t} x HxS1).
Let x be given.
Apply (binunionE S1 {t} x HxUnion) to the current goal.
An
exact proof term for the current goal is
(setminusE1 S0 {t} x HxS1).
We prove the intermediate
claim Hxeq:
x = t.
An
exact proof term for the current goal is
(SingE t x HxSing).
rewrite the current goal using Hxeq (from left to right).
An exact proof term for the current goal is HtInS0.
We use m1 to witness the existential quantifier.
Apply andI to the current goal.
An
exact proof term for the current goal is
(nat_ordsucc m HmNat).
Apply andI to the current goal.
Let z be given.
We prove the intermediate
claim Hzcase:
z ∈ m ∨ z = m.
An
exact proof term for the current goal is
(ordsuccE m z Hz).
Apply Hzcase to the current goal.
We prove the intermediate
claim Hzt:
z ∈ t.
An exact proof term for the current goal is (HmSubt z Hzm).
An
exact proof term for the current goal is
(ordsuccI1 t z Hzt).
rewrite the current goal using Hzeq (from left to right).
An
exact proof term for the current goal is
(ordsuccI1 t m HmInT).
rewrite the current goal using HmEqT (from left to right).
An
exact proof term for the current goal is
(ordsuccI2 t).
Apply FalseE to the current goal.
We prove the intermediate
claim HtInT:
t ∈ t.
An exact proof term for the current goal is (HmSubt t HtInm).
An
exact proof term for the current goal is
((In_irref t) HtInT).
rewrite the current goal using HS0eq (from left to right).
We prove the intermediate
claim HS0subt:
S0 ⊆ t.
Let x be given.
We prove the intermediate
claim HxSucc:
x ∈ ordsucc t.
An exact proof term for the current goal is (HS0sub x HxS0).
Apply (ordsuccE t x HxSucc) to the current goal.
An exact proof term for the current goal is Hxt.
Apply FalseE to the current goal.
We prove the intermediate
claim HtS0:
t ∈ S0.
rewrite the current goal using Hxeq (from right to left).
An exact proof term for the current goal is HxS0.
An exact proof term for the current goal is (HtNotInS0 HtS0).
We prove the intermediate
claim Hexm:
∃m : set, nat_p m ∧ (m ⊆ t ∧ equip S0 m).
An exact proof term for the current goal is (Hpt S0 HS0subt).
Apply Hexm to the current goal.
Let m be given.
We use m to witness the existential quantifier.
Apply andI to the current goal.
An
exact proof term for the current goal is
(andEL (nat_p m) (m ⊆ t ∧ equip S0 m) Hm).
Apply andI to the current goal.