Skip to content

ReflectionLength ​

n minus the number of cycles — the minimum number of transpositions.

✓ checked against that system · ! checked, with disagreements (hover a chip)FindStatSt000216via Permutation✓
ReflectionLength(p)n minus the number of cycles — the minimum number of transpositions.
SageMathenumeratio_stat("Permutation", p, "ReflectionLength")
Typed signatures
TypePackageApplies
(permutation) -> numbercombinatoricsalways

Domain: Permutation statistics

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

0 if Length(_x) < 1 else Length(_x) - Count(Filter(
                                                    Range(1, Length(_x), 1),
                                                    Function(Fold(
                                                                   Function(
                                                                             w if w <= 0 else 0 if w == i else -1 if w < i else _x[w],
                                                                             w,
                                                                             k,
                                                                           ),
                                                                   _x[i],
                                                                   Range(
                                                                          1,
                                                                          Length(_x),
                                                                          1,
                                                                        ),
                                                                 ) == 0, i),
                                                  ))

Examples

Basic #

the one-line word 312312

live ↗
InReflectionLength(Permutation⁡([3,1,2]))\mathrm{ReflectionLength}({\operatorname{Permutation}}([3, 1, 2]))Out22

the one-line word 24132413

live ↗
InReflectionLength(Permutation⁡([2,4,1,3]))\mathrm{ReflectionLength}({\operatorname{Permutation}}([2, 4, 1, 3]))Out33
Properties #

FindStat's value for [1,2]

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

Known value · FindStat St000216

FindStat's value for [2,1]

live ↗
InCombinatorialStat(Permutation⁡([2,1]),ReflectionLength)\mathrm{CombinatorialStat}({\operatorname{Permutation}}([2, 1]), \text{ReflectionLength})Out11

Known value · FindStat St000216

FindStat's value for [1,2,3]

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

Known value · FindStat St000216

About
Examples5
Checked againstSageMath 5 agree
CrosswalkFindStatSageMath

Implementation

mappedsagepackages/oracle/src/mappings.ts