Skip to content

Flex ​

The product of the word's lex (its position among its distinct cyclic shifts, from 1) and its frequency.

✓ checked against that system · ! checked, with disagreements (hover a chip)FindStatSt001437via BinaryWord✓
Flex(word)The product of the word's lex (its position among its distinct cyclic shifts, from 1) and its frequency.
Typed signatures
TypePackageApplies
(binary_word) -> numbercombinatoricsalways

Domain: Binary word statistics

Details
  • Defined over BinaryWord as an expression in _x, evaluated by compute-engine — the definition IS the implementation.
  • Takes a BinaryWord 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.
  • FindStat's St001437: St001436 plus 1, times St000627.

Definition

Epsil, as the implementation runs it.

on BinaryWord, over _x

0 if Length(_x) < 1 else ((0 if Length(_x) < 1 else Apply(
                                                           (v: list<integer>) => Max(
                                                                                      Sum(Map(Function(1 if n <
                                                                                                            v[1 + 1] else 0, n), Unique(v))),
                                                                                      0,
                                                                                    ),
                                                           Apply(
                                                                  (a_init: list<integer>) => Fold(
                                                                                                   (a: list<integer>, b) => Apply(
                                                                                                                                   (a_next: list<integer>) => a_next,
                                                                                                                                   Join(a, [Max(Sum(Map(Function(_x[(b +
                                                                                                                                                                     (m - 2)) %
                                                                                                                                                                    Length(_x) +
                                                                                                                                                                    1] *
                                                                                                                                                                 2 ^
                                                                                                                                                                 (Length(_x) - m), m), Range(1, Length(_x)))), 0)]),
                                                                                                                                 ),
                                                                                                   a_init,
                                                                                                   Range(1, Length(_x)),
                                                                                                 ),
                                                                  [2 ^
                                                                   Length(_x)],
                                                                ),
                                                         )) + 1) *
                         (0 if Length(_x) < 1 else 1 if Length(_x) < 2 else Length(_x) /
                                                                            Min(Join(
                                                                                      [Length(_x)],
                                                                                      Filter(
                                                                                              Range(1, Length(_x) - 1, 1),
                                                                                              Function(Max(Sum(Map(Function((_x[1 +
                                                                                                                                (m - 1)] +
                                                                                                                             1) *
                                                                                                                            3 ^
                                                                                                                            (Length(_x) - q -
                                                                                                                             m), m), Range(1, Length(_x) - q, 1))), 0) ==
                                                                                                       Max(Sum(Map(Function((_x[Length(_x) -
                                                                                                                                (Length(_x) - q) +
                                                                                                                                1 +
                                                                                                                                (m - 1)] +
                                                                                                                             1) *
                                                                                                                            3 ^
                                                                                                                            (Length(_x) - q -
                                                                                                                             m), m), Range(1, Length(_x) - q, 1))), 0) if Length(_x) % q ==
                                                                                                           0 else False, q),
                                                                                            ),
                                                                                    )))

Examples

Basic #

the word 110100111110100111

live ↗
InFlex(BinaryWord⁡([1,1,0,1,0,0,1,1,1]))\mathrm{Flex}({\operatorname{BinaryWord}}([1, 1, 0, 1, 0, 0, 1, 1, 1]))Out66
Properties #

FindStat's value for 0

live ↗
InCombinatorialStat(BinaryWord⁡([0]),Flex)\mathrm{CombinatorialStat}({\operatorname{BinaryWord}}([0]), \text{Flex})Out11

Known value · FindStat St001437

FindStat's value for 1

live ↗
InCombinatorialStat(BinaryWord⁡([1]),Flex)\mathrm{CombinatorialStat}({\operatorname{BinaryWord}}([1]), \text{Flex})Out11

Known value · FindStat St001437

FindStat's value for 00

live ↗
InCombinatorialStat(BinaryWord⁡([0,0]),Flex)\mathrm{CombinatorialStat}({\operatorname{BinaryWord}}([0, 0]), \text{Flex})Out22

Known value · FindStat St001437

About
Examples4
CrosswalkFindStat