Documentation

HopfAlgebras.Forests.Labelled

Labelled Rooted Forests #

This file defines labelled rooted forests as multisets of non-planar labelled rooted trees. It also defines labelled branches and labelled grafting, the analogue of the B_+ operator where the new root receives a specified label.

Main definitions #

@[reducible, inline]

Non-planar labelled rooted forests.

Equations
Instances For
    def HopfAlgebras.PLTree.ForestPerm {α : Type u} (ts us : List (PLTree α)) :

    Two labelled planar tree lists represent the same non-planar labelled forest.

    Equations
    Instances For
      theorem HopfAlgebras.PLTree.ForestPerm.symm {α : Type u} {ts us : List (PLTree α)} (h : ForestPerm ts us) :
      theorem HopfAlgebras.PLTree.ForestPerm.trans {α : Type u} {ts us vs : List (PLTree α)} (h₁ : ForestPerm ts us) (h₂ : ForestPerm us vs) :
      theorem HopfAlgebras.PLTree.ForestPerm.of_list_perm {α : Type u} {ts us : List (PLTree α)} (h : ts.Perm us) :
      theorem HopfAlgebras.PLTree.ForestPerm.cons_eq {α : Type u} {t u : PLTree α} {ts us : List (PLTree α)} (ht : LRootedTree.ofPLTree t = LRootedTree.ofPLTree u) (h : ForestPerm ts us) :
      ForestPerm (t :: ts) (u :: us)
      theorem HopfAlgebras.PLTree.ForestPerm.cons {α : Type u} {t u : PLTree α} {ts us : List (PLTree α)} (ht : t.Perm u) (h : ForestPerm ts us) :
      ForestPerm (t :: ts) (u :: us)
      theorem HopfAlgebras.PLTree.ForestPerm.append {α : Type u} {ts us vs ws : List (PLTree α)} (h₁ : ForestPerm ts us) (h₂ : ForestPerm vs ws) :
      ForestPerm (ts ++ vs) (us ++ ws)

      The forest immediately below the root of a non-planar labelled tree.

      Equations
      Instances For

        The empty labelled rooted forest.

        Equations
        Instances For

          The one-tree labelled forest.

          Equations
          Instances For

            Forget all labels in a labelled rooted forest.

            Equations
            Instances For

              Label every vertex of a rooted forest by the same label.

              Equations
              Instances For
                def HopfAlgebras.LRootedForest.mapLabels {α : Type u} {β : Type v} (f : αβ) (φ : LRootedForest α) :

                Change all labels in a labelled rooted forest.

                Equations
                Instances For

                  The total number of vertices in a labelled rooted forest.

                  Equations
                  Instances For

                    Predicate for labelled rooted forests of a fixed order.

                    Equations
                    Instances For

                      The product of the tree factorials in a labelled rooted forest.

                      Equations
                      Instances For
                        @[simp]
                        @[simp]
                        theorem HopfAlgebras.LRootedForest.mapLabels_empty {α : Type u} {β : Type v} (f : αβ) :
                        @[simp]
                        theorem HopfAlgebras.LRootedForest.mapLabels_singleton {α : Type u} {β : Type v} (f : αβ) (τ : LRootedTree α) :
                        @[simp]
                        theorem HopfAlgebras.LRootedForest.erase_add {α : Type u} (φ ψ : LRootedForest α) :
                        (φ + ψ).erase = φ.erase + ψ.erase
                        @[simp]
                        theorem HopfAlgebras.LRootedForest.constLabel_add {α : Type u} (a : α) (φ ψ : RootedForest) :
                        constLabel a (φ + ψ) = constLabel a φ + constLabel a ψ
                        @[simp]
                        theorem HopfAlgebras.LRootedForest.mapLabels_add {α : Type u} {β : Type v} (f : αβ) (φ ψ : LRootedForest α) :
                        mapLabels f (φ + ψ) = mapLabels f φ + mapLabels f ψ
                        @[simp]
                        theorem HopfAlgebras.LRootedForest.mapLabels_comp {α : Type u} {β : Type v} {γ : Type w} (g : βγ) (f : αβ) (φ : LRootedForest α) :
                        mapLabels g (mapLabels f φ) = mapLabels (g f) φ
                        @[simp]
                        theorem HopfAlgebras.LRootedForest.erase_mapLabels {α : Type u} {β : Type v} (f : αβ) (φ : LRootedForest α) :
                        @[simp]
                        @[simp]
                        @[simp]
                        theorem HopfAlgebras.LRootedForest.mapLabels_constLabel {α : Type u} {β : Type v} (f : αβ) (a : α) (φ : RootedForest) :
                        mapLabels f (constLabel a φ) = constLabel (f a) φ
                        theorem HopfAlgebras.LRootedForest.mapLabels_eq_mapLabels_iff_of_injective {α : Type u} {β : Type v} (f : αβ) (hf : Function.Injective f) {φ ψ : LRootedForest α} :
                        mapLabels f φ = mapLabels f ψ φ = ψ
                        @[simp]
                        theorem HopfAlgebras.LRootedForest.order_add {α : Type u} (φ ψ : LRootedForest α) :
                        (φ + ψ).order = φ.order + ψ.order
                        @[simp]
                        @[simp]
                        theorem HopfAlgebras.LRootedForest.order_mapLabels {α : Type u} {β : Type v} (f : αβ) (φ : LRootedForest α) :
                        @[simp]
                        theorem HopfAlgebras.LRootedForest.order_coe_cons_pos {α : Type u} (τ : LRootedTree α) (ts : List (LRootedTree α)) :
                        0 < order ↑(τ :: ts)
                        @[simp]
                        noncomputable def HopfAlgebras.LRootedForest.graft {α : Type u} (a : α) :

                        Graft all roots in a labelled forest onto a new root with label a.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          @[simp]
                          theorem HopfAlgebras.LRootedForest.branches_graft {α : Type u} (a : α) (φ : LRootedForest α) :
                          (graft a φ).branches = φ
                          @[simp]
                          theorem HopfAlgebras.LRootedForest.rootLabel_graft {α : Type u} (a : α) (φ : LRootedForest α) :
                          (graft a φ).rootLabel = a
                          @[simp]
                          theorem HopfAlgebras.LRootedForest.graft_eq_graft_iff {α : Type u} (a : α) (φ ψ : LRootedForest α) :
                          graft a φ = graft a ψ φ = ψ
                          @[simp]
                          theorem HopfAlgebras.LRootedForest.graft_eq_graft_iff_rootLabel_branches {α : Type u} (a b : α) (φ ψ : LRootedForest α) :
                          graft a φ = graft b ψ a = b φ = ψ
                          @[simp]
                          theorem HopfAlgebras.LRootedForest.order_graft {α : Type u} (a : α) (φ : LRootedForest α) :
                          (graft a φ).order = 1 + φ.order
                          @[simp]
                          theorem HopfAlgebras.LRootedForest.mapLabels_graft {α : Type u} {β : Type v} (f : αβ) (a : α) (φ : LRootedForest α) :
                          LRootedTree.map f (graft a φ) = graft (f a) (mapLabels f φ)
                          @[simp]
                          theorem HopfAlgebras.LRootedForest.erase_graft {α : Type u} (a : α) (φ : LRootedForest α) :
                          (graft a φ).erase = φ.erase.graft
                          @[simp]
                          theorem HopfAlgebras.LRootedForest.mapLabels_branches {α : Type u} {β : Type v} (f : αβ) (τ : LRootedTree α) :
                          noncomputable def HopfAlgebras.LRootedForest.butcherProduct {α : Type u} (φ : LRootedForest α) (τ : LRootedTree α) :

                          Graft a labelled rooted forest onto the root of a labelled rooted tree.

                          Equations
                          Instances For
                            @[simp]