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:
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.
$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?
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:16Indeed 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