Let x be given.
Let F be given.
We prove the intermediate
claim HFsubX:
F ⊆ X.
Set U0 to be the term
X ∖ F.
We prove the intermediate
claim HU0open:
open_in X Tx U0.
We prove the intermediate
claim HU0Tx:
U0 ∈ Tx.
An
exact proof term for the current goal is
(open_in_elem X Tx U0 HU0open).
We prove the intermediate
claim HxU0:
x ∈ U0.
An exact proof term for the current goal is HxX.
An exact proof term for the current goal is HxNotF.
Set sepU to be the term
λy : set ⇒ Eps_i (λU : set ⇒ ∃V : set, U ∈ Tx ∧ V ∈ Tx ∧ x ∈ U ∧ y ∈ V ∧ U ∩ V = Empty).
Set sepV to be the term
λy : set ⇒ Eps_i (λV : set ⇒ (sepU y) ∈ Tx ∧ V ∈ Tx ∧ x ∈ (sepU y) ∧ y ∈ V ∧ (sepU y) ∩ V = Empty).
We prove the intermediate
claim HsepVprop:
∀y : set, y ∈ F → (sepU y) ∈ Tx ∧ (sepV y) ∈ Tx ∧ x ∈ (sepU y) ∧ y ∈ (sepV y) ∧ (sepU y) ∩ (sepV y) = Empty.
Let y be given.
We prove the intermediate
claim HyX:
y ∈ X.
An exact proof term for the current goal is (HFsubX y HyF).
We prove the intermediate
claim Hneq:
x ≠ y.
We prove the intermediate
claim HxF:
x ∈ F.
rewrite the current goal using Hxy (from left to right).
An exact proof term for the current goal is HyF.
An exact proof term for the current goal is (HxNotF HxF).
We prove the intermediate
claim HexSep:
∃U V : set, U ∈ Tx ∧ V ∈ Tx ∧ x ∈ U ∧ y ∈ V ∧ U ∩ V = Empty.
We prove the intermediate
claim HexU:
∃U : set, ∃V : set, U ∈ Tx ∧ V ∈ Tx ∧ x ∈ U ∧ y ∈ V ∧ U ∩ V = Empty.
An exact proof term for the current goal is HexSep.
We prove the intermediate
claim HsepUex:
∃V : set, (sepU y) ∈ Tx ∧ V ∈ Tx ∧ x ∈ (sepU y) ∧ y ∈ V ∧ (sepU y) ∩ V = Empty.
An
exact proof term for the current goal is
(Eps_i_ex (λU : set ⇒ ∃V : set, U ∈ Tx ∧ V ∈ Tx ∧ x ∈ U ∧ y ∈ V ∧ U ∩ V = Empty) HexU).
We prove the intermediate
claim HexV:
∃V : set, (sepU y) ∈ Tx ∧ V ∈ Tx ∧ x ∈ (sepU y) ∧ y ∈ V ∧ (sepU y) ∩ V = Empty.
An exact proof term for the current goal is HsepUex.
We prove the intermediate
claim HsepVex:
(sepU y) ∈ Tx ∧ (sepV y) ∈ Tx ∧ x ∈ (sepU y) ∧ y ∈ (sepV y) ∧ (sepU y) ∩ (sepV y) = Empty.
An
exact proof term for the current goal is
(Eps_i_ex (λV : set ⇒ (sepU y) ∈ Tx ∧ V ∈ Tx ∧ x ∈ (sepU y) ∧ y ∈ V ∧ (sepU y) ∩ V = Empty) HexV).
An exact proof term for the current goal is HsepVex.
Set VFam to be the term
{sepV y|y ∈ F}.
Set Cover to be the term
{U0} ∪ VFam.
We prove the intermediate
claim HCoverOpen:
∀u : set, u ∈ Cover → u ∈ Tx.
Let u be given.
We prove the intermediate
claim Heq:
u = U0.
An
exact proof term for the current goal is
(SingE U0 u Hu0).
rewrite the current goal using Heq (from left to right).
An exact proof term for the current goal is HU0Tx.
Apply (ReplE_impred F (λy : set ⇒ sepV y) u HuV (u ∈ Tx)) to the current goal.
Let y be given.
We prove the intermediate
claim Hsep:
(sepU y) ∈ Tx ∧ (sepV y) ∈ Tx ∧ x ∈ (sepU y) ∧ y ∈ (sepV y) ∧ (sepU y) ∩ (sepV y) = Empty.
An exact proof term for the current goal is (HsepVprop y HyF).
rewrite the current goal using Hueq (from left to right).
We prove the intermediate
claim H1:
(((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx) ∧ x ∈ (sepU y) ∧ y ∈ (sepV y)).
An
exact proof term for the current goal is
(andEL ((((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx) ∧ x ∈ (sepU y) ∧ y ∈ (sepV y))) ((sepU y) ∩ (sepV y) = Empty) Hsep).
We prove the intermediate
claim H2:
(((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx) ∧ x ∈ (sepU y)).
An
exact proof term for the current goal is
(andEL ((((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx) ∧ x ∈ (sepU y))) (y ∈ (sepV y)) H1).
We prove the intermediate
claim H3:
((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx).
An
exact proof term for the current goal is
(andEL (((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx)) (x ∈ (sepU y)) H2).
An
exact proof term for the current goal is
(andER ((sepU y) ∈ Tx) ((sepV y) ∈ Tx) H3).
An exact proof term for the current goal is Hu.
We prove the intermediate
claim HCoverCovers:
covers X Cover.
Let z be given.
Apply (xm (z ∈ F)) to the current goal.
We use (sepV z) to witness the existential quantifier.
Apply andI to the current goal.
An
exact proof term for the current goal is
(binunionI2 {U0} VFam (sepV z) (ReplI F (λy : set ⇒ sepV y) z HzF)).
We prove the intermediate
claim Hsep:
(sepU z) ∈ Tx ∧ (sepV z) ∈ Tx ∧ x ∈ (sepU z) ∧ z ∈ (sepV z) ∧ (sepU z) ∩ (sepV z) = Empty.
An exact proof term for the current goal is (HsepVprop z HzF).
We prove the intermediate
claim Hleft:
(((sepU z) ∈ Tx ∧ (sepV z) ∈ Tx) ∧ x ∈ (sepU z) ∧ z ∈ (sepV z)).
An
exact proof term for the current goal is
(andEL ((((sepU z) ∈ Tx ∧ (sepV z) ∈ Tx) ∧ x ∈ (sepU z) ∧ z ∈ (sepV z))) ((sepU z) ∩ (sepV z) = Empty) Hsep).
An
exact proof term for the current goal is
(andER (((sepU z) ∈ Tx ∧ (sepV z) ∈ Tx) ∧ x ∈ (sepU z)) (z ∈ (sepV z)) Hleft).
We use U0 to witness the existential quantifier.
Apply andI to the current goal.
An
exact proof term for the current goal is
(setminusI X F z HzX HzNotF).
We prove the intermediate
claim Hcover:
open_cover X Tx Cover.
An
exact proof term for the current goal is
(andI (∀u : set, u ∈ Cover → u ∈ Tx) (covers X Cover) HCoverOpen HCoverCovers).
Apply Href to the current goal.
Let W be given.
Set V to be the term
⋃ WF.
We prove the intermediate
claim HWref:
refine_of W Cover.
We prove the intermediate
claim HWcover:
open_cover X Tx W.
We prove the intermediate
claim HWopen:
∀w : set, w ∈ W → w ∈ Tx.
An
exact proof term for the current goal is
(andEL (∀w : set, w ∈ W → w ∈ Tx) (covers X W) HWcover).
We prove the intermediate
claim HWcovers:
covers X W.
An
exact proof term for the current goal is
(andER (∀w : set, w ∈ W → w ∈ Tx) (covers X W) HWcover).
We prove the intermediate
claim HWFsubW:
WF ⊆ W.
An
exact proof term for the current goal is
(Sep_Subq W (λw : set ⇒ w ∩ F ≠ Empty)).
We prove the intermediate
claim HWFsubTx:
WF ⊆ Tx.
Let w be given.
We prove the intermediate
claim HwW:
w ∈ W.
An
exact proof term for the current goal is
(SepE1 W (λw0 : set ⇒ w0 ∩ F ≠ Empty) w HwWF).
An exact proof term for the current goal is (HWopen w HwW).
We prove the intermediate
claim HVTx:
V ∈ Tx.
We prove the intermediate
claim HVsubX:
V ⊆ X.
Let z be given.
Let w be given.
We prove the intermediate
claim HwTx:
w ∈ Tx.
An exact proof term for the current goal is (HWFsubTx w HwWF).
We prove the intermediate
claim HwsubX:
w ⊆ X.
An exact proof term for the current goal is (HwsubX z Hzw).
We prove the intermediate
claim HFsubV:
F ⊆ V.
Let y be given.
We prove the intermediate
claim HyX:
y ∈ X.
An exact proof term for the current goal is (HFsubX y HyF).
Apply (HWcovers y HyX) to the current goal.
Let w be given.
We prove the intermediate
claim HwInW:
w ∈ W.
An
exact proof term for the current goal is
(andEL (w ∈ W) (y ∈ w) HwW).
We prove the intermediate
claim Hyw:
y ∈ w.
An
exact proof term for the current goal is
(andER (w ∈ W) (y ∈ w) HwW).
We prove the intermediate
claim HwFnon:
w ∩ F ≠ Empty.
We prove the intermediate
claim HwWF:
w ∈ WF.
An
exact proof term for the current goal is
(SepI W (λw0 : set ⇒ w0 ∩ F ≠ Empty) w HwInW HwFnon).
An
exact proof term for the current goal is
(UnionI WF y w Hyw HwWF).
Set C to be the term
⋃ ClWF.
We prove the intermediate
claim HWFsubX:
∀w : set, w ∈ WF → w ⊆ X.
Let w be given.
We prove the intermediate
claim HwTx:
w ∈ Tx.
An exact proof term for the current goal is (HWFsubTx w HwWF).
We prove the intermediate
claim HVdef:
V = ⋃ WF.
We prove the intermediate
claim HclVsubC':
closure_of X Tx (⋃ WF) ⊆ C.
We prove the intermediate
claim HclVsubC:
closure_of X Tx V ⊆ C.
rewrite the current goal using HVdef (from left to right).
An exact proof term for the current goal is HclVsubC'.
We prove the intermediate
claim HCsubclV:
C ⊆ closure_of X Tx V.
Let z be given.
Let clw be given.
Let w be given.
We prove the intermediate
claim Hzclw2:
z ∈ closure_of X Tx w.
rewrite the current goal using Hclweq (from right to left).
An exact proof term for the current goal is Hzclw.
We prove the intermediate
claim HwsubV:
w ⊆ V.
Let t be given.
An
exact proof term for the current goal is
(UnionI WF t w Htw HwWF).
An
exact proof term for the current goal is
(closure_monotone X Tx w V HTx HwsubV HVsubX).
An exact proof term for the current goal is (Hclwsub z Hzclw2).
We prove the intermediate
claim HCeq:
closure_of X Tx V = C.
An exact proof term for the current goal is HclVsubC.
An exact proof term for the current goal is HCsubclV.
We prove the intermediate
claim HCclosed:
closed_in X Tx C.
rewrite the current goal using HCeq (from right to left).
Set U to be the term
X ∖ C.
We prove the intermediate
claim HUopen:
open_in X Tx U.
We prove the intermediate
claim HUTx:
U ∈ Tx.
An
exact proof term for the current goal is
(open_in_elem X Tx U HUopen).
We prove the intermediate
claim HxNotC:
x ∉ C.
Let clw be given.
Let w be given.
We prove the intermediate
claim Hxclw2:
x ∈ closure_of X Tx w.
rewrite the current goal using Hclweq (from right to left).
An exact proof term for the current goal is Hxclw.
We prove the intermediate
claim HwW:
w ∈ W.
An exact proof term for the current goal is (HWFsubW w HwWF).
We prove the intermediate
claim Hexu:
∃u : set, u ∈ Cover ∧ w ⊆ u.
An exact proof term for the current goal is (HWref w HwW).
Apply Hexu to the current goal.
Let u be given.
We prove the intermediate
claim HuCover:
u ∈ Cover.
An
exact proof term for the current goal is
(andEL (u ∈ Cover) (w ⊆ u) Hu).
We prove the intermediate
claim Hwsubu:
w ⊆ u.
An
exact proof term for the current goal is
(andER (u ∈ Cover) (w ⊆ u) Hu).
We prove the intermediate
claim HxNotclw:
x ∉ closure_of X Tx w.
Apply (binunionE {U0} VFam u HuCover) to the current goal.
We prove the intermediate
claim Hueq:
u = U0.
An
exact proof term for the current goal is
(SingE U0 u Hu0).
We prove the intermediate
claim HwsubU0:
w ⊆ U0.
Let t be given.
rewrite the current goal using Hueq (from right to left).
An exact proof term for the current goal is (Hwsubu t Htw).
We prove the intermediate
claim HwFnon:
w ∩ F ≠ Empty.
An
exact proof term for the current goal is
(SepE2 W (λw0 : set ⇒ w0 ∩ F ≠ Empty) w HwWF).
We prove the intermediate
claim HwFsubEmpty:
w ∩ F ⊆ Empty.
Let t be given.
We prove the intermediate
claim Htpair:
t ∈ w ∧ t ∈ F.
An
exact proof term for the current goal is
(binintersectE w F t Ht).
We prove the intermediate
claim Htw:
t ∈ w.
An
exact proof term for the current goal is
(andEL (t ∈ w) (t ∈ F) Htpair).
We prove the intermediate
claim HtF:
t ∈ F.
An
exact proof term for the current goal is
(andER (t ∈ w) (t ∈ F) Htpair).
We prove the intermediate
claim HtU0:
t ∈ U0.
An exact proof term for the current goal is (HwsubU0 t Htw).
We prove the intermediate
claim HtNotF:
t ∉ F.
An
exact proof term for the current goal is
(setminusE2 X F t HtU0).
Apply FalseE to the current goal.
An exact proof term for the current goal is (HtNotF HtF).
We prove the intermediate
claim HwFEmpty:
w ∩ F = Empty.
An
exact proof term for the current goal is
(Empty_Subq_eq (w ∩ F) HwFsubEmpty).
Apply FalseE to the current goal.
An exact proof term for the current goal is (HwFnon HwFEmpty).
Let y be given.
We prove the intermediate
claim HwsubVy:
w ⊆ sepV y.
Let t be given.
We will
prove t ∈ sepV y.
rewrite the current goal using Hueq (from right to left).
An exact proof term for the current goal is (Hwsubu t Htw).
We prove the intermediate
claim Hsep:
(sepU y) ∈ Tx ∧ (sepV y) ∈ Tx ∧ x ∈ (sepU y) ∧ y ∈ (sepV y) ∧ (sepU y) ∩ (sepV y) = Empty.
An exact proof term for the current goal is (HsepVprop y HyF).
We prove the intermediate
claim Hleft:
(((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx) ∧ x ∈ (sepU y) ∧ y ∈ (sepV y)).
An
exact proof term for the current goal is
(andEL ((((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx) ∧ x ∈ (sepU y) ∧ y ∈ (sepV y))) ((sepU y) ∩ (sepV y) = Empty) Hsep).
We prove the intermediate
claim Hdisj:
(sepU y) ∩ (sepV y) = Empty.
An
exact proof term for the current goal is
(andER ((((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx) ∧ x ∈ (sepU y) ∧ y ∈ (sepV y))) ((sepU y) ∩ (sepV y) = Empty) Hsep).
We prove the intermediate
claim Htmp:
(((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx) ∧ x ∈ (sepU y)).
An
exact proof term for the current goal is
(andEL ((((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx) ∧ x ∈ (sepU y))) (y ∈ (sepV y)) Hleft).
We prove the intermediate
claim HUV:
((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx).
An
exact proof term for the current goal is
(andEL (((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx)) (x ∈ (sepU y)) Htmp).
We prove the intermediate
claim HUyTx:
(sepU y) ∈ Tx.
An
exact proof term for the current goal is
(andEL ((sepU y) ∈ Tx) ((sepV y) ∈ Tx) HUV).
We prove the intermediate
claim HxUy:
x ∈ sepU y.
An
exact proof term for the current goal is
(andER (((sepU y) ∈ Tx ∧ (sepV y) ∈ Tx)) (x ∈ (sepU y)) Htmp).
We prove the intermediate
claim HUywEmpty:
(sepU y) ∩ w = Empty.
Let t be given.
We prove the intermediate
claim Htpair:
t ∈ sepU y ∧ t ∈ w.
An
exact proof term for the current goal is
(binintersectE (sepU y) w t Ht).
We prove the intermediate
claim HtUy:
t ∈ sepU y.
An
exact proof term for the current goal is
(andEL (t ∈ sepU y) (t ∈ w) Htpair).
We prove the intermediate
claim Htw:
t ∈ w.
An
exact proof term for the current goal is
(andER (t ∈ sepU y) (t ∈ w) Htpair).
We prove the intermediate
claim HtVy:
t ∈ sepV y.
An exact proof term for the current goal is (HwsubVy t Htw).
We prove the intermediate
claim HtUyVy:
t ∈ (sepU y) ∩ (sepV y).
An
exact proof term for the current goal is
(binintersectI (sepU y) (sepV y) t HtUy HtVy).
rewrite the current goal using Hdisj (from right to left).
An exact proof term for the current goal is HtUyVy.
We prove the intermediate
claim Hclprop:
∀U : set, U ∈ Tx → x ∈ U → U ∩ w ≠ Empty.
An
exact proof term for the current goal is
(SepE2 X (λx0 : set ⇒ ∀U : set, U ∈ Tx → x0 ∈ U → U ∩ w ≠ Empty) x Hxclw2).
We prove the intermediate
claim Hnon:
(sepU y) ∩ w ≠ Empty.
An exact proof term for the current goal is (Hclprop (sepU y) HUyTx HxUy).
Apply FalseE to the current goal.
An exact proof term for the current goal is (Hnon HUywEmpty).
An exact proof term for the current goal is (HxNotclw Hxclw2).
We prove the intermediate
claim HxU:
x ∈ U.
An
exact proof term for the current goal is
(setminusI X C x HxX HxNotC).
We prove the intermediate
claim HVsubC:
V ⊆ C.
Let z be given.
Let w be given.
We prove the intermediate
claim HwsubX:
w ⊆ X.
An exact proof term for the current goal is (HWFsubX w HwWF).
We prove the intermediate
claim Hzclw:
z ∈ closure_of X Tx w.
An
exact proof term for the current goal is
(subset_of_closure X Tx w HTx HwsubX z Hzw).
We prove the intermediate
claim HUdisjV:
U ∩ V = Empty.
Let z be given.
We prove the intermediate
claim Hzpair:
z ∈ U ∧ z ∈ V.
An
exact proof term for the current goal is
(binintersectE U V z Hz).
We prove the intermediate
claim HzU:
z ∈ U.
An
exact proof term for the current goal is
(andEL (z ∈ U) (z ∈ V) Hzpair).
We prove the intermediate
claim HzV:
z ∈ V.
An
exact proof term for the current goal is
(andER (z ∈ U) (z ∈ V) Hzpair).
We prove the intermediate
claim HzNotC:
z ∉ C.
An
exact proof term for the current goal is
(setminusE2 X C z HzU).
We prove the intermediate
claim HzC:
z ∈ C.
An exact proof term for the current goal is (HVsubC z HzV).
Apply FalseE to the current goal.
An exact proof term for the current goal is (HzNotC HzC).
We use U to witness the existential quantifier.
We use V to witness the existential quantifier.
Apply and5I to the current goal.
An exact proof term for the current goal is HUTx.
An exact proof term for the current goal is HVTx.
An exact proof term for the current goal is HxU.
An exact proof term for the current goal is HFsubV.
An exact proof term for the current goal is HUdisjV.
∎