Documentation

Linglib.Core.Algebra.RootedTree.Coproduct.Trace

Δ^c (trace-aware admissible-cut) coproduct on RootedTree.Planar (α ⊕ β) #

@cite{marcolli-chomsky-berwick-2025} @cite{foissy-introduction-hopf-algebras-trees}

The trace-preserving variant of the Connes-Kreimer admissible-cut coproduct on planar n-ary rooted trees, parameterized by a trace encoder τ : Planar (α ⊕ β) → β. For a tree T:

Δ^c_τ(T) = T ⊗ 1 + Σ_{c : Cut T} of'(cutForest c) ⊗ ofTree(remainderTrace c)

where remainderTrace c keeps a placeholder leaf at every cut site — the leaf's label is Sum.inr (τ T_v) for the cut subtree T_v. This contrasts with the deletion variant Δ^ρ (sibling Coproduct.lean), where cut sites simply disappear (the parent loses a child).

Carrier and encoder #

The carrier is Planar (α ⊕ β) directly: original-decoration vertices sit on Sum.inl, trace-marker vertices on Sum.inr. Output trees from Δ^c only ever introduce trace markers as leaves; this is provable as a property rather than baked into the carrier (no DecoratedTree wrapper).

The trace encoder τ is an explicit per-definition parameter, not a section variable. Consumers pick τ to encode whatever trace information they want about the cut subtree:

Embedding α-only trees #

The substrate is encoder-free: an α-only tree T : Planar α is embedded into Planar (α ⊕ β) via Planar.map Sum.inl T. No separate mapDecoration primitive.

MCB anchors #

The trace-leaf contraction underlies the C-I (semantic) interface for FormCopy in the MCB analysis. For the admissible-cut variant Δ^ρ (corresponds to MCB's Δ^ρ; cut sites removed entirely; result lives in at-most-n-ary trees), see Coproduct.lean.

Architecture #

The cut enumeration is delegated to CoproductGeneric.lean's cutSummandsG (extract), parameterized by an extraction policy. Δ^c specializes via the extraction policy extractC τ:

Status #

[UPSTREAM] candidate; future home something like Mathlib.Combinatorics.RootedTree.CoproductDecorated. Sorry-free.

traceLeaf — placeholder for a cut subtree #

def RootedTree.ConnesKreimer.traceLeaf {α : Type u_2} {β : Type u_3} (b : β) :
Planar (α β)

The trace-marker placeholder leaf carrying the encoded label b : β.

Equations
Instances For

    Δ^c extraction policy #

    def RootedTree.ConnesKreimer.extractC {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) :
    Planar (α β)Option (List (Planar (α β)))

    The Δ^c extraction policy: for Sum.inl-rooted (non-trace) subtrees, extract whole leaving a single traceLeaf (τ t) in the parent's child slot. For Sum.inr-rooted (trace) subtrees, decline to extract.

    Equations
    Instances For
      @[simp]
      theorem RootedTree.ConnesKreimer.extractC_inl {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) (a : α) (cs : List (Planar (α β))) :
      extractC τ (Planar.node (Sum.inl a) cs) = some [traceLeaf (τ (Planar.node (Sum.inl a) cs))]
      @[simp]
      theorem RootedTree.ConnesKreimer.extractC_inr {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) (b : β) (cs : List (Planar (α β))) :
      extractC τ (Planar.node (Sum.inr b) cs) = none

      cutSummandsCP — Δ^c cut enumeration via the generic cutSummandsG #

      Defined as cutSummandsG (extractC τ). The generic-side simp lemmas (cutSummandsG_node, cutListSummandsG_*, augActionG_*) compose with extractC_inl/extractC_inr to give the Δ^c-specific reductions.

      def RootedTree.ConnesKreimer.cutSummandsCP {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) :
      Planar (α β)Multiset (Forest (Planar (α β)) × Planar (α β))

      The Δ^c cut summands: cuts at non-trace subtrees with trace placeholders, skipping cuts at trace leaves.

      Equations
      Instances For
        theorem RootedTree.ConnesKreimer.cutSummandsCP_def {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) (T : Planar (α β)) :
        @[simp]
        theorem RootedTree.ConnesKreimer.cutSummandsCP_node {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) (a : α β) (cs : List (Planar (α β))) :
        cutSummandsCP τ (Planar.node a cs) = Multiset.map (fun (p : Forest (Planar (α β)) × List (Planar (α β))) => (p.1, Planar.node a p.2)) (cutListSummandsG (extractC τ) cs)

        comulCTreePlanar — tree-level Δ^c #

        Sum the cut summands as tensors, plus the explicit T ⊗ 1 term.

        noncomputable def RootedTree.ConnesKreimer.comulCTreePlanar {R : Type u_1} [CommSemiring R] {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) (T : Planar (α β)) :
        TensorProduct R (ConnesKreimer R (Planar (α β))) (ConnesKreimer R (Planar (α β)))

        The planar tree-level Δ^c coproduct: explicit T ⊗ 1 term plus the sum of cut-summand tensors with trace-preserving remainders.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For

          comulCForestPlanar — forest-level Δ^c, multiplicative extension #

          noncomputable def RootedTree.ConnesKreimer.comulCForestPlanar {R : Type u_1} [CommSemiring R] {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) (F : Forest (Planar (α β))) :
          TensorProduct R (ConnesKreimer R (Planar (α β))) (ConnesKreimer R (Planar (α β)))

          The planar forest-level Δ^c: multiplicative product of tree-level coproducts over the components of the forest.

          Equations
          Instances For
            @[simp]
            theorem RootedTree.ConnesKreimer.comulCForestPlanar_zero {R : Type u_1} [CommSemiring R] {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) :
            @[simp]
            theorem RootedTree.ConnesKreimer.comulCForestPlanar_add {R : Type u_1} [CommSemiring R] {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) (F G : Forest (Planar (α β))) :

            comulCMonoidHomP and comulCAlgHomP — AlgHom packaging #

            noncomputable def RootedTree.ConnesKreimer.comulCMonoidHomP {R : Type u_1} [CommSemiring R] {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) :
            Multiplicative (Forest (Planar (α β))) →* TensorProduct R (ConnesKreimer R (Planar (α β))) (ConnesKreimer R (Planar (α β)))

            comulCForestPlanar τ as a monoid hom from Multiplicative (Forest (Planar (α ⊕ β))).

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              noncomputable def RootedTree.ConnesKreimer.comulCAlgHomP {R : Type u_1} [CommSemiring R] {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) :
              ConnesKreimer R (Planar (α β)) →ₐ[R] TensorProduct R (ConnesKreimer R (Planar (α β))) (ConnesKreimer R (Planar (α β)))

              The Δ^c coproduct on ConnesKreimer R (Planar (α ⊕ β)) as an algebra hom, parameterized by the trace encoder τ.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                @[simp]
                theorem RootedTree.ConnesKreimer.comulCAlgHomP_apply_of' {R : Type u_1} [CommSemiring R] {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) (F : Forest (Planar (α β))) :
                @[simp]
                theorem RootedTree.ConnesKreimer.comulCAlgHomP_apply_ofTree {R : Type u_1} [CommSemiring R] {α : Type u_2} {β : Type u_3} (τ : Planar (α β)β) (T : Planar (α β)) :

                Sanity tests #