Theorem 1.20 (second part):
ProvedHatcher.ker_vanKampenHom_leThroughout, is a topological space with basepoint , and is a family of subsets of , each containing , with the subspace topology. The standing hypotheses of Lemma 1.15 are: each is open and path-connected, , and each intersection is path-connected.
Theorem 1.20, second part. Assume in addition that each triple intersection is path-connected. Then the kernel of is contained in the normal subgroup generated by the elements :
Together with the easy inclusion this is Hatcher's statement that "the kernel of is the normal subgroup ". It is the hard half of van Kampen's theorem, proved by subdividing a homotopy between two factorizations of a loop.
Formalization Note The hypotheses are stated exactly as in Hatcher: openness and path-connectedness of the , the covering condition, and path-connectedness of pairwise and triple intersections (the pairwise condition is listed separately even though it follows from the triple one).
import Definitions.Def_Hatcher_VanKampen import Mathlib open Hatcher
namespace Hatcher
theorem ker_vanKampenHom_le {X : Type*} [TopologicalSpace X] {ι : Type*}
(A : ι → Set X) (x₀ : X) (hx₀ : ∀ α, x₀ ∈ A α)
(hopen : ∀ α, IsOpen (A α)) (hpc : ∀ α, IsPathConnected (A α))
(hcover : (⋃ α, A α) = Set.univ) (hinter : ∀ α β, IsPathConnected (A α ∩ A β))
(htriple : ∀ α β γ, IsPathConnected (A α ∩ A β ∩ A γ)) :
(vanKampenHom A x₀ hx₀).ker ≤ vanKampenNormal A x₀ hx₀ := by sorry
end HatcherRead-back
What the Lean code literally says, in plain math · claude-fable-5-1
Declaration Hatcher.ker_vanKampenHom_le. Let be a topological space (an arbitrary type in an arbitrary universe, equipped with a topology; no separation, compactness, or other axioms are assumed) and let be an arbitrary index type (possibly empty, possibly infinite, no decidable equality assumed). The following data and hypotheses are given:
- a family of subsets indexed by ;
- a point ;
- : for every , ;
- : for every , is open in ;
- : for every , is path-connected, where "a set is path-connected" means (Mathlib's
IsPathConnected): there exists a point such that for every there is a continuous path with , and for all (in particular is nonempty); - : (equality with the whole space, as sets);
- : for every pair (including ), the set is path-connected in the above sense;
- : for every triple (coincidences allowed), the set is path-connected in the above sense.
Objects built from these data (all custom definitions, unfolded). For each , the space is regarded as a topological space with the subspace topology, and its basepoint is viewed as an element of (via ). Likewise carries the subspace topology with basepoint viewed as an element of . For a space with point , denotes Mathlib's FundamentalGroup Y y: its elements are equivalence classes of continuous loops based at , two loops being identified iff they are homotopic through loops based at (homotopy relative to the endpoints); the group identity is the class of the constant loop, the inverse is path reversal, and the product is defined so that is the class of " traversed first, then " (i.e. in concatenation order). Given a continuous map with , Mathlib's FundamentalGroup.mapOfEq is the group homomorphism sending the class of a loop to the class of (with the basepoint identification ; here every such identification is a definitional equality). With this:
- is the homomorphism induced by the subspace inclusion (composition of loops with the inclusion).
- is induced by the inclusion , and is induced by the inclusion .
- is Mathlib's
Monoid.CoprodIof the family of groups : the quotient of the free monoid on the alphabet by the congruence generated by and ; since every factor is a group this is a group (the free product of the groups ). For each ,Monoid.CoprodI.ofis the canonical homomorphism sending to the class of the one-letter word . Multiplication in is concatenation of words (in the written order). - is
Monoid.CoprodI.liftof the family : the unique group homomorphism with for all and all ; concretely, a word is sent to the product computed in (with that group's multiplication convention). - is the set
i.e. for every ordered pair (including ) and every based-homotopy class of loops in at , the element of the free product obtained as (the image of in , placed in the -th factor) times (the inverse of the image of in , placed in the -th factor).
- is Mathlib's
Subgroup.normalClosureof : the subgroup of generated by the set of all conjugates , equivalently the intersection of all subgroups of containing every such conjugate; this is the smallest normal subgroup containing . - is Mathlib's
MonoidHom.ker: the subgroup , where is the class of the constant loop at .
Conclusion. Under all of the above hypotheses,
where is the order on subgroups given by inclusion of underlying sets: every with lies in . Equivalently: every element of the free product that maps to the trivial class in belongs to the normal closure of . The statement asserts only this one inclusion (); it does not assert the reverse inclusion , nor equality, nor surjectivity of , nor any isomorphism.
Edge cases made explicit. (i) If is empty, then , so forces , which contradicts the existence of ; hence in that case the hypotheses are jointly unsatisfiable and the statement holds vacuously. (ii) The hypotheses and range over all pairs and triples of indices with repetitions allowed, so they include the statements " is path-connected" and " is path-connected". (iii) The relator set includes the pairs , for which the relator is with the image of in ; it also includes both orderings and of each unordered pair. (iv) Nothing is assumed about the cardinality of beyond what and force; itself is not assumed path-connected, Hausdorff, or otherwise restricted. (v) The hypotheses and are assumptions of the theorem; they do not appear in the definitions of , , or , which depend only on , , and . (vi) The proof of this declaration is omitted (the body is sorry); the statement above is what is asserted, not what is proved.
Confirmed by the mission captain (proposal self-audit).