Skip to content

InequivalentIncreasingTreeCount ​

The number of increasing labelings of the tree up to its automorphisms: n! over the tree factorial and the automorphism group size.

✓ checked against that system · ! checked, with disagreements (hover a chip)FindStatSt000416via OrderedTree✓
InequivalentIncreasingTreeCount(tree)The number of increasing labelings of the tree up to its automorphisms: n! over the tree factorial and the automorphism group size.
Typed signatures
TypePackageApplies
(ordered_tree) -> numbercombinatoricsalways

Domain: Tree statistics

Details
  • Defined over OrderedTree as an expression in _x, evaluated by compute-engine — the definition IS the implementation.
  • Takes a OrderedTree and nothing else — it reads values against their positions, or walks the orbits, so it needs the bijection. Applying it to a bare list is a type error, not a wrong answer.

Definition

Epsil, as the implementation runs it.

on OrderedTree, over _x

Apply(
       (r: collection) => (1 if r[1] < 2 else Product(Range(1, r[1]))) / r[2] /
                          Fold(
                                Function(a * b, a, b),
                                1,
                                Map(
                                     Function(1 if Length(s) == 0 else Fold(
                                                                             Function(a * b, a, b),
                                                                             1,
                                                                             Map(
                                                                                  Function(1 if Count(Filter(s, Function(Length(Unique([k, u])) ==
                                                                                                                         1, k))) <
                                                                                                2 else Product(Range(1, Count(Filter(s, Function(Length(Unique([k, u])) ==
                                                                                                                                                1, k))))), u),
                                                                                  Unique(s),
                                                                                ),
                                                                           ), s),
                                     Apply(
                                            Function([t] if Length(t) == 0 else Join(
                                                                                      [t],
                                                                                      Fold(
                                                                                            Function(Join(a, b), a, b),
                                                                                            [],
                                                                                            Map(Function(self(self, c), c), t),
                                                                                          ),
                                                                                    ), self, t),
                                            Function([t] if Length(t) == 0 else Join(
                                                                                      [t],
                                                                                      Fold(
                                                                                            Function(Join(a, b), a, b),
                                                                                            [],
                                                                                            Map(Function(self(self, c), c), t),
                                                                                          ),
                                                                                    ), self, t),
                                            _x,
                                          ),
                                   ),
                              ),
       Apply(
              Function([1, 1] if Length(t) == 0 else Apply(
                                                            (r: collection) => [
                                                                                 1 + r[1],
                                                                                 (1 + r[1]) *
                                                                                 r[2],
                                                                               ],
                                                            Fold(
                                                                  Function(
                                                                            [a[1] +
                                                                             b[1], a[2] *
                                                                               b[2]],
                                                                            a,
                                                                            b,
                                                                          ),
                                                                  [0, 1],
                                                                  Map(Function(
                                                                                self(self, c),
                                                                                c,
                                                                              ), t),
                                                                ),
                                                          ), self, t),
              Function([1, 1] if Length(t) == 0 else Apply(
                                                            (r: collection) => [
                                                                                 1 + r[1],
                                                                                 (1 + r[1]) *
                                                                                 r[2],
                                                                               ],
                                                            Fold(
                                                                  Function(
                                                                            [a[1] +
                                                                             b[1], a[2] *
                                                                               b[2]],
                                                                            a,
                                                                            b,
                                                                          ),
                                                                  [0, 1],
                                                                  Map(Function(
                                                                                self(self, c),
                                                                                c,
                                                                              ), t),
                                                                ),
                                                          ), self, t),
              _x,
            ),
     )

Examples

Basic #

the ordered tree [[],[[]],[]][[],[[]],[]]

live ↗
InInequivalentIncreasingTreeCount(OrderedTree⁡([[],[[]],[]]))\mathrm{InequivalentIncreasingTreeCount}({\operatorname{OrderedTree}}(\bigl\lbrack\bigl\lbrack\bigr\rbrack, \bigl\lbrack\bigl\lbrack\bigr\rbrack\bigr\rbrack, \bigl\lbrack\bigr\rbrack\bigr\rbrack))Out66
Properties #

FindStat's value for [[]]

live ↗
InCombinatorialStat(OrderedTree⁡([[]]),InequivalentIncreasingTreeCount)\mathrm{CombinatorialStat}({\operatorname{OrderedTree}}(\bigl\lbrack\bigl\lbrack\bigr\rbrack\bigr\rbrack), \text{InequivalentIncreasingTreeCount})Out11

Known value · FindStat St000416

FindStat's value for [[[]]]

live ↗
InCombinatorialStat(OrderedTree⁡([[[]]]),InequivalentIncreasingTreeCount)\mathrm{CombinatorialStat}({\operatorname{OrderedTree}}(\bigl\lbrack\bigl\lbrack\bigl\lbrack\bigr\rbrack\bigr\rbrack\bigr\rbrack), \text{InequivalentIncreasingTreeCount})Out11

Known value · FindStat St000416

FindStat's value for [[],[]]

live ↗
InCombinatorialStat(OrderedTree⁡([[],[]]),InequivalentIncreasingTreeCount)\mathrm{CombinatorialStat}({\operatorname{OrderedTree}}(\bigl\lbrack\bigl\lbrack\bigr\rbrack, \bigl\lbrack\bigr\rbrack\bigr\rbrack), \text{InequivalentIncreasingTreeCount})Out11

Known value · FindStat St000416

About
Examples4
CrosswalkFindStat