From Wikipedia, the free encyclopedia
Jump to: navigation, search
Not to be confused with Pfaffian function or Pfaffian system.

In mathematics, the determinant of a skew-symmetric matrix can always be written as the square of a polynomial in the matrix entries, a polynomial with integer coefficients that only depends on the size of the matrix. The value of this polynomial, when applied to the coefficients of a skew-symmetric matrix, is called the Pfaffian of that matrix. The term Pfaffian was introduced by Cayley (1852) who named them after Johann Friedrich Pfaff. The Pfaffian (considered as a polynomial) is nonvanishing only for 2n × 2n skew-symmetric matrices, in which case it is a polynomial of degree n.

Explicitly, for a skew-symmetric matrix A,


which was first proved by Thomas Muir in 1882 (Muir 1882).[dubious ]

The fact that the determinant of any skew symmetric matrix is the square of a polynomial can be shown by writing the matrix as a block matrix, then using induction and examining the Schur complement, which is skew symmetric as well.[1]


A=\begin{bmatrix}  0 & a \\ -a & 0  \end{bmatrix}.\qquad\operatorname{pf}(A)=a.
B=\begin{bmatrix}   0     & a & b \\ -a & 0        & c  \\   -b      &  -c       & 0 \end{bmatrix}.\qquad\operatorname{pf}(B)=0.

(3 is odd, so Pfaffian of B is 0)

\operatorname{pf}\begin{bmatrix}    0     & a & b & c \\ -a & 0        & d & e  \\   -b      &  -d       & 0& f    \\-c &  -e      & -f & 0 \end{bmatrix}=af-be+dc.

The Pfaffian of a 2n × 2n skew-symmetric tridiagonal matrix is given as

0 & a_1 & 0 & 0\\ -a_1 & 0 & b_1 & 0\\  0 & -b_1 &0 & a_2 \\ 0 & 0 & -a_2 &\ddots&\ddots\\
\end{bmatrix} = a_1 a_2\cdots a_n.

(Note that any skew-symmetric matrix can be reduced to this form with all b_i equal to zero, see Spectral theory of a skew-symmetric matrix..)

Formal definition[edit]

Let A = {ai,j} be a 2n × 2n skew-symmetric matrix. The Pfaffian of A is defined by the equation

\operatorname{pf}(A) = \frac{1}{2^n n!}\sum_{\sigma\in S_{2n}}\operatorname{sgn}(\sigma)\prod_{i=1}^{n}a_{\sigma(2i-1),\sigma(2i)}

where S2n is the symmetric group and sgn(σ) is the signature of σ.

One can make use of the skew-symmetry of A to avoid summing over all possible permutations. Let Π be the set of all partitions of {1, 2, …, 2n} into pairs without regard to order. There are (2n − 1)!! such partitions. An element α ∈ Π can be written as


with ik < jk and i_1 < i_2 < \cdots < i_n. Let

\pi_\alpha=\begin{bmatrix} 1 & 2 & 3 & 4 & \cdots & 2n -1 & 2n \\ i_1 & j_1 & i_2 & j_2 & \cdots & i_n & j_{n} \end{bmatrix}

be the corresponding permutation. Given a partition α as above, define

 A_\alpha =\operatorname{sgn}(\pi_\alpha)a_{i_1,j_1}a_{i_2,j_2}\cdots a_{i_n,j_n}.

The Pfaffian of A is then given by

\operatorname{pf}(A)=\sum_{\alpha\in\Pi} A_\alpha.

The Pfaffian of a n×n skew-symmetric matrix for n odd is defined to be zero, as the determinant of an odd skew-symmetric matrix is zero, since for a skew-symmetric matrix, \det\,A = \det\,A^\text{T} = \det\left(-A\right) = (-1)^n \det\,A, and for n odd, this implies \det\,A = 0.

Recursive definition[edit]

By convention, the Pfaffian of the 0×0 matrix is equal to one. The Pfaffian of a skew-symmetric 2n×2n matrix A with n>0 can be computed recursively as

