Labelled Rooted Trees #
This file defines rooted trees whose vertices carry labels. As with
HopfAlgebras.Trees.Rooted, the planar type is primary and the non-planar type is the
quotient by recursively permuting children.
Main definitions #
PLTree α- non-empty planar rooted trees labelled byαPLTree.Perm- equivalence relation forgetting planar child orderLRootedTree α- non-empty non-planar labelled rooted treesLRootedTree.rootLabel- the label at the rootPLTree.eraseandLRootedTree.erase- forget labelsPLTree.treeFactorialandLRootedTree.treeFactorial- Butcher tree factorials
Equations
- HopfAlgebras.instReprPLTree = { reprPrec := HopfAlgebras.instReprPLTree.repr }
Forget labels from a planar labelled rooted tree.
Equations
Instances For
Label every vertex of a planar rooted tree by the same label.
Equations
Instances For
The label at the root of a planar labelled rooted tree.
Equations
- (HopfAlgebras.PLTree.node a a_1).rootLabel = a
Instances For
The number of vertices of a planar labelled rooted tree.
Equations
- (HopfAlgebras.PLTree.node a a_1).order = 1 + HopfAlgebras.PLTree.orderList a_1
Instances For
The sum of the orders of a list of planar labelled rooted trees.
Equations
Instances For
Change all labels in a planar labelled rooted tree.
Equations
- HopfAlgebras.PLTree.map f (HopfAlgebras.PLTree.node a a_1) = HopfAlgebras.PLTree.node (f a) (List.map (HopfAlgebras.PLTree.map f) a_1)
Instances For
Butcher's tree factorial, ignoring labels.
Equations
Instances For
Product of tree factorials over a list of labelled planar rooted trees.
Equations
Instances For
Two labelled planar trees are equivalent if labels agree and children are permuted recursively.
- node {α : Type u} {a : α} {ts us ts' : List (PLTree α)} : ts.Perm ts' → List.Forall₂ Perm ts' us → (PLTree.node a ts).Perm (PLTree.node a us)
Instances For
Attach an ordered labelled forest as the first children of the root.
Equations
- HopfAlgebras.PLTree.butcherProduct ts (HopfAlgebras.PLTree.node a a_1) = HopfAlgebras.PLTree.node a (ts ++ a_1)
Instances For
PLTree.Perm is reflexive.
Elementwise reflexivity for PLTree.Perm.
Elementwise symmetry for PLTree.Perm.
PLTree.Perm is symmetric.
Elementwise transitivity for PLTree.Perm.
PLTree.Perm is transitive.
Equations
- HopfAlgebras.PLTree.instSetoid = { r := HopfAlgebras.PLTree.Perm, iseqv := ⋯ }
Non-empty non-planar labelled rooted trees.
Equations
Instances For
The quotient map from planar labelled trees to non-planar labelled trees.
Equations
Instances For
The number of vertices of a non-planar labelled rooted tree.
Instances For
The label at the root of a non-planar labelled rooted tree.
Instances For
Forget labels from a non-planar labelled rooted tree.
Equations
- HopfAlgebras.LRootedTree.erase = Quotient.lift (fun (t : HopfAlgebras.PLTree α) => HopfAlgebras.RootedTree.ofPTree t.erase) ⋯
Instances For
Label every vertex of a rooted tree by the same label.
Equations
Instances For
Change all labels in a non-planar labelled rooted tree.
Equations
- HopfAlgebras.LRootedTree.map f = Quotient.lift (fun (t : HopfAlgebras.PLTree α) => HopfAlgebras.LRootedTree.ofPLTree (HopfAlgebras.PLTree.map f t)) ⋯
Instances For
Butcher's tree factorial for non-planar labelled rooted trees.