# Permutation matrix

In mathematics, particularly in matrix theory, a **permutation matrix** is a square binary matrix that has exactly one entry of 1 in each row and each column and 0s elsewhere. Each such matrix, say P, represents a permutation of m elements and, when used to multiply another matrix, say A, results in permuting the rows (when pre-multiplying, to form PA) or columns (when post-multiplying, to form AP) of the matrix A.

## Definition

Given a permutation π of *m* elements,

represented in two-line form by

there are two natural ways to associate the permutation with a permutation matrix; namely, starting with the *m* × *m* identity matrix, I_{m}, either permute the columns or permute the rows, according to π. Both methods of defining permutation matrices appear in the literature and the properties expressed in one representation can be easily converted to the other representation. This article will primarily deal with just one of these representations and the other will only be mentioned when there is a difference to be aware of.

The *m × m* permutation matrix *P*_{π} = (*p*_{ij}) obtained by permuting the columns of the identity matrix I_{m}, that is, for each *i*, *p*_{ij} = 1 if *j* = π(*i*) and 0 otherwise, will be referred to as the **column representation** in this article.[1] Since the entries in row *i* are all 0 except that a 1 appears in column π(*i*), we may write

where , a **standard basis vector**, denotes a row vector of length *m* with 1 in the *j*th position and 0 in every other position.[2]

For example, the permutation matrix *P*_{π} corresponding to the permutation : is

Observe that the *j*th column of the I_{5} identity matrix now appears as the π(*j*)th column of *P*_{π}.

The other representation, obtained by permuting the rows of the identity matrix I_{m}, that is, for each *j*, *p*_{ij} = 1 if *i* = π(*j*) and 0 otherwise, will be referred to as the **row representation**.

## Properties

The column representation of a permutation matrix is used throughout this section, except when otherwise indicated.

Multiplying times a column vector **g** will permute the rows of the vector:

Repeated use of this result shows that if M is an appropriately sized matrix, the product, is just a permutation of the rows of M. However, observing that

for each k shows that the permutation of the rows is given by π^{−1}. ( is the transpose of matrix M.)

As permutation matrices are orthogonal matrices (i.e., ), the inverse matrix exists and can be written as

Multiplying a row vector **h** times will permute the columns of the vector:

Again, repeated application of this result shows that post-multiplying a matrix M by the permutation matrix *P*_{π}, that is, *M P*_{π}, results in permuting the columns of M. Notice also that

Given two permutations π and σ of *m* elements, the corresponding permutation matrices *P*_{π} and *P*_{σ} acting on column vectors are composed with

The same matrices acting on row vectors (that is, post-multiplication) compose according to the same rule

To be clear, the above formulas use the prefix notation for permutation composition, that is,

Let be the permutation matrix corresponding to π in its row representation. The properties of this representation can be determined from those of the column representation since In particular,

From this it follows that

Similarly,

## Matrix group

If (1) denotes the identity permutation, then *P*_{(1)} is the identity matrix.

Let *S _{n}* denote the symmetric group, or group of permutations, on {1,2,...,

*n*}. Since there are

*n*! permutations, there are

*n*! permutation matrices. By the formulas above, the

*n*×

*n*permutation matrices form a group under matrix multiplication with the identity matrix as the identity element.

The map *S*_{n} → *A* ⊂ GL(*n*, **Z**_{2}) is a faithful representation. Thus, |*A*| = *n*!.

## Doubly stochastic matrices

A permutation matrix is itself a doubly stochastic matrix, but it also plays a special role in the theory of these matrices. The Birkhoff–von Neumann theorem says that every doubly stochastic real matrix is a convex combination of permutation matrices of the same order and the permutation matrices are precisely the extreme points of the set of doubly stochastic matrices. That is, the Birkhoff polytope, the set of doubly stochastic matrices, is the convex hull of the set of permutation matrices.[3]

## Linear algebraic properties

The trace of a permutation matrix is the number of fixed points of the permutation. If the permutation has fixed points, so it can be written in cycle form as π = (*a*_{1})(*a*_{2})...(*a*_{k})σ where σ has no fixed points, then **e**_{a1},**e**_{a2},...,**e**_{ak} are eigenvectors of the permutation matrix.

To calculate the eigenvalues of a permutation matrix , write as a product of cycles, say, . Let the corresponding lengths of these cycles be , and let be the set of complex solutions of . The union of all s is the set of eigenvalues of the corresponding permutation matrix. The geometric multiplicity of each eigenvalue equals the number of s that contain it.[4]

From group theory we know that any permutation may be written as a product of transpositions. Therefore, any permutation matrix *P* factors as a product of row-interchanging elementary matrices, each having determinant −1. Thus the determinant of a permutation matrix *P* is just the signature of the corresponding permutation.

## Examples

### Permutation of rows and columns

When a permutation matrix *P* is multiplied from the left with a matrix *M* to make *PM* it will permute the rows of *M* (here the elements of a column vector),

when *P* is multiplied from the right with *M* to make *MP* it will permute the columns of *M* (here the elements of a row vector):

Permutations of rows and columns are for example reflections (see below) and cyclic permutations (see cyclic permutation matrix).

reflections | ||
---|---|---|

These arrangements of matrices are reflections of those directly above. |

### Permutation of rows

The permutation matrix *P*_{π} corresponding to the permutation : is

Given a vector **g**,

## Explanation

A permutation matrix will always be in the form

where **e**_{ai} represents the *i*th basis vector (as a row) for **R**^{j}, and where

is the permutation form of the permutation matrix.

Now, in performing matrix multiplication, one essentially forms the dot product of each row of the first matrix with each column of the second. In this instance, we will be forming the dot product of each row of this matrix with the vector of elements we want to permute. That is, for example, **v**= (*g*_{0},...,*g*_{5})^{T},

**e**_{ai}·**v**=*g*_{ai}

So, the product of the permutation matrix with the vector **v** above,
will be a vector in the form (*g*_{a1}, *g*_{a2}, ..., *g*_{aj}), and that this then is a permutation of **v** since we have said that the permutation form is

So, permutation matrices do indeed permute the order of elements in vectors multiplied with them.

## References

- Terminology is not standard. Most authors choose one representation to be consistent with other notation they have introduced, so there is generally no need to supply a name.
- Brualdi (2006) p.2
- Brualdi (2006) p.19
- J Najnudel, A Nikeghbali 2010 p.4

- Brualdi, Richard A. (2006).
*Combinatorial matrix classes*. Encyclopedia of Mathematics and Its Applications.**108**. Cambridge: Cambridge University Press. ISBN 0-521-86565-4. Zbl 1106.05001. - Joseph, Najnudel; Ashkan, Nikeghbali (2010),
*The Distribution of Eigenvalues of Randomized Permutation Matrices*(PDF)