Defining a group given by generators and relations #
Given a subset rels of relations of the free group on a type α, this file constructs the group
given by generators x : α and relations r ∈ rels.
Main definitions #
PresentedGroup rels: the quotient group of the free group on a typeαby a subsetrelsof relations of the free group onα.of: The canonical map fromαto a presented group with generatorsα.toGroup f: the canonical group homomorphismPresentedGroup rels → G, given a functionf : α → Gfrom a typeαto a groupGwhich satisfies the relationsrels.
Tags #
generators, relations, group presentations
Given a set of relations, rels, over a type α, PresentedGroup constructs the group with
generators x : α and relations rels as a quotient of FreeGroup α.
Equations
- PresentedGroup rels = (FreeGroup α ⧸ Subgroup.normalClosure rels)
Instances For
Equations
- One or more equations did not get rendered due to their size.
The canonical map from the free group on α to a presented group with generators x : α,
where x is mapped to its equivalence class under the given set of relations rels
Equations
- PresentedGroup.mk rels = { toFun := QuotientGroup.mk, map_one' := ⋯, map_mul' := ⋯ }
Instances For
of is the canonical map from α to a presented group with generators x : α. The term x is
mapped to the equivalence class of the image of x in FreeGroup α.
Equations
- PresentedGroup.of x = (PresentedGroup.mk rels) (FreeGroup.of x)
Instances For
FreeGroup α →* FreeGroup β induces a homomorphism
PresentedGroup s →* PresentedGroup t if the image of s is contained in t.
Equations
- PresentedGroup.map f hst = QuotientGroup.map (Subgroup.normalClosure s) (Subgroup.normalClosure t) f ⋯
Instances For
The generators of a presented group generate the presented group. That is, the subgroup closure
of the set of generators equals ⊤.
The extension of a map f : α → G that satisfies the given relations to a group homomorphism
from PresentedGroup rels → G.
Equations
Instances For
Presented groups of isomorphic types are isomorphic.
Equations
- PresentedGroup.equivPresentedGroup rels e = QuotientGroup.congr (Subgroup.normalClosure rels) (Subgroup.normalClosure (⇑(FreeGroup.freeGroupCongr e) '' rels)) (FreeGroup.freeGroupCongr e) ⋯
Instances For
Equations
- PresentedGroup.instInhabited rels = { default := 1 }
The canonical inclusion map from the disjoint union of types to the free product of the relations
Equations
- PresentedGroup.toCoprod rels₁ rels₂ = Sum.elim (⇑Monoid.Coprod.inl ∘ PresentedGroup.of) (⇑Monoid.Coprod.inr ∘ PresentedGroup.of)
Instances For
The free product (Coproduct) of presentations is isomorphic to the presentation of the union over
the FreeGroup (α ⊕ β)
Equations
- One or more equations did not get rendered due to their size.