Let x be given.
Let F be given.
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
(setminusI X F x HxX HxnotF).
Let U1 be given.
Set Y to be the term
F ∩ K.
An exact proof term for the current goal is HU1.
We prove the intermediate
claim HU1b:
U1 ∈ Tx ∧ x ∈ U1.
We prove the intermediate
claim HU1Tx:
U1 ∈ Tx.
An
exact proof term for the current goal is
(andEL (U1 ∈ Tx) (x ∈ U1) HU1b).
We prove the intermediate
claim HxU1:
x ∈ U1.
An
exact proof term for the current goal is
(andER (U1 ∈ Tx) (x ∈ U1) HU1b).
We prove the intermediate
claim HU1subX:
U1 ⊆ X.
We prove the intermediate
claim HKsubX:
K ⊆ X.
We prove the intermediate
claim HYsubK:
Y ⊆ K.
Let z be given.
An
exact proof term for the current goal is
(binintersectE2 F K z HzY).
We prove the intermediate
claim HYsubX:
Y ⊆ X.
Let z be given.
Apply HKsubX to the current goal.
An exact proof term for the current goal is (HYsubK z HzY).
We prove the intermediate
claim HKclosed:
closed_in X Tx K.
We prove the intermediate
claim HYclosedK:
closed_in K Tk Y.
We use F to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is HFcl.
rewrite the current goal using Hsubtrans (from right to left).
An exact proof term for the current goal is HcompY_sub.
We prove the intermediate
claim HxnotY:
x ∉ Y.
We prove the intermediate
claim HxF:
x ∈ F.
An
exact proof term for the current goal is
(binintersectE1 F K x HxY).
Apply HxnotF to the current goal.
An exact proof term for the current goal is HxF.
Let U3 be given.
Apply HU3 to the current goal.
Let V3 be given.
Set U to be the term
U3 ∩ U1.
Set V to be the term
V3 ∪ (X ∖ K).
We prove the intermediate
claim H1234:
((U3 ∈ Tx ∧ V3 ∈ Tx) ∧ x ∈ U3) ∧ Y ⊆ V3.
An
exact proof term for the current goal is
(andEL (((U3 ∈ Tx ∧ V3 ∈ Tx) ∧ x ∈ U3) ∧ Y ⊆ V3) (U3 ∩ V3 = Empty) HUV3).
We prove the intermediate
claim Hdisj:
U3 ∩ V3 = Empty.
An
exact proof term for the current goal is
(andER (((U3 ∈ Tx ∧ V3 ∈ Tx) ∧ x ∈ U3) ∧ Y ⊆ V3) (U3 ∩ V3 = Empty) HUV3).
We prove the intermediate
claim H123:
(U3 ∈ Tx ∧ V3 ∈ Tx) ∧ x ∈ U3.
An
exact proof term for the current goal is
(andEL ((U3 ∈ Tx ∧ V3 ∈ Tx) ∧ x ∈ U3) (Y ⊆ V3) H1234).
We prove the intermediate
claim HYsubV3:
Y ⊆ V3.
An
exact proof term for the current goal is
(andER ((U3 ∈ Tx ∧ V3 ∈ Tx) ∧ x ∈ U3) (Y ⊆ V3) H1234).
We prove the intermediate
claim H12:
U3 ∈ Tx ∧ V3 ∈ Tx.
An
exact proof term for the current goal is
(andEL (U3 ∈ Tx ∧ V3 ∈ Tx) (x ∈ U3) H123).
We prove the intermediate
claim HxU3:
x ∈ U3.
An
exact proof term for the current goal is
(andER (U3 ∈ Tx ∧ V3 ∈ Tx) (x ∈ U3) H123).
We prove the intermediate
claim HU3Tx:
U3 ∈ Tx.
An
exact proof term for the current goal is
(andEL (U3 ∈ Tx) (V3 ∈ Tx) H12).
We prove the intermediate
claim HV3Tx:
V3 ∈ Tx.
An
exact proof term for the current goal is
(andER (U3 ∈ Tx) (V3 ∈ Tx) H12).
We prove the intermediate
claim HXKopen:
open_in X Tx (X ∖ K).
We prove the intermediate
claim HXKTx:
(X ∖ K) ∈ Tx.
An
exact proof term for the current goal is
(open_in_elem X Tx (X ∖ K) HXKopen).
We prove the intermediate
claim HUinTx:
U ∈ Tx.
We prove the intermediate
claim HVinTx:
V ∈ Tx.
We use U to witness the existential quantifier.
We use V to witness the existential quantifier.
Apply andI to the current goal.
Apply andI to the current goal.
Apply andI to the current goal.
Apply andI to the current goal.
An exact proof term for the current goal is HUinTx.
An exact proof term for the current goal is HVinTx.
An
exact proof term for the current goal is
(binintersectI U3 U1 x HxU3 HxU1).
We prove the intermediate
claim HFsubX:
F ⊆ X.
Let y be given.
Apply (xm (y ∈ K)) to the current goal.
We prove the intermediate
claim HyY:
y ∈ Y.
An
exact proof term for the current goal is
(binintersectI F K y HyF HyK).
We prove the intermediate
claim HyV3:
y ∈ V3.
An exact proof term for the current goal is (HYsubV3 y HyY).
An
exact proof term for the current goal is
(binunionI1 V3 (X ∖ K) y HyV3).
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 HyXK:
y ∈ X ∖ K.
An
exact proof term for the current goal is
(setminusI X K y HyX HnotK).
An
exact proof term for the current goal is
(binunionI2 V3 (X ∖ K) y HyXK).
Let z be given.
We prove the intermediate
claim HzU:
z ∈ U.
An
exact proof term for the current goal is
(binintersectE1 U V z Hz).
We prove the intermediate
claim HzV:
z ∈ V.
An
exact proof term for the current goal is
(binintersectE2 U V z Hz).
We prove the intermediate
claim HzU3:
z ∈ U3.
An
exact proof term for the current goal is
(binintersectE1 U3 U1 z HzU).
We prove the intermediate
claim HzU1:
z ∈ U1.
An
exact proof term for the current goal is
(binintersectE2 U3 U1 z HzU).
Apply (binunionE V3 (X ∖ K) z HzV) to the current goal.
We prove the intermediate
claim HzUV:
z ∈ U3 ∩ V3.
An
exact proof term for the current goal is
(binintersectI U3 V3 z HzU3 HzV3).
rewrite the current goal using Hdisj (from right to left).
An exact proof term for the current goal is HzUV.
We prove the intermediate
claim HznotK:
z ∉ K.
An
exact proof term for the current goal is
(setminusE2 X K z HzXK).
We prove the intermediate
claim HU1subK:
U1 ⊆ K.
We prove the intermediate
claim HzK:
z ∈ K.
An exact proof term for the current goal is (HU1subK z HzU1).
Apply FalseE to the current goal.
An exact proof term for the current goal is (HznotK HzK).
Let z be given.
An
exact proof term for the current goal is
(EmptyE z Hz (z ∈ U ∩ V)).
∎