Let x be given.
Apply (UnionE Fam x Hx) to the current goal.
Let W be given.
Assume HxWconj.
We prove the intermediate
claim HxW:
x ∈ W.
An
exact proof term for the current goal is
(andEL (x ∈ W) (W ∈ Fam) HxWconj).
We prove the intermediate
claim HWFam:
W ∈ Fam.
An
exact proof term for the current goal is
(andER (x ∈ W) (W ∈ Fam) HxWconj).
We prove the intermediate
claim HWpred:
W ∈ Tx ∧ W ⊆ S.
An
exact proof term for the current goal is
(SepE2 (𝒫 X) (λW0 : set ⇒ W0 ∈ Tx ∧ W0 ⊆ S) W HWFam).
We prove the intermediate
claim HWsubS:
W ⊆ S.
An
exact proof term for the current goal is
(andER (W ∈ Tx) (W ⊆ S) HWpred).
An exact proof term for the current goal is (HWsubS x HxW).
Let x be given.
We prove the intermediate
claim HxX:
x ∈ X.
An
exact proof term for the current goal is
(SepE1 X (λu : set ⇒ apply_fun f u ∈ V) x Hx).
We prove the intermediate
claim HxUnion:
x ∈ ⋃ UFam.
rewrite the current goal using HUnionEq (from left to right).
An exact proof term for the current goal is HxX.
Apply (UnionE UFam x HxUnion) to the current goal.
Let U be given.
Assume HxUconj.
We prove the intermediate
claim HxU:
x ∈ U.
An
exact proof term for the current goal is
(andEL (x ∈ U) (U ∈ UFam) HxUconj).
We prove the intermediate
claim HUUF:
U ∈ UFam.
An
exact proof term for the current goal is
(andER (x ∈ U) (U ∈ UFam) HxUconj).
We prove the intermediate
claim HUTx:
U ∈ Tx.
An exact proof term for the current goal is (HUFsub U HUUF).
We prove the intermediate
claim HUSubX:
U ⊆ X.
An exact proof term for the current goal is (HcontU U HUUF).
We prove the intermediate
claim HexW0:
∃W0 ∈ Tx, preimage_of U f V = W0 ∩ U.
An
exact proof term for the current goal is
(SepE2 (𝒫 U) (λU0 : set ⇒ ∃W0 ∈ Tx, U0 = W0 ∩ U) (preimage_of U f V) HpreU).
Apply HexW0 to the current goal.
Let W0 be given.
Assume HW0pair.
We prove the intermediate
claim HW0Tx:
W0 ∈ Tx.
An
exact proof term for the current goal is
(andEL (W0 ∈ Tx) (preimage_of U f V = W0 ∩ U) HW0pair).
We prove the intermediate
claim HeqPreU:
preimage_of U f V = W0 ∩ U.
An
exact proof term for the current goal is
(andER (W0 ∈ Tx) (preimage_of U f V = W0 ∩ U) HW0pair).
Set W to be the term
W0 ∩ U.
We prove the intermediate
claim HfxV:
apply_fun f x ∈ V.
An
exact proof term for the current goal is
(SepE2 X (λu : set ⇒ apply_fun f u ∈ V) x Hx).
We prove the intermediate
claim HxPreU:
x ∈ preimage_of U f V.
Apply (SepI U (λu : set ⇒ apply_fun f u ∈ V) x HxU) to the current goal.
An exact proof term for the current goal is HfxV.
We prove the intermediate
claim HxW:
x ∈ W.
rewrite the current goal using HeqPreU (from right to left).
An exact proof term for the current goal is HxPreU.
We prove the intermediate
claim HWsubS:
W ⊆ S.
Let z be given.
We prove the intermediate
claim HzU:
z ∈ U.
An
exact proof term for the current goal is
(binintersectE2 W0 U z Hz).
We prove the intermediate
claim HzX:
z ∈ X.
An exact proof term for the current goal is (HUSubX z HzU).
We prove the intermediate
claim HzPreU:
z ∈ preimage_of U f V.
rewrite the current goal using HeqPreU (from left to right).
An exact proof term for the current goal is Hz.
We prove the intermediate
claim HfzV:
apply_fun f z ∈ V.
An
exact proof term for the current goal is
(SepE2 U (λu : set ⇒ apply_fun f u ∈ V) z HzPreU).
An
exact proof term for the current goal is
(SepI X (λu : set ⇒ apply_fun f u ∈ V) z HzX HfzV).
We prove the intermediate
claim HWpow:
W ∈ 𝒫 X.
Apply PowerI to the current goal.
Let z be given.
We prove the intermediate
claim HzU:
z ∈ U.
An
exact proof term for the current goal is
(binintersectE2 W0 U z Hz).
An exact proof term for the current goal is (HUSubX z HzU).
We prove the intermediate
claim HWFam:
W ∈ Fam.
An
exact proof term for the current goal is
(UnionI Fam x W HxW HWFam).