Macaulay2 » Documentation
Packages » Permutations :: Permutation
next | previous | forward | backward | up | index | toc

# Permutation -- the Permutation type

## Description

Permutations are constructed from lists. To create a permutation, use the permutation method.

    i1 : p = permutation {3,1,2,4,5}

    o1 = Permutation{3, 1, 2, 4, 5}

    o1 : Permutation

Permutations must be constructed from lists consisting of only the integers $1 \dots n$. If a list contains any other elements or does not consist of the entire range, then an error is thrown.

## Functions and methods returning a permutation:

- `extend(Permutation,ZZ)` -- see extend -- rewrites a permutation as a permutation on more symbols
- `foataBijection(Permutation)` -- see foataBijection -- computes the image of a permutation under the Foata bijection
- inverse(Permutation) -- computes the inverse of a permutation
- `permutation(VisibleList)`
- Permutation * Permutation -- computes the product of two permutations
- Permutation ^ ZZ -- computes the power of a permutation
- `randomPermutation(ZZ)` -- see randomPermutation -- generates a random permutation
- `transposition(ZZ)` -- see transposition -- constructs a transposition
- `transposition(ZZ,ZZ)` -- see transposition -- constructs a transposition
- `trim(Permutation)` -- see trim -- rewrites a permutation in its smallest representation

## Methods that use a permutation:

- `ascendingRuns(Permutation)` -- see ascendingRuns -- computes the ascending runs of a permutation
- `ascents(Permutation)` -- see ascents -- computes the ascents of a permutation
- `avoidsPattern(Permutation,List)` -- see avoidsPattern -- whether a permutation avoids a pattern
- `avoidsPatterns(Permutation,List)` -- see avoidsPatterns -- whether a permutation simultaneously avoids a list of patterns
- `cycleDecomposition(Permutation)` -- see cycleDecomposition -- computes the decomposition of a permutation as a product of disjoint cycles
- `cycleType(Permutation)` -- see cycleType -- computes the cycle type of a permutation
- `descendingRuns(Permutation)` -- see descendingRuns -- computes the descending runs of a permutation
- `descents(Permutation)` -- see descents -- computes the descents of a permutation
- `exceedances(Permutation)` -- see exceedances -- computes the exceedances of a permutation
- expression(Permutation) (missing documentation)
- extend(Permutation,Permutation) -- rewrites two permutations to be permutations on the same number of symbols
- `fixedPoints(Permutation)` -- see fixedPoints -- computes the fixed points of a permutation
- html(Permutation) (missing documentation)
- `inversions(Permutation)` -- see inversions -- computes the inversions of a permutation
- `isCartwrightSturmfels(Permutation)` -- see isCartwrightSturmfels -- whether a permutation is Cartwright-Sturmfels
- `isCDG(Permutation)` -- see isCDG -- whether a permutation is CDG.
- `isDerangement(Permutation)` -- see isDerangement -- whether a permutation is a derangement
- `isEven(Permutation)` -- see isEven -- whether a permutation is even
- `isOdd(Permutation)` -- see isOdd -- whether a permutation is odd
- `isSeparable(Permutation)` -- see isSeparable -- whether a permutation is separable.
- `isVexillary(Permutation)` -- see isVexillary -- whether a permutation is vexillary
- isWellDefined(Permutation) -- checks if a list is a valid permutation
- length(Permutation) -- computes the length of a permutation
- Matrix * Permutation -- computes the action of a permutation on the columns of a matrix
- Matrix ^ Permutation -- computes the action of a permutation on a matrix
- Matrix _ Permutation -- computes the action of a permutation on the rows of a matrix
- matrix(Permutation) -- computes the matrix representation of a permutation
- new Permutation from VisibleList (missing documentation)
- `ord(Permutation)` -- see ord -- computes the order of a permutation
- Permutation * Matrix -- computes the action of a permutation on the rows of a matrix
- Permutation * VisibleList -- computes the action of a permutation on a list
- Permutation == Permutation -- whether two permutations are the same
- Permutation _ List -- selects a subset of the permutation when regarded as a list
- Permutation _ Sequence -- selects a subset of the permutation when regarded as a list
- Permutation _ ZZ -- selects an element from the permutation when regarded as a list
- `records(Permutation)` -- see records -- computes the saliances of a permutation
- `reducedWords(Permutation)` -- see reducedWords -- computes the reduced words of a permutation
- `saliances(Permutation)` -- see saliances -- computes the saliances of a permutation
- sign(Permutation) -- computes the sign of a permutation
- `strongBruhatOrder(Permutation,Permutation)` -- see strongBruhatOrder -- compares two permutations in the (strong) Bruhat order
- tex(Permutation) (missing documentation)
- toString(Permutation) (missing documentation)
- VisibleList _ Permutation -- computes the action of a permutation on a list
- `weakBruhatOrder(Permutation,Permutation)` -- see weakBruhatOrder -- compares two permutations in the weak Bruhat order

## For the programmer

The object Permutation is a type, with ancestor classes VisibleList < BasicList < Thing.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/Permutations/Documentation/mainDocs.m2:21:0.