Skip to content

PermutationSupport ​

The points pp moves, in increasing order.

✓ checked against that system · ! checked, with disagreements (hover a chip)FindStatSt000673Wolfram LanguagePermutationLength!PermutationMax!PermutationMin!PermutationSupport!
PermutationSupport(p)The points pp moves, in increasing order.
Typed signatures
TypePackageApplies
(permutation) -> list<integer>combinatoricsalways

Domain: Permutation statistics

Details
  • Defined over Permutation as an expression in _x, evaluated by compute-engine — the definition IS the implementation.
  • Wolfram's Cycles input is not read here: wrap a one-line word in Permutation, or turn Cycles into one with PermutationList first
  • The identity has an empty support. Its size, largest and smallest points are Length, Max and Min of it: Wolfram's PermutationLength, PermutationMax and PermutationMin are not heads here
  • Max and Min of an empty list are NaN in compute-engine, not Wolfram's −∞ and ∞. Wolfram's PermutationMax and PermutationMin of the identity are 0 and ∞, so those compositions carry the bound: Max(0, …) and Min(Infinity, …)
  • 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

[] if Length(_x) < 1 else Fold(Function(
                                         Join(a, [b]) if Abs(_x[b] - b) > 0 else a,
                                         a,
                                         b,
                                       ), [], Range(1, Length(_x)))

Examples

Basic #

(1 5)(2 3 4)(1\,5)(2\,3\,4) moves all five points

live ↗
InPermutationSupport(Permutation⁡([5,3,4,2,1]))\mathrm{PermutationSupport}({\operatorname{Permutation}}([5, 3, 4, 2, 1]))Out[1,2,3,4,5]\bigl\lbrack1, 2, 3, 4, 5\bigr\rbrack

Known value · wolframscript 15.0

the one-line word 312312

live ↗
InPermutationSupport(Permutation⁡([3,1,2]))\mathrm{PermutationSupport}({\operatorname{Permutation}}([3, 1, 2]))Out[1,2,3]\bigl\lbrack1, 2, 3\bigr\rbrack

the one-line word 24132413

live ↗
InPermutationSupport(Permutation⁡([2,4,1,3]))\mathrm{PermutationSupport}({\operatorname{Permutation}}([2, 4, 1, 3]))Out[1,2,3,4]\bigl\lbrack1, 2, 3, 4\bigr\rbrack

all three points move

live ↗
InLength(PermutationSupport(Permutation⁡([2,3,1])))\mathrm{Length}(\mathrm{PermutationSupport}({\operatorname{Permutation}}([2, 3, 1])))Out33

Known value · wolframscript 15.0

the one-line word 312312

live ↗
InLength(PermutationSupport(Permutation⁡([3,1,2])))\mathrm{Length}(\mathrm{PermutationSupport}({\operatorname{Permutation}}([3, 1, 2])))Out33

the one-line word 24132413

live ↗
InLength(PermutationSupport(Permutation⁡([2,4,1,3])))\mathrm{Length}(\mathrm{PermutationSupport}({\operatorname{Permutation}}([2, 4, 1, 3])))Out44

3 and 4 are fixed, so the largest moved point is 2

live ↗
Inmax⁡(PermutationSupport(Permutation⁡([2,1,3,4])))\max(\mathrm{PermutationSupport}({\operatorname{Permutation}}([2, 1, 3, 4])))Out22

Known value · wolframscript 15.0

the one-line word 312312

live ↗
Inmax⁡(PermutationSupport(Permutation⁡([3,1,2])))\max(\mathrm{PermutationSupport}({\operatorname{Permutation}}([3, 1, 2])))Out33

the one-line word 24132413

live ↗
Inmax⁡(PermutationSupport(Permutation⁡([2,4,1,3])))\max(\mathrm{PermutationSupport}({\operatorname{Permutation}}([2, 4, 1, 3])))Out44

1 is fixed, so the smallest moved point is 2

live ↗
Inmin⁡(PermutationSupport(Permutation⁡([1,3,2,4])))\min(\mathrm{PermutationSupport}({\operatorname{Permutation}}([1, 3, 2, 4])))Out22

Known value · wolframscript 15.0

the one-line word 312312

live ↗
Inmin⁡(PermutationSupport(Permutation⁡([3,1,2])))\min(\mathrm{PermutationSupport}({\operatorname{Permutation}}([3, 1, 2])))Out11

the one-line word 24132413

