14

Let $E$ be a finite dimensional real inner product space. I want to define the angle between two subspaces $E_1$ and $E_2$. This has a fairly obvious meaning if $E_1$ is 1-diemsnional: Take the angle between any non-zero vector in $E_1$ and its orthogonal projection onto $E_2$.

There are a number of other cases that can be treated ad-hoc, if one is a hyperplane, or the dihedral angle between planes in $R^3$.

In general, it isn't quite clear what the right definition is. I see two possibilities:

  1. If $p=\dim E_1\le \dim E_2$, consider the two subspace $\lambda^p(E_1)$ and $\Lambda^p(E_2$ of $\Lambda^p(E)$ (which is also an inner product space, and proceed as above, since $\Lambda^p(E_1)$ is a line.

  2. $Hom(E,E)$ is itself an inner product space with the inner product $$ \langle A,B\rangle=trace A^\top B. $$ Let $A_i$ be the orthogonal projection onto $E_i$ and take the angle between $A_1$ and $A_2$.

Are either of these definitions standard? Are they equivalent (I think so)? Is there another definition, perhaps more immediate?

  • 2
    Didn't you try Google? If you put "angle between subspaces" into Google you will find a ton of stuff there. – Dick Palais Jul 13 '12 at 17:00
  • 3
    I did go to google. I found lots of things, along the lines of principal angles and the product of their cosines.

    I don't really understand what that measures; maybe it is one (or both) of the suggestions above.

    By the way, I have a third possibility: Take the infimum of the angles between pairs of unit vectors, one in $E_1$ and one in $E_2$, and both orthogonal to $$E_1\cap E_2$ (angle $0$ if this set is empy, i.e., if one subspace is a subspace of the other).

    – John Hubbard Jul 13 '12 at 17:16
  • John, what are $\lambda^p$ and $\Lambda^p$? – Vidit Nanda Jul 13 '12 at 19:16
  • I think the two definitions aren't equivalent. If one space is generated by the $p$ first vectors of an ON basis, and $B$ is the matrix of orthogonal proj. on a second same dimension subspace, with obvious 2x2 block partition, then the first angle has cosine $\det(B_{11})$ and the second has cosine $tr(B_{11})/p$. In general, I would say that the most general notion of "angle" is the orbit of the pair of subspaces under the orthogonal group. – BS. Jul 14 '12 at 14:14
  • I am not sure it can be done in general if $E_1$ and $E_2$ are of different dimensionality. Ideally the angle (or rather its cosine) would be given by the scalar or inner product of $\Lambda_1$ and $\Lambda_2$ where each $\Lambda$ is the exterior product of all the elements in some basis of $E_1$ and $E_2$ respectively, normalised to unity. However the standard definition for the inner product does not apply if $\Lambda_1$ and $\Lambda_2$ are not of the same grade. – AlexArvanitakis Jul 15 '12 at 01:18
  • To Vel Nias: the lower case $\lambda^p$ is a typo. The upper case one is the $p$th exterior power.

    Indeed BS is right that the definitions are not equivalent. Alre ady if $v_i$ are unit vectors in $R^n$ that span lines $E_i$, the matricesof orthogonal projection on the lines are $v_i v_i^\top$.

    So $$ \trace (v_1 v_1^\top)^\top v_2 v_2^\top)= (v_1 \cdot v_2)^2. $$ Close but not quite the angle. If we use $I-v_i v_i^\top$,i.e., projection onto the orthogonal to $v_i$, we get $$ trace(I-v_1 v_1^\top)^\top (I-v_2 v_2^\top)=n-|v_1|^2-|v_2|^2+(v_1\cdot v_2). $$ The second definition is junk.

    – John Hubbard Jul 15 '12 at 15:54

3 Answers3

14

There is a standard answer: Principal angles, see http://en.wikipedia.org/wiki/Principal_angles.

Let $p \ge q$ be the dimensions of the two subspaces $E_1$ and $E_2$. Then there is a unique non-increasing sequence $[c_1,c_2,...,c_q]$ with entries in $[0,1]$ (and a matching non-decreasing sequence $[s_1,s_2,...,s_q]$) such that one can have an orthonormal basis for $E$, call it $e_1,e_2,...$, in such a way that one subspace is generated by orthonormal vectors $$e_1,e_2,...,e_p$$ and the other subspace generated by orthonormal vectors $$c_1e_1+s_1e_{p+q},c_2e_2+s_2e_{p+q-1},...,c_qe_q+s_qe_{p+1}.$$ One can see this from the Singular Value Theorem. The principal angles are obviously those angles whose cosines match the $c_i$ values.

This concept captures all of the geometric invariant information relating the positioning of the two subspaces, so any well-defined definition you care to give must be a deterministic function of this sequence of principal angles.

dan
  • 141
  • 1
  • 3
8

I know this is a few years late, but still it might be useful ...

A nice way to express Dan's answer is to let $A$ and $B$ be matrices whose columns form orthonormal bases for $E_1$ and $E_2$ respectively. Then the cosines of the principal angles are the singular values of the matrix $A^TB$ (or of $B^TA$ of course).

JamesM
  • 99
  • 1
  • 5
7

Let me confuse you some more. There is a third possibility that is used frequently in functional analysis. Define

$$\delta(E_1,E_2)= \sup_{x\in E_1,\;|x|=1}{\rm dist}\; (x,E_2). $$

The number $\delta(E_1,E_2)$ is called the gap between $E_1$ and $E_2$. Clearly $\delta(E_1, E_2)\in [0,1]$ so that there exists $\theta\in [0,\frac{\pi}{2}]$ such that

$$\delta(E_1,E_2)=\sin \theta.$$

We define the above $\theta$ to be the angle between $E_1,E_2$. Note that if $\dim E_1=1$, than this definition agrees with your first definition. However

$$\delta(E_1, E_2)\neq \delta(E_2,E_1).$$

Moreover

$$ \theta <\frac{\pi}{2} \Longleftrightarrow \delta(E_1,E_2)<1 \Longleftrightarrow E_1\cap E_2^\perp= 0. $$

Your first definition of angle has a similar property. Finally let me point out that

$$ \delta(E_1,E_2)= \Vert P_{E_2^\perp}P_{E_1}\Vert, $$

where $P_U$ denotes the orthogonal projection onto the subspace $U$, and for any linner operator $A$ we set

$$ \Vert A\Vert =\sup_{|x|=1} |Ax|. $$

  • 1
    If you take the Hausdorff distance between the intersections of $E_1$ and $E_2$ with the unit sphere, you get a very good metric on the space of all subspaces.

    It works even for closed subspaces of Banach spaces.

    This is similar to a symmetrized version of your $\delta$. It isn't quite the angle I am after, because it returns $\pi/2$ when $E_1\subset E_2$ and $E_1 \ne E_2$. I would want the angle between a line and a plane in $R^3$ to be $0$ when the line is in the plane.

    – John Hubbard Jul 15 '12 at 16:02