\operatorname{pf}(A)=\sum_{{j=1}\atop{j\neq i}}^{2n}(-1)^{i+j+1+\theta(i-j)}a_{ij}\operatorname{pf}(A_{\hat{i}\hat{j}}),

where index i can be selected arbitrarily, \theta(i-j) is the Heaviside step function, and A_{\hat{i}\hat{j}} denotes the matrix A with both the i-th and j-th rows and columns removed.[2] Note how for the special choice i=1 this reduces to the simpler expression:


Alternative definitions[edit]

One can associate to any skew-symmetric 2n×2n matrix A ={aij} a bivector

\omega=\sum_{i<j} a_{ij}\;e_i\wedge e_j.

where {e1, e2, …, e2n} is the standard basis of R2n. The Pfaffian is then defined by the equation

\frac{1}{n!}\omega^n = \operatorname{pf}(A)\;e_1\wedge e_2\wedge\cdots\wedge e_{2n},

here ωn denotes the wedge product of n copies of ω.

Properties and identities[edit]

Pfaffians have the following properties, which are similar to those of determinants.

  • Multiplication of a row and a column by a constant is equivalent to multiplication of the Pfaffian by the same constant.
  • Simultaneous interchange of two different rows and corresponding columns changes the sign of the Pfaffian.
  • A multiple of a row and corresponding column added to another row and corresponding column does not change the value of the Pfaffian.

Using these properties, Pfaffians can be computed quickly, akin to the computation of determinants.

For a 2n × 2n skew-symmetric matrix A

\operatorname{pf}(A^\text{T}) = (-1)^n\operatorname{pf}(A).
\operatorname{pf}(\lambda A) = \lambda^n \operatorname{pf}(A).
\operatorname{pf}(A)^2 = \det(A).

For an arbitrary 2n × 2n matrix B,

\operatorname{pf}(BAB^\text{T})= \det(B)\operatorname{pf}(A).

Substituting in this equation B = Am, one gets for all integer m

\operatorname{pf}(A^{2m+1})= (-1)^{nm}\operatorname{pf}(A)^{2m+1}.

For a block-diagonal matrix

A_1\oplus A_2=\begin{bmatrix}  A_1 & 0 \\ 0 & A_2 \end{bmatrix},
\operatorname{pf}(A_1\oplus A_2) =\operatorname{pf}(A_1)\operatorname{pf}(A_2).

For an arbitrary n × n matrix M:

\operatorname{pf}\begin{bmatrix}  0 & M \\ -M^\text{T} & 0  \end{bmatrix} = 
(-1)^{n(n-1)/2}\det M.

If A depends on some variable xi, then the gradient of a Pfaffian is given by

\frac{1}{\operatorname{pf}(A)}\frac{\partial\operatorname{pf}(A)}{\partial x_i}=\frac{1}{2}\operatorname{tr}\left(A^{-1}\frac{\partial A}{\partial x_i}\right),

and the Hessian of a Pfaffian is given by

\frac{1}{\operatorname{pf}(A)}\frac{\partial^2\operatorname{pf}(A)}{\partial x_i\partial x_j}=\frac{1}{2}\operatorname{tr}\left(A^{-1}\frac{\partial^2 A}{\partial x_i\partial x_j}\right)-\frac{1}{2}\operatorname{tr}\left(A^{-1}\frac{\partial A}{\partial x_i}A^{-1}\frac{\partial A}{\partial x_j}\right)+\frac{1}{4}\operatorname{tr}\left(A^{-1}\frac{\partial A}{\partial x_i}\right)\operatorname{tr}\left(A^{-1}\frac{\partial A}{\partial x_j}\right).


  • There exist programs for the numerical computation of the Pfaffian on various platforms (Python, Matlab, Mathematica) (Wimmer 2012).

See also[edit]


  1. ^ Ledermann, W. "A note on skew-symmetric determinants"
  2. ^


External links[edit]