The free commutative magma #
FreeCommMagma α is the free magma on α modulo the congruence generated by commutativity: the
nonassociative commutative products of generators, Marcolli, Chomsky and Berwick's binary
unordered rooted trees with leaves in α. lift is the universal property, by which maps from
α into a commutative magma correspond to magma homomorphisms out of FreeCommMagma α.
[UPSTREAM] candidate for Mathlib/Algebra/Free.lean.
Main definitions #
FreeCommMagma: the free commutative magma on a type.FreeCommMagma.of,FreeCommMagma.ofMagma: the generators, and the projection from the free magma.FreeCommMagma.lift: the universal property.
Main results #
FreeCommMagma.hom_ext: magma homomorphisms agreeing on the generators are equal.FreeCommMagma.of_injective: the generators are distinct.
References #
The congruence on the free magma generated by commutativity.
Equations
- FreeMagma.commCon α = conGen fun (x y : FreeMagma α) => ∃ (a : FreeMagma α) (b : FreeMagma α), x = a * b ∧ y = b * a
Instances For
The free commutative magma on α, the free magma modulo commutativity.
Equations
- FreeCommMagma α = (FreeMagma.commCon α).Quotient
Instances For
Equations
- FreeCommMagma.instMul = { mul := FreeCommMagma.instMul._aux_1 }
Equations
- FreeCommMagma.instCommMagma = { toMul := FreeCommMagma.instMul, mul_comm := ⋯ }
The projection from the free magma, forgetting the bracketing order.
Equations
- FreeCommMagma.ofMagma = { toFun := fun (x : FreeMagma α) => ↑x, map_mul' := ⋯ }
Instances For
Equations
- FreeCommMagma.instInhabited = { default := FreeCommMagma.of default }
Magma homomorphisms out of a free commutative magma agreeing on the generators are equal.
The universal property of the free commutative magma: maps from α into a commutative magma
correspond to magma homomorphisms out of FreeCommMagma α.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The functorial action on generators.