Δ^d on ConnesKreimer R (Nonplanar (α ⊕ β)) via projection from Δ^c #
The deletion variant of the Connes-Kreimer admissible-cut coproduct,
derived from Δ^c (Coproduct/TraceNonplanar.lean) by stripping
trace-placeholder leaves from the right channel — MCB Lemma 1.3.10
(p. 44):
Δ^d = (id ⊗ Π_{d,c}) ∘ Δ^c = (id ⊗ Π_{d,p}) ∘ Δ^ρ
where Π_{c,p} deletes trace-placeholder leaves and Π_{d,p} is the binary-rebinarize step.
In our n-ary substrate #
MCB works with binary trees throughout. Their Π_{d,p} (the "rebinarize"
step) contracts degree-1 vertices to recover binary structure. In our
Nonplanar α substrate trees can be arbitrary n-ary, so Π_{d,p} is
the identity: no degree-1 smoothing needed, no rebinarization step.
Δ^d in our setting therefore reduces to just the trace-strip projection from Δ^c:
Δ^d := (Π_{d,c} ⊗ Π_{d,c}) ∘ Δ^c
This file constructs Π_{d,c} as an algebra hom stripTraceAlgHom : ConnesKreimer R (Nonplanar (α ⊕ β)) →ₐ[R] ConnesKreimer R (Nonplanar α)
and defines comulDN as the composition above.
Relationship to Δ^ρ #
The Sum.inl embedding embedInlAlgHom : ConnesKreimer R (Nonplanar α) →ₐ ConnesKreimer R (Nonplanar (α ⊕ β)) (induced by Sum.inl : α → α ⊕ β)
lets us compare:
comulDN ∘ embedInlAlgHom = comulAlgHomN (the equivalence theorem)
i.e., starting from a trace-free tree, applying Δ^c then stripping
gives the same result as Δ^ρ directly. This is the n-ary specialization
of MCB's Δ^d = (id ⊗ Π_{d,p}) ∘ Δ^ρ (since Π_{d,p} is identity here).
Bialgebra structure #
Δ^d does not have a separate Bialgebra structure in this file. By
the equivalence theorem, consumers wanting a Bialgebra should compose
through embedInlAlgHom and use the Δ^ρ structure
(PruningDuality.instBialgebraRho). MCB's Lemma 1.2.12 (Δ^d weak
coassoc with distance-≤-1 multiplicity discrepancy) is specific to the
binary Π_{d,p} step which is identity in our setting; in our n-ary
substrate Δ^d ≡ Δ^ρ (modulo the embedding) has strict coassoc.
Status #
[UPSTREAM] candidate. Sorry-free as of MCB Phase F.1 R.9 closure:
comulDN_embedInl_eq_comulAlgHomN is now proven via tree-level mutual
structural induction on tree / children-list, factoring the wrapper
bPlusLin a out of the per-summand tensors so the head and tail
induction hypotheses apply cleanly. The left-channel half uses
stripTraceAlgHom_comp_embedInlAlgHom (strip inverts the Sum.inl
embedding); the right-channel trace-removal uses
strip_cutSummandsCP_sum_eq + strip_cutListSummandsG_unwrap_sum_eq.
Tree-level trace-strip projection #
Strip trace-placeholder subtrees (Sum.inr-rooted subtrees) from a
RoseTree (α ⊕ β) tree, yielding Option (RoseTree α) — the result is
none only if the root itself is a trace placeholder.
The strip recurses into children via filterMap: each child is
stripped, and none results are dropped.
The children-list functor action mapList f = List.map (RoseTree.map f),
named so the node-expansion of RoseTree.map reads structurally below.
Equations
- RootedTree.ConnesKreimer.RoseTree.mapList f cs = List.map (RoseTree.map f) cs
Instances For
RoseTree.map on a node, expressed through RoseTree.mapList.
Strip trace-placeholder subtrees from a tree-level tree. Returns none
if the root is a trace placeholder (Sum.inr-labeled).
Equations
- RootedTree.ConnesKreimer.RoseTree.stripTrace (RoseTree.node (Sum.inr val) children) = none
- RootedTree.ConnesKreimer.RoseTree.stripTrace (RoseTree.node (Sum.inl a) cs) = some (RoseTree.node a (RootedTree.ConnesKreimer.RoseTree.stripTraceList cs))
Instances For
Auxiliary: strip each tree in a children list, dropping nones.
Equations
- One or more equations did not get rendered due to their size.
- RootedTree.ConnesKreimer.RoseTree.stripTraceList [] = []
Instances For
Descent to Nonplanar #
Lift RoseTree.stripTrace through the quotient. The lift requires that
stripTrace ∘ Nonplanar.mk be well-defined modulo PermEquiv, which
holds because:
PermEquivpermutes children;stripTraceListcommutes with permutations up toList.Permon the resulting list.- At the
Nonplanar.mklevel, child-list order collapses, so PermEquiv-related stripped trees become equal.
Strip trace-placeholder subtrees from a Nonplanar tree.
Equations
Instances For
Forest-level strip #
Map Nonplanar.stripTrace over each tree in the forest, dropping the
none results via Multiset.filterMap. The result is a forest in
Nonplanar α.
The additive monoid hom from forests in Nonplanar (α ⊕ β) to
forests in Nonplanar α, given by stripping each tree componentwise
and dropping the trace-rooted ones.
Equations
- One or more equations did not get rendered due to their size.
Instances For
AlgHom lift — Π_{d,c} #
The trace-strip algebra hom Π_{d,c} in MCB's notation.
The trace-strip algebra hom Π_{d,c} —
ConnesKreimer R (Nonplanar (α ⊕ β)) →ₐ[R] ConnesKreimer R (Nonplanar α)
induced by stripTraceForestAddHom via ConnesKreimer.mapDomainAlgHom.
Equations
Instances For
Sum.inl embedding #
The embedding α → α ⊕ β lifts componentwise to trees and forests via
RoseTree.map / Nonplanar.map / Multiset.map.
Embed a Nonplanar α tree into Nonplanar (α ⊕ β) via Sum.inl.
Equations
Instances For
Embed a forest of Nonplanar α trees into a forest of
Nonplanar (α ⊕ β) trees, componentwise.
Equations
- RootedTree.ConnesKreimer.embedInlForestAddHom = Multiset.mapAddMonoidHom RootedTree.ConnesKreimer.Nonplanar.embedInl
Instances For
The Sum.inl embedding algebra hom
ConnesKreimer R (Nonplanar α) →ₐ[R] ConnesKreimer R (Nonplanar (α ⊕ β))
induced by Nonplanar.embedInl via ConnesKreimer.mapDomainAlgHom.
Equations
Instances For
Strip inverts embed #
RoseTree.stripTrace (RoseTree.map Sum.inl p) = some p — embedding via
Sum.inl then stripping recovers the original. Proven by mutual
structural induction on the tree-level tree / its child list. Descends to
the Nonplanar level via Quotient.inductionOn, and lifts to the
algebra-hom level: stripTraceAlgHom ∘ embedInlAlgHom = id.
stripTrace ∘ embedInl = some (as forest-level filterMap = identity).
This is the multiset-level version of Nonplanar.stripTrace_embedInl.
stripTraceAlgHom ∘ embedInlAlgHom = id. The strip inverts the
Sum.inl embedding at the AlgHom level: trace-free trees survive a
round-trip through embedding + stripping.
Δ^d definition #
comulDN := (Π_{d,c} ⊗ Π_{d,c}) ∘ Δ^c — MCB Lemma 1.3.10 by
construction. Target carrier is Nonplanar α (trace-stripped).
The Δ^d coproduct on ConnesKreimer R (Nonplanar (α ⊕ β)) as an
algebra hom, with trace-stripping applied to both channels of
comulCAlgHomN τ.
Equations
- RootedTree.ConnesKreimer.comulDN τ = (Algebra.TensorProduct.map RootedTree.ConnesKreimer.stripTraceAlgHom RootedTree.ConnesKreimer.stripTraceAlgHom).comp (RootedTree.comulCAlgHomN τ)
Instances For
MCB Lemma 1.3.10 (definitional in our construction):
Δ^d = (Π_{d,c} ⊗ Π_{d,c}) ∘ Δ^c.
Equivalence with Δ^ρ via embedding #
The substantive MCB-correspondence: starting from a trace-free
T : Nonplanar α and embedding into Nonplanar (α ⊕ β) via Sum.inl,
applying comulDN (= Δ^c then strip) gives the same result as applying
comulAlgHomN (Δ^ρ) directly.
In MCB's binary substrate this requires the additional Π_{d,p}
rebinarize step on the right channel; in our n-ary substrate, the
strip is enough.
RoseTree-level cut-tensor builders #
The tensors that arise when applying (S ⊗ S) to comulCTreeN's cut
summands on the LHS, and to comulTreeN's cut summands on the RHS,
both viewed at the Nonplanar α level.
Multiplicativity of cut-tensor builders under combine #
Both unwrapped builders factor through the cons combiners as products.
Sum-of-product over cartesian product #
Standard distributivity: when the integrand factors as f a * g b over
s ×ˢ t, the sum equals (s.map f).sum * (t.map g).sum.
Universal identity: unwrapped tensor for singleton-remainder #
For any t_c : RoseTree (α ⊕ β) (regardless of root), the unwrapped
cutTensor for (F, [t_c]) equals cutTensorC_planar (F, t_c). This
holds for both Sum.inl-rooted t_c (where strip succeeds, yielding
the stripped tree) and Sum.inr-rooted t_c (where both sides reduce
to ... ⊗ 1).
Mutual tree-level lemmas #
The tree-level lemma uses the unwrapped list-level lemma (applied to
children of the tree, with the root wrapped via bPlusLin on the right
channel). The list-level lemma's cons case uses the tree-level lemma
for the head child (via mutual call) + the unwrapped list-level lemma
for the tail (via direct call).
Lift from tree-level to Nonplanar #
MCB equivalence (n-ary specialization): the Δ^d-via-Δ^c construction agrees with Δ^ρ on trace-free trees.
comulDN ∘ embed_{Sum.inl} = comulAlgHomN
Closed via: (a) AlgHom extensionality + ConnesKreimer.induction_linear reduces
to per-basis of' F; (b) Multiset multiplicativity of comulCForestN,
comulForestN, and (stripTraceAlgHom ⊗ stripTraceAlgHom) reduces to
per-tree; (c) Quotient.inductionOn reduces per-tree to tree-level; (d)
tree-level mutual structural induction on tree / children-list closes the
cut-summand bijection via strip_cutSummandsCP_sum_eq.