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 representation of an element a of a coalgebra A is a finite sum of pure tensors ∑ xᵢ ⊗ yᵢ
that is equal to comul a.
- ι : Type u_1
the indexing type of a representation of
comul a - index : Finset self.ι
the finite indexing set of a representation of
comul a - left : self.ι → A
the first coordinate of a representation of
comul a - right : self.ι → A
the second coordinate of a representation of
comul a comul ais equal to a finite sum of some pure tensors
Instances For
comul a is equal to a finite sum of some pure tensors
An arbitrarily chosen representation.
Equations
- Coalgebra.Repr.arbitrary R a = Coalgebra.Repr.mk ⋯.choose Prod.fst Prod.snd ⋯
Instances For
An arbitrarily chosen representation.
Equations
- Coalgebra.termℛ = Lean.ParserDescr.node `Coalgebra.termℛ 1024 (Lean.ParserDescr.symbol "ℛ")
Instances For
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 ⋯ ⋯ ⋯
See Mathlib.RingTheory.Coalgebra.TensorProduct for the Coalgebra instance.
Equations
- One or more equations did not get rendered due to their size.