Take the 2-minute tour ×
MathOverflow is a question and answer site for professional mathematicians. It's 100% free, no registration required.

What is an intuitive way to understand Haar measure as defined for random matrices, say, $N\times N$ orthogonal or unitary matrices?

My understanding for what Haar measure means for $U(1)$ is that it can be thought of as a measure over a uniform distribution of phases on a circle, i.e. a matrix representing $M \in U(1)$ can be parameterized with an angle $\theta$ so that $$d\mu(M) = \frac {d\theta}{2\pi} $$

What is a correct generalization of this intuition to $N>1$? In particular, are there any explicit parameterizations of Haar measure that resemble writing down angles that are uniformly distributed?

One possibility that came to mind is that eigenvectors, rows and/or columns have (generalized) phases that can be thought of as direction angles that are in some sense uniform over $SO(N)$ or $U(N)$? (Edit: seems like this would not be the case for rows and columns.)

Another possibility I have thought of is using Givens rotations to parameterize an orthogonal matrix using the resulting rotation angles that bring it to the identity matrix. Are there any known results about the distribution of the Givens angles? It would seem plausible that they could be uniformly distributed, but given that the Givens rotations are usually applied in a particular fashion to achieve diagonalization, that could introduce correlations that would result in nonuniformity.

(Caveat: I'm new to all this so I could very well be wrong about even trying to conceptualize such a question.)

share|improve this question
What do you mean by random? The rows of a matrix sampled from the Haar/uniform distribution on SO(N) will not, if I recall correctly, be independent. (Although they might be asymptotically independent in the large $N$ limit, I'm afraid I don't recall.) –  Yemon Choi Sep 24 '11 at 23:54
This question is rather incoherently phrased.... –  Igor Rivin Sep 25 '11 at 8:24
I have rewritten the question to try to make it more precise. Hopefully the second time round it will be more sensible. –  Jiahao Chen Sep 25 '11 at 16:49

4 Answers 4

up vote 9 down vote accepted

You want to think of the Haar measure $d\mu(U)$ as a way of measuring uniformity in the group $U(N)$ of unitary $N\times N$ matrices.

To form your intuition, consider $N=1$. You then have $U=e^{i\phi}$, with $0<\phi\leq 2\pi$ and $d\mu(U)=d\phi$ measures the perimeter of the unit circle. This is a uniform measure, because $d(\phi+\phi_0)=d\phi$ for any fixed phase shift $\phi_0$. You could write the requirement of uniformity in the form $d\mu(UU_0)=d\mu(U)$, with $U_0=e^{i\phi_0}$ the unitary matrix corresponding to the phase shift $\phi_0$.

Once your intuition is formed for $N=1$, you simply generalize to $N>1$ using the same definition of uniformity, $d\mu(UU_0)=d\mu(U)$ for any fixed $U_0\in U(N)$. For orthogonal (or symplectic) matrices you use the same definition of uniformity, with $U_0$ now restricted to the orthogonal or symplectic subgroup of $U(N).$

To explicitly write down the Haar measure $d\mu(U)$ in terms of the matrix elements of $U$ is only easily done for a few small values of $N$. (In particular, there is no relationship to random directions of rows or columns, as Yemon Choi pointed out.) You typically do not need such explicit expressions, since integrals with the Haar measure can be evaluated by using only the definition of uniformity.

In response to the follow-up question: If you wish to evaluate Haar-measure integrals of polynomials of matrix elements of $U$, you can use the socalled Weingarten functions.


Here is a Mathematica program to generate these,


If you need an explicit expression for the Haar measure, the steps to take are the following:

1) parameterize your matrix $U$ in terms of a set of real parameters $\{x_i\}$.

2) calculate the metric tensor $m_{ij}$, defined by $\sum_{ij}|dU_{ij}|^2 = \sum_{ij}m_{ij}dx_i dx_j$

3) obtain the Haar measure by equating $d\mu(U) = ($Det $m)^{1/2}\prod_i dx_i$

This is the general recipe. In practice, for many parameterizations the answer is in the literature. In particular, for the Haar measure in Euler angle parameterizations see:



share|improve this answer
This was helpful for me to understand the uniform property of Haar measure. In the context of your answer, I better understand my own question as really a question about how one can explicitly parameterize Haar measure. –  Jiahao Chen Sep 25 '11 at 17:02
I agree that integrating wrt Haar measure is usually simple in the sense that explicit expressions are not needed. However, it would be useful for me as a computational scientist to understand what is going on if I had to write it out explicitly. –  Jiahao Chen Sep 25 '11 at 17:13
Thank you for the comprehensive answer. –  Jiahao Chen Sep 26 '11 at 17:49

Dear Jiahao Chen, if you're interested in explicit expressions of the Haar measure you might want to look at the paper http://arxiv.org/abs/1103.3408 which contains simple parametrizations of U(N) and SU(N), as well as a formula of the normalized Haar measure for arbitrary N. This paper could be interesting for you as the provided framework can directly be applied to compute group integrals. Knowledge of the Weingarten functions is not required.

share|improve this answer

I like the following characterisation. Consider a continuous function $f:G\to\mathbb{R}$ (for any compact Lie group $G$) and the set $T=\{t_g(f): g\in G\}$ of translates of $f$, where $t_g(f)(x)=f(gx)$. Let $C$ be the closure of the convex hull of $T$. It can be shown that $C$ contains a unique constant function, and the value of that function is the inegral of $f$ with respect to Haar measure.

share|improve this answer
Closure - in what topology ? If I take $G=S^1$ $f=sin(x)$, shifts are $sin(x+a)$... how to see what is convex hull ? –  Alexander Chervov Jan 16 '12 at 19:53

In MatLab I generate Haar distributed matrices like this:

m = randn(m,m)% all elements are normally distributed

u= qr(m) % make qr decomposition and what you get is Haar measure on "u"

So the math. statement is that if "m" is normally distributed, then "u" is Haar.

The reason is quite trivial - normal distribution is preserved by unitary transformations.

However righting this I begin to doubt myself about tiny details - depending how they implement qr algorithm the matrix u is not unique, it can be multiplied diag(+-1 ). Neverthelss most probably everything should be correct.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.