Skip to content

DiaconisGrahamDefect ​

Half of the total displacement less the number of inversions and the reflection length.

✓ checked against that system · ! checked, with disagreements (hover a chip)FindStatSt001906via Permutation✓
DiaconisGrahamDefect(p)Half of the total displacement less the number of inversions and the reflection length.
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 (Sum(Map(
                                   Function(Abs(_x[i] - i), i),
                                   Range(1, Length(_x)),
                                 )) - Sum(Map(
                                              Function(Count(Filter(
                                                                     Range(
                                                                            i +
                                                                            1,
                                                                            Length(_x),
                                                                          ),
                                                                     Function(_x[i] >
                                                                              _x[j], j),
                                                                   )), i),
                                              Range(1, Length(_x)),
                                            )) - (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),
                                                                          )))) /
                         2

Examples

Basic #

the one-line word 312312

live ↗
InDiaconisGrahamDefect(Permutation⁡([3,1,2]))\mathrm{DiaconisGrahamDefect}({\operatorname{Permutation}}([3, 1, 2]))Out00

the one-line word 24132413

live ↗
InDiaconisGrahamDefect(Permutation⁡([2,4,1,3]))\mathrm{DiaconisGrahamDefect}({\operatorname{Permutation}}([2, 4, 1, 3]))Out00
Properties #

FindStat's value for [1]

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

Known value · FindStat St001906

FindStat's value for [1,2]

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

Known value · FindStat St001906

FindStat's value for [2,1]

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

Known value · FindStat St001906

About
Examples5
CrosswalkFindStat