Fundamental groupoid of a space #
Given a topological space X
, we can define the fundamental groupoid of X
to be the category with
objects being points of X
, and morphisms x ⟶ y
being paths from x
to y
, quotiented by
homotopy equivalence. With this, the fundamental group of X
based at x
is just the automorphism
group of x
.
For any path p
from x₀
to x₁
, we have a homotopy from the constant path based at x₀
to
p.trans p.symm
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
For any path p
from x₀
to x₁
, we have a homotopy from the constant path based at x₁
to
p.symm.trans p
.
Equations
- Path.Homotopy.reflSymmTrans p = (Path.Homotopy.reflTransSymm p.symm).cast ⋯ ⋯
Instances For
Auxiliary function for trans_refl_reparam
.
Equations
- Path.Homotopy.transReflReparamAux t = if ↑t ≤ 1 / 2 then 2 * ↑t else 1
Instances For
For any path p
from x₀
to x₁
, we have a homotopy from p.trans (Path.refl x₁)
to p
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
For any path p
from x₀
to x₁
, we have a homotopy from (Path.refl x₀).trans p
to p
.
Equations
- Path.Homotopy.reflTrans p = (Path.Homotopy.transRefl p.symm).symm₂.cast ⋯ ⋯
Instances For
For paths p q r
, we have a homotopy from (p.trans q).trans r
to p.trans (q.trans r)
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The fundamental groupoid of a space X
is defined to be a wrapper around X
, and we
subsequently put a CategoryTheory.Groupoid
structure on it.
- as : X
View a term of
FundamentalGroupoid X
as a term ofX
.
Instances For
The equivalence between X
and the underlying type of its fundamental groupoid.
This is useful for transferring constructions (instances, etc.)
from X
to πₓ X
.
Equations
- FundamentalGroupoid.equiv X = { toFun := fun (x : FundamentalGroupoid X) => x.as, invFun := fun (x : X) => { as := x }, left_inv := ⋯, right_inv := ⋯ }
Instances For
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- FundamentalGroupoid.instInhabited = { default := { as := default } }
Equations
- FundamentalGroupoid.instGroupoid = CategoryTheory.Groupoid.mk (fun {x y : FundamentalGroupoid X} (p : x ⟶ y) => Quotient.lift (fun (l : Path x.as y.as) => ⟦l.symm⟧) ⋯ p) ⋯ ⋯
The functor sending a topological space X
to its fundamental groupoid.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The functor sending a topological space X
to its fundamental groupoid.
Equations
- FundamentalGroupoid.termπ = Lean.ParserDescr.node `FundamentalGroupoid.termπ 1024 (Lean.ParserDescr.symbol "π")
Instances For
The fundamental groupoid of a topological space.
Equations
- FundamentalGroupoid.termπₓ = Lean.ParserDescr.node `FundamentalGroupoid.termπₓ 1024 (Lean.ParserDescr.symbol "πₓ")
Instances For
The functor between fundamental groupoids induced by a continuous map.
Equations
- FundamentalGroupoid.termπₘ = Lean.ParserDescr.node `FundamentalGroupoid.termπₘ 1024 (Lean.ParserDescr.symbol "πₘ")
Instances For
Help the typechecker by converting a point in a groupoid back to a point in the underlying topological space.
Equations
- FundamentalGroupoid.toTop x = x.as
Instances For
Help the typechecker by converting a point in a topological space to a point in the fundamental groupoid of that space.
Equations
- FundamentalGroupoid.fromTop x = { as := x }
Instances For
Help the typechecker by converting an arrow in the fundamental groupoid of
a topological space back to a path in that space (i.e., Path.Homotopic.Quotient
).
Equations
Instances For
Help the typechecker by converting a path in a topological space to an arrow in the fundamental groupoid of that space.