We prove the intermediate
claim HAsubL:
A ⊆ L.
An
exact proof term for the current goal is
(PowerE L A HA).
We prove the intermediate
claim HBsubL:
B ⊆ L.
An
exact proof term for the current goal is
(PowerE L B HB).
We prove the intermediate
claim HpL:
p ∈ L.
An exact proof term for the current goal is (HAsubL p HpA).
We prove the intermediate
claim HpLB:
p ∈ (L ∖ B).
An
exact proof term for the current goal is
(setminusI L B p HpL HpNotB).
We prove the intermediate
claim HexA:
∃U1 V1 : set, UV A = (U1,V1) ∧ (U1 ∈ Tx ∧ V1 ∈ Tx ∧ A ⊆ U1 ∧ (L ∖ A) ⊆ V1 ∧ U1 ∩ V1 = Empty).
An exact proof term for the current goal is (HUV_ok A HA).
We prove the intermediate
claim HexB:
∃U2 V2 : set, UV B = (U2,V2) ∧ (U2 ∈ Tx ∧ V2 ∈ Tx ∧ B ⊆ U2 ∧ (L ∖ B) ⊆ V2 ∧ U2 ∩ V2 = Empty).
An exact proof term for the current goal is (HUV_ok B HB).
Apply HexA to the current goal.
Let U1 be given.
Assume HexV1.
Apply HexV1 to the current goal.
Let V1 be given.
Assume HpackA.
Apply HexB to the current goal.
Let U2 be given.
Assume HexV2.
Apply HexV2 to the current goal.
Let V2 be given.
Assume HpackB.
We prove the intermediate
claim HUV_A:
UV A = (U1,V1).
An
exact proof term for the current goal is
(andEL (UV A = (U1,V1)) (U1 ∈ Tx ∧ V1 ∈ Tx ∧ A ⊆ U1 ∧ (L ∖ A) ⊆ V1 ∧ U1 ∩ V1 = Empty) HpackA).
We prove the intermediate
claim HUV_B:
UV B = (U2,V2).
An
exact proof term for the current goal is
(andEL (UV B = (U2,V2)) (U2 ∈ Tx ∧ V2 ∈ Tx ∧ B ⊆ U2 ∧ (L ∖ B) ⊆ V2 ∧ U2 ∩ V2 = Empty) HpackB).
We prove the intermediate
claim HpropsA:
U1 ∈ Tx ∧ V1 ∈ Tx ∧ A ⊆ U1 ∧ (L ∖ A) ⊆ V1 ∧ U1 ∩ V1 = Empty.
An
exact proof term for the current goal is
(andER (UV A = (U1,V1)) (U1 ∈ Tx ∧ V1 ∈ Tx ∧ A ⊆ U1 ∧ (L ∖ A) ⊆ V1 ∧ U1 ∩ V1 = Empty) HpackA).
We prove the intermediate
claim HpropsB:
U2 ∈ Tx ∧ V2 ∈ Tx ∧ B ⊆ U2 ∧ (L ∖ B) ⊆ V2 ∧ U2 ∩ V2 = Empty.
An
exact proof term for the current goal is
(andER (UV B = (U2,V2)) (U2 ∈ Tx ∧ V2 ∈ Tx ∧ B ⊆ U2 ∧ (L ∖ B) ⊆ V2 ∧ U2 ∩ V2 = Empty) HpackB).
We prove the intermediate
claim HleftA:
((U1 ∈ Tx ∧ V1 ∈ Tx) ∧ A ⊆ U1) ∧ (L ∖ A) ⊆ V1.
An
exact proof term for the current goal is
(andEL (((U1 ∈ Tx ∧ V1 ∈ Tx) ∧ A ⊆ U1) ∧ (L ∖ A) ⊆ V1) (U1 ∩ V1 = Empty) HpropsA).
We prove the intermediate
claim HUV1pair:
(U1 ∈ Tx ∧ V1 ∈ Tx) ∧ A ⊆ U1.
An
exact proof term for the current goal is
(andEL ((U1 ∈ Tx ∧ V1 ∈ Tx) ∧ A ⊆ U1) ((L ∖ A) ⊆ V1) HleftA).
We prove the intermediate
claim HU1V1:
U1 ∈ Tx ∧ V1 ∈ Tx.
An
exact proof term for the current goal is
(andEL (U1 ∈ Tx ∧ V1 ∈ Tx) (A ⊆ U1) HUV1pair).
We prove the intermediate
claim HU1:
U1 ∈ Tx.
An
exact proof term for the current goal is
(andEL (U1 ∈ Tx) (V1 ∈ Tx) HU1V1).
We prove the intermediate
claim HAsubU1:
A ⊆ U1.
An
exact proof term for the current goal is
(andER (U1 ∈ Tx ∧ V1 ∈ Tx) (A ⊆ U1) HUV1pair).
We prove the intermediate
claim HleftB:
((U2 ∈ Tx ∧ V2 ∈ Tx) ∧ B ⊆ U2) ∧ (L ∖ B) ⊆ V2.
An
exact proof term for the current goal is
(andEL (((U2 ∈ Tx ∧ V2 ∈ Tx) ∧ B ⊆ U2) ∧ (L ∖ B) ⊆ V2) (U2 ∩ V2 = Empty) HpropsB).
We prove the intermediate
claim HUV2pair:
(U2 ∈ Tx ∧ V2 ∈ Tx) ∧ B ⊆ U2.
An
exact proof term for the current goal is
(andEL ((U2 ∈ Tx ∧ V2 ∈ Tx) ∧ B ⊆ U2) ((L ∖ B) ⊆ V2) HleftB).
We prove the intermediate
claim HU2V2:
U2 ∈ Tx ∧ V2 ∈ Tx.
An
exact proof term for the current goal is
(andEL (U2 ∈ Tx ∧ V2 ∈ Tx) (B ⊆ U2) HUV2pair).
We prove the intermediate
claim HV2:
V2 ∈ Tx.
An
exact proof term for the current goal is
(andER (U2 ∈ Tx) (V2 ∈ Tx) HU2V2).
We prove the intermediate
claim HLBsubV2:
(L ∖ B) ⊆ V2.
An
exact proof term for the current goal is
(andER ((U2 ∈ Tx ∧ V2 ∈ Tx) ∧ B ⊆ U2) ((L ∖ B) ⊆ V2) HleftB).
We prove the intermediate
claim HdisjB:
U2 ∩ V2 = Empty.
An
exact proof term for the current goal is
(andER (((U2 ∈ Tx ∧ V2 ∈ Tx) ∧ B ⊆ U2) ∧ (L ∖ B) ⊆ V2) (U2 ∩ V2 = Empty) HpropsB).
We prove the intermediate
claim HpU1:
p ∈ U1.
An exact proof term for the current goal is (HAsubU1 p HpA).
We prove the intermediate
claim HpV2:
p ∈ V2.
An exact proof term for the current goal is (HLBsubV2 p HpLB).
Set W to be the term
U1 ∩ V2.
We prove the intermediate
claim HWopen:
W ∈ Tx.
We prove the intermediate
claim HWne:
W ≠ Empty.
We prove the intermediate
claim HWmeet:
W ∩ D ≠ Empty.
We prove the intermediate
claim Hexd:
∃d : set, d ∈ W ∩ D.
Apply Hexd to the current goal.
Let d be given.
We prove the intermediate
claim HdW:
d ∈ W.
An
exact proof term for the current goal is
(binintersectE1 W D d HdWD).
We prove the intermediate
claim HdD:
d ∈ D.
An
exact proof term for the current goal is
(binintersectE2 W D d HdWD).
We prove the intermediate
claim HdefW:
W = U1 ∩ V2.
We prove the intermediate
claim HdWV:
d ∈ U1 ∩ V2.
rewrite the current goal using HdefW (from right to left).
An exact proof term for the current goal is HdW.
We prove the intermediate
claim HdU1:
d ∈ U1.
An
exact proof term for the current goal is
(binintersectE1 U1 V2 d HdWV).
We prove the intermediate
claim HdV2:
d ∈ V2.
An
exact proof term for the current goal is
(binintersectE2 U1 V2 d HdWV).
We prove the intermediate
claim HUofA:
Uof A = U1.
We prove the intermediate
claim HdefU:
Uof A = (UV A) 0.
rewrite the current goal using HdefU (from left to right).
rewrite the current goal using HUV_A (from left to right).
rewrite the current goal using
(tuple_pair U1 V1) (from right to left).
An
exact proof term for the current goal is
(pair_ap_0 U1 V1).
We prove the intermediate
claim HUofB:
Uof B = U2.
We prove the intermediate
claim HdefU:
Uof B = (UV B) 0.
rewrite the current goal using HdefU (from left to right).
rewrite the current goal using HUV_B (from left to right).
rewrite the current goal using
(tuple_pair U2 V2) (from right to left).
An
exact proof term for the current goal is
(pair_ap_0 U2 V2).
We prove the intermediate
claim HVofB:
Vof B = V2.
We prove the intermediate
claim HdefV:
Vof B = (UV B) 1.
rewrite the current goal using HdefV (from left to right).
rewrite the current goal using HUV_B (from left to right).
rewrite the current goal using
(tuple_pair U2 V2) (from right to left).
An
exact proof term for the current goal is
(pair_ap_1 U2 V2).
We prove the intermediate
claim HdthetaA:
d ∈ theta A.
We prove the intermediate
claim HdefTheta:
theta A = D ∩ (Uof A).
rewrite the current goal using HdefTheta (from left to right).
rewrite the current goal using HUofA (from left to right).
An
exact proof term for the current goal is
(binintersectI D U1 d HdD HdU1).
We prove the intermediate
claim HdNotUofB:
d ∉ Uof B.
We prove the intermediate
claim HdU2:
d ∈ U2.
rewrite the current goal using HUofB (from right to left).
An exact proof term for the current goal is HdUofB.
We prove the intermediate
claim HdUV0:
d ∈ U2 ∩ V2.
An
exact proof term for the current goal is
(binintersectI U2 V2 d HdU2 HdV2).
We prove the intermediate
claim HdEmpty:
d ∈ Empty.
rewrite the current goal using HdisjB (from right to left).
An exact proof term for the current goal is HdUV0.
An
exact proof term for the current goal is
(EmptyE d HdEmpty False).
We prove the intermediate
claim HdNotThetaB:
d ∉ theta B.
We prove the intermediate
claim HdefThetaB:
theta B = D ∩ (Uof B).
We prove the intermediate
claim HdthetaB0:
d ∈ D ∩ (Uof B).
rewrite the current goal using HdefThetaB (from right to left).
An exact proof term for the current goal is HdthetaB.
We prove the intermediate
claim HdUofB:
d ∈ Uof B.
An
exact proof term for the current goal is
(binintersectE2 D (Uof B) d HdthetaB0).
An exact proof term for the current goal is (HdNotUofB HdUofB).
We prove the intermediate
claim HdthetaB0:
d ∈ theta B.
rewrite the current goal using Heq (from right to left).
An exact proof term for the current goal is HdthetaA.
An
exact proof term for the current goal is
(FalseE (HdNotThetaB HdthetaB0) (p ∈ B)).