NontrivialCycles
Cycles of size at least two: the cycles less the fixed points.
✓ checked against that system · ! checked, with disagreements (hover a chip)FindStat
St000162via Permutation✓NontrivialCycles(p)Cycles of size at least two: the cycles less the fixed points.SageMath
enumeratio_stat("Permutation", p, "NontrivialCycles")Typed signatures
| Type | Package | Applies |
|---|---|---|
(permutation) -> number | combinatorics | always |
Details
- Defined over
Permutationas an expression in_x, evaluated by compute-engine — the definition IS the implementation. - Takes a
Permutationand 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 Count(Filter(Map(
Function(Min(Filter(
Range(
1,
Length(_x),
1,
),
Function(Fold(
Function(_x[w], w, j),
i,
Range(1, k, 1),
) ==
i, k),
)), i),
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),
),
), Function(c > 1, c)))Examples
Properties #
About
| Examples | 5 |
|---|---|
| Checked against | SageMath 5 agreemathlib4 2 agree |
| Crosswalk | FindStatSageMath |
Implementation
mapped
sagepackages/oracle/src/mappings.tsmapped
mathlib4packages/oracle/src/mappings.tsA 1-based one-line permutation list, rebuilt as an Equiv.Perm (Fin n) (a list that is not a permutation prints "not a permutation"); Equiv.Perm.cycleType omits the 1-cycles