Skip to content

OccurrencesOf1Over2Over3Openers3Closers12 ​

Occurrences of the pattern 1/2/3 with 3 the least element of its block and 1 and 2 the greatest elements of their blocks.

✓ checked against that system · ! checked, with disagreements (hover a chip)FindStatSt000583via SetPartition✓
OccurrencesOf1Over2Over3Openers3Closers12(partition)Occurrences of the pattern 1/2/3 with 3 the least element of its block and 1 and 2 the greatest elements of their blocks.
Typed signatures
TypePackageApplies
(set_partition) -> numbercombinatoricsalways

Domain: Set partition statistics

Details
  • Defined over SetPartition as an expression in _x, evaluated by compute-engine — the definition IS the implementation.
  • Takes a SetPartition 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 SetPartition, over _x

0 if Length(Flatten(_x)) < 3 else Sum(Map(
                                           Function(Sum(Map(
                                                             Function(Count(Filter(
                                                                                    Range(b + 1, Length(Flatten(_x))),
                                                                                    Function(Abs(Sum(Map(
                                                                                                          Function(q if Contains(_x[q], a) else 0, q),
                                                                                                          Range(1, Length(_x)),
                                                                                                        )) -
                                                                                                 Sum(Map(
                                                                                                          Function(q if Contains(_x[q], b) else 0, q),
                                                                                                          Range(1, Length(_x)),
                                                                                                        ))) >
                                                                                             0 &&
                                                                                             Abs(Sum(Map(
                                                                                                          Function(q if Contains(_x[q], a) else 0, q),
                                                                                                          Range(1, Length(_x)),
                                                                                                        )) -
                                                                                                 Sum(Map(
                                                                                                          Function(q if Contains(_x[q], c) else 0, q),
                                                                                                          Range(1, Length(_x)),
                                                                                                        ))) >
                                                                                             0 &&
                                                                                             Abs(Sum(Map(
                                                                                                          Function(q if Contains(_x[q], b) else 0, q),
                                                                                                          Range(1, Length(_x)),
                                                                                                        )) -
                                                                                                 Sum(Map(
                                                                                                          Function(q if Contains(_x[q], c) else 0, q),
                                                                                                          Range(1, Length(_x)),
                                                                                                        ))) >
                                                                                             0 &&
                                                                                             Contains(Map(Function(b[1], b), _x), c) &&
                                                                                             Contains(Map(Function(Last(b), b), _x), a) &&
                                                                                             Contains(Map(Function(Last(b), b), _x), b), c),
                                                                                  )), b),
                                                             Range(
                                                                    a + 1,
                                                                    Length(Flatten(_x)) -
                                                                    1,
                                                                  ),
                                                           )), a),
                                           Range(1, Length(Flatten(_x)) - 2),
                                         ))

Examples

Basic #

the partition {1,3}∣{2}\{1,3\} \mid \{2\}

live ↗
InOccurrencesOf1Over2Over3Openers3Closers12(SetPartition⁡([[1,3],[2]]))\mathrm{OccurrencesOf1Over2Over3Openers3Closers12}({\operatorname{SetPartition}}([[1, 3], [2]]))Out00

the partition {1}∣{2,4}∣{3}\{1\} \mid \{2,4\} \mid \{3\}

live ↗
InOccurrencesOf1Over2Over3Openers3Closers12(SetPartition⁡([[1],[2,4],[3]]))\mathrm{OccurrencesOf1Over2Over3Openers3Closers12}({\operatorname{SetPartition}}([[1], [2, 4], [3]]))Out00
Properties #

FindStat's value for {{1}}

live ↗
InCombinatorialStat(SetPartition⁡([[1]]),OccurrencesOf1Over2Over3Openers3Closers12)\mathrm{CombinatorialStat}({\operatorname{SetPartition}}([[1]]), \text{OccurrencesOf1Over2Over3Openers3Closers12})Out00

Known value · FindStat St000583

FindStat's value for {{1,2}}

live ↗
InCombinatorialStat(SetPartition⁡([[1,2]]),OccurrencesOf1Over2Over3Openers3Closers12)\mathrm{CombinatorialStat}({\operatorname{SetPartition}}([[1, 2]]), \text{OccurrencesOf1Over2Over3Openers3Closers12})Out00

Known value · FindStat St000583

FindStat's value for {{1,2,3}}

live ↗
InCombinatorialStat(SetPartition⁡([[1,2,3]]),OccurrencesOf1Over2Over3Openers3Closers12)\mathrm{CombinatorialStat}({\operatorname{SetPartition}}([[1, 2, 3]]), \text{OccurrencesOf1Over2Over3Openers3Closers12})Out00

Known value · FindStat St000583

About
Examples5
CrosswalkFindStat