Coalgebras #
In this file we define Coalgebra
, and provide instances for:
- Commutative semirings:
CommSemiring.toCoalgebra
- Binary products:
Prod.instCoalgebra
- Finitely supported functions:
Finsupp.instCoalgebra
References #
Data fields for Coalgebra
, to allow API to be constructed before proving Coalgebra.coassoc
.
See Coalgebra
for documentation.
- comul : A →ₗ[R] TensorProduct R A A
The comultiplication of the coalgebra
The counit of the coalgebra
Instances
A coalgebra over a commutative (semi)ring R
is an R
-module equipped with a coassociative
comultiplication Δ
and a counit ε
obeying the left and right counitality laws.
- comul : A →ₗ[R] TensorProduct R A A
- coassoc : ↑(TensorProduct.assoc R A A A) ∘ₗ LinearMap.rTensor A Coalgebra.comul ∘ₗ Coalgebra.comul = LinearMap.lTensor A Coalgebra.comul ∘ₗ Coalgebra.comul
The comultiplication is coassociative
- rTensor_counit_comp_comul : LinearMap.rTensor A Coalgebra.counit ∘ₗ Coalgebra.comul = (TensorProduct.mk R R A) 1
The counit satisfies the left counitality law
- lTensor_counit_comp_comul : LinearMap.lTensor A Coalgebra.counit ∘ₗ Coalgebra.comul = (TensorProduct.mk R A R).flip 1
The counit satisfies the right counitality law
Instances
The comultiplication is coassociative
The counit satisfies the left counitality law
The counit satisfies the right counitality law
Every commutative (semi)ring is a coalgebra over itself, with Δ r = 1 ⊗ₜ r
.
Equations
- CommSemiring.toCoalgebra R = Coalgebra.mk ⋯ ⋯ ⋯
Equations
- One or more equations did not get rendered due to their size.
Equations
- Prod.instCoalgebra R A B = Coalgebra.mk ⋯ ⋯ ⋯
Equations
- One or more equations did not get rendered due to their size.
The R
-module whose elements are functions ι → A
which are zero on all but finitely many
elements of ι
has a coalgebra structure. The coproduct Δ
is given by Δ(fᵢ a) = fᵢ a₁ ⊗ fᵢ a₂
where Δ(a) = a₁ ⊗ a₂
and the counit ε
by ε(fᵢ a) = ε(a)
, where fᵢ a
is the function sending
i
to a
and all other elements of ι
to zero.
Equations
- Finsupp.instCoalgebra R ι A = Coalgebra.mk ⋯ ⋯ ⋯
The coalgebra instance will be defined in #11975, in
Mathlib.RingTheory.Coalgebra.TensorProduct
.
Equations
- One or more equations did not get rendered due to their size.