live ↗
Inmin⁡(PermutationSupport(Permutation⁡([2,4,1,3])))\min(\mathrm{PermutationSupport}({\operatorname{Permutation}}([2, 4, 1, 3])))Out11
Scope #

1 and 4 are fixed

live ↗
InPermutationSupport(Permutation⁡([1,3,2,4]))\mathrm{PermutationSupport}({\operatorname{Permutation}}([1, 3, 2, 4]))Out[2,3]\bigl\lbrack2, 3\bigr\rbrack

Known value · wolframscript 15.0

only 2 and 3 move

live ↗
InLength(PermutationSupport(Permutation⁡([1,3,2,4])))\mathrm{Length}(\mathrm{PermutationSupport}({\operatorname{Permutation}}([1, 3, 2, 4])))Out22

Known value · wolframscript 15.0

the cycles (1 5)(2 3 4)(1\,5)(2\,3\,4) move five points

live ↗
InLength(PermutationSupport(Permutation⁡([5,3,4,2,1])))\mathrm{Length}(\mathrm{PermutationSupport}({\operatorname{Permutation}}([5, 3, 4, 2, 1])))Out55

Known value · wolframscript 15.0

(1 5)(2 3 4)(1\,5)(2\,3\,4)

live ↗
Inmax⁡(PermutationSupport(Permutation⁡([5,3,4,2,1])))\max(\mathrm{PermutationSupport}({\operatorname{Permutation}}([5, 3, 4, 2, 1])))Out55

Known value · wolframscript 15.0

(1 5)(2 3 4)(1\,5)(2\,3\,4)

live ↗
Inmin⁡(PermutationSupport(Permutation⁡([5,3,4,2,1])))\min(\mathrm{PermutationSupport}({\operatorname{Permutation}}([5, 3, 4, 2, 1])))Out11

Known value · wolframscript 15.0

Properties #

the identity moves nothing

live ↗
InPermutationSupport(Permutation⁡([1,2,3]))\mathrm{PermutationSupport}({\operatorname{Permutation}}([1, 2, 3]))Out[]\bigl\lbrack\bigr\rbrack

Known value · wolframscript 15.0

the identity moves nothing

live ↗
InLength(PermutationSupport(Permutation⁡([1,2,3])))\mathrm{Length}(\mathrm{PermutationSupport}({\operatorname{Permutation}}([1, 2, 3])))Out00

Known value · wolframscript 15.0

FindStat's value for [1,2]

live ↗
InLength(PermutationSupport(Permutation⁡([1,2])))\mathrm{Length}(\mathrm{PermutationSupport}({\operatorname{Permutation}}([1, 2])))Out00

Known value · FindStat St000673

FindStat's value for [2,1]

live ↗
InLength(PermutationSupport(Permutation⁡([2,1])))\mathrm{Length}(\mathrm{PermutationSupport}({\operatorname{Permutation}}([2, 1])))Out22

Known value · FindStat St000673

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

live ↗
InLength(PermutationSupport(Permutation⁡([1,2,3])))\mathrm{Length}(\mathrm{PermutationSupport}({\operatorname{Permutation}}([1, 2, 3])))Out00

Known value · FindStat St000673

the identity moves nothing; the bound 0 is Wolfram's answer

live ↗
Inmax⁡(0,PermutationSupport(Permutation⁡([1,2,3])))\max(0, \mathrm{PermutationSupport}({\operatorname{Permutation}}([1, 2, 3])))Out00

Known value · wolframscript 15.0

without the bound, the largest of no points

live ↗
Inmax⁡(PermutationSupport(Permutation⁡([1,2,3])))\max(\mathrm{PermutationSupport}({\operatorname{Permutation}}([1, 2, 3])))OutNaN⁡\operatorname{NaN}

Known value · wolframscript 15.0

the identity moves nothing, so there is no smallest point; the bound infinity is Wolfram's answer

live ↗
Inmin⁡(∞,PermutationSupport(Permutation⁡([1,2,3])))\min(∞, \mathrm{PermutationSupport}({\operatorname{Permutation}}([1, 2, 3])))Out∞∞

Known value · wolframscript 15.0

without the bound, the smallest of no points

live ↗
Inmin⁡(PermutationSupport(Permutation⁡([1,2,3])))\min(\mathrm{PermutationSupport}({\operatorname{Permutation}}([1, 2, 3])))OutNaN⁡\operatorname{NaN}

Known value · wolframscript 15.0

About
Examples26
Checked againstWolfram Language 24 agree2 differ
CrosswalkFindStatWolfram Language ×4