uconf.morphisms.canonical_twisting¶
Canonical operadic twisting morphisms.
This module provides the two fundamental twisting morphisms in operad theory:
canonical_projection(P): the projection π: B(P) → P, which projects a bar tree to the operad element at its root (if it is a single-vertex corolla) and zero otherwise.canonical_inclusion(C): the inclusion ι: C → Ω(C), which sends an element c ∈ C(n) to the single-vertex cobar tree decorated by c.
These induce adjunctions:
π gives B_π: P-alg → B(P)-coalg (the standard bar construction for algebras) and Ω_π: B(P)-coalg → P-alg (the standard cobar construction for coalgebras)
ι gives Ω_ι: C-coalg → Ω(C)-alg (the standard cobar construction for coalgebras) and B_ι: Ω(C)-alg → C-coalg (the standard twisted bar construction)
For specific operad/cooperad pairs:
canonical_projection(Ω(C)): π: B(Ω(C)) → Ω(C), for a cooperad Ccanonical_inclusion(B(P)): ι: B(P) → Ω(B(P)), for an operad P
Reference: Loday-Vallette “Algebraic Operads”, Section 6.5 and 11.3.
Functions
|
Return the canonical inclusion ι: C → Ω(C). |
|
Return the canonical projection π: B(P) → P. |
- uconf.morphisms.canonical_twisting.canonical_projection(operad)[source]¶
Return the canonical projection π: B(P) → P.
The projection sends a bar tree to:
The P-decoration of its root, if the tree is a single-vertex corolla (root vertex with all children being leaves).
Zero otherwise.
For multi-vertex trees, the result is zero because the projection only sees the cogenerators of the cofree cooperad B(P).
The sign convention is: π sends [p] (the corolla suspended by +1) to p, with no additional sign.
- Parameters:
operad (type[OperadComponent] | OperadFactory) – A connected dg-operad P.
- Returns:
B(P) → P.
- Return type:
A
TwistingMorphismrepresenting π
Example:
from uconf import Associative pi = canonical_projection(Associative) # pi.cooperad == BarConstruction(Associative) # pi.operad == Associative
- uconf.morphisms.canonical_twisting.canonical_inclusion(cooperad)[source]¶
Return the canonical inclusion ι: C → Ω(C).
The inclusion sends an element c ∈ C(n) (for n ≥ 2) to the single-vertex cobar tree in Ω(C)(n) decorated by c:
ι(c) = (c, 1, 2, …, n) in Ω(C)(n)
For n = 1 (the coaugmentation), the map is zero.
- Parameters:
cooperad (type[CooperadComponent] | CooperadFactory) – A connected dg-cooperad C.
- Returns:
C → Ω(C).
- Return type:
A
TwistingMorphismrepresenting ι
Example:
from uconf import CoAssociative iota = canonical_inclusion(CoAssociative) # iota.cooperad == CoAssociative # iota.operad == CobarConstruction(CoAssociative)