The coalgebra carried by a commutative Frobenius algebra #
For a finite-free commutative Frobenius algebra, the inverse metric tensor
C = F.casimir defines a comultiplication by
Δ(a) = (a ⊗ 1) C.
This file proves that multiplication and comultiplication satisfy the
Frobenius relation and that Δ, together with the original Frobenius
functional, gives a cocommutative coalgebra. The construction is explicit in
the Frobenius object F; it is deliberately not installed as a global
typeclass instance, because the same algebra may carry several Frobenius
functionals.
Reading the Lean notation #
- Multiplication on
A ⊗[R] Ais componentwise:(a ⊗ b) * (c ⊗ d) = ac ⊗ bd. LinearMap.mulRight R Cis the linear mapt ↦ t * C.f.comp gmeans first applyg, then applyf.- The tensor associator appears explicitly in mathlib's coassociativity law.
Multiplying the first tensor leg by a moves the input of the associated
endomorphism from x to a * x.
Multiplying the second tensor leg by a multiplies the output of the
associated endomorphism by a.
The Casimir tensor is balanced over the algebra:
(a ⊗ 1) * C = (1 ⊗ a) * C.
This tensor identity is the main computational form of invariance of the Frobenius pairing.
The canonical Frobenius comultiplication Δ(a) = (a ⊗ 1) * C.
Equations
Instances For
Evaluation formula using the first leg of the Casimir tensor.
Equivalent evaluation formula using the second leg.
The Casimir tensor is the comultiplication of the algebra unit.
Contracting Δ(a) with the metric gives multiplication by a.
Left-linearity of comultiplication, one half of the Frobenius relation.
Right-linearity of comultiplication, the other half of the Frobenius relation.
Swapping the tensor factors in a product swaps each factor.
The canonical Frobenius comultiplication is cocommutative.
Applying the left tensor unitor after contracting the first leg with the
counit is the same as contracting the tensor against 1 via the metric.
The first counit law, written in mathlib's explicit-unitor convention.
Applying the right tensor unitor after contracting the second leg with the counit can be computed by first swapping the tensor.
The second counit law.
Multiplying a fixed element into the first tensor leg commutes with multiplying the two tensor legs together.
Multiplication after comultiplication is multiplication by the handle
element: μ(Δ(a)) = a * E.
Coassociativity #
To compare tensors with three factors, we use the same perfect pairing to turn the first tensor factor into the input of a linear map. This avoids a basis calculation: the resulting map is an equivalence, so equality after contraction proves equality of the original tensors.
Contract the first factor of A ⊗ W, for an arbitrary target module W.
The earlier tensorEndEquiv is the special case W = A.
Equations
- F.tensorModuleHomEquiv W = (TensorProduct.congr F.pairing.toDual (LinearEquiv.refl R W)).trans (dualTensorHomEquiv R A W)
Instances For
Evaluation of tensorModuleHomEquiv on a pure tensor.
Contracting the first leg after reassociating (A ⊗ A) ⊗ A contracts the
first leg of the inner two-tensor.
After applying Δ to the first tensor factor, contraction turns it into
multiplication by the contracted vector.
After applying Δ to the second tensor factor, contraction may be moved
through Δ by linearity.
Pointwise coassociativity of the canonical comultiplication.
Coassociativity as an equality of linear maps, in exactly the form required
by mathlib's Coalgebra structure.
Interoperability with mathlib's coalgebra API #
The comultiplication and original Frobenius functional, bundled as
mathlib's preliminary CoalgebraStruct.
Instances For
A finite-free commutative Frobenius algebra canonically determines a coalgebra.
This is an explicit definition rather than a global instance. To use mathlib's coalgebra notation and lemmas locally, write
letI : Coalgebra R A := F.toCoalgebra
Equations
Instances For
The coalgebra obtained from a commutative Frobenius algebra is cocommutative.
This declaration is designed for local use immediately after installing
F.toCoalgebra.