Apply Hh to the current goal.
Let h be given.
Apply Hhex to the current goal.
Let hinv be given.
We prove the intermediate
claim Hhcont:
continuous_map I Ti I01 T01 h.
We prove the intermediate
claim Hhinvcont:
continuous_map I01 T01 I Ti hinv.
We prove the intermediate
claim Hhinv_after_h:
∀t : set, t ∈ I → apply_fun hinv (apply_fun h t) = t.
Apply Hext01 to the current goal.
Let g01 be given.
We prove the intermediate
claim Hg01cont:
continuous_map X Tx I01 T01 g01.
We use g to witness the existential quantifier.
Apply andI to the current goal.
An
exact proof term for the current goal is
(composition_continuous X Tx I01 T01 I Ti g01 hinv Hg01cont Hhinvcont).
Let x be given.
We prove the intermediate
claim HAsubX:
A ⊆ X.
We prove the intermediate
claim HxX:
x ∈ X.
An exact proof term for the current goal is (HAsubX x HxA).
rewrite the current goal using
(compose_fun_apply X g01 hinv x HxX) (from left to right).
Use reflexivity.
rewrite the current goal using Hcompg (from left to right).
rewrite the current goal using (Hg01eq x HxA) (from left to right).
rewrite the current goal using Hcompf01 (from left to right).
We prove the intermediate
claim Hfunf:
function_on f A I.
We prove the intermediate
claim HfxI:
apply_fun f x ∈ I.
An exact proof term for the current goal is (Hfunf x HxA).
rewrite the current goal using
(Hhinv_after_h (apply_fun f x) HfxI) (from left to right).
Use reflexivity.