Finding All Irreducible Representations of $SO(3)$ I've read that one may prove that all irreducible representations of $SO(3)$ are tensor product representations of the fundamental representation (or tensor product representations of the spin 1/2 representation if we're allowing projective reps). How would one go about proving this? 
I've only ever done representation theory from a physicist's viewpoint, so I feel like I'm missing the tools to rigorously show it! Many thanks.
 A: I think I can help with this one, too, though I'm only going to give a sketch.  I think the details are worked out somewhere in the lecture notes I linked to in my comment on your last question.
First you should understand why the corresponding result (that every irrep is the tensor product of the fundamental representation) for $SU(2)$ is true.  To begin, note that any representation of $SU(2)$ restricts to a representation of a $U(1)$ subgroup, so by decomposing a $SU(2)$ irrep into $U(1)$ irreps we see that every irrep of $SU(2)$ has the form $e^{i\theta k_1} \oplus \ldots \oplus e^{i \theta k_n}$.  Here the $k_i$'s are integers, and conjugating with the matrix
$$\left(\begin{array}{cc} 0 & 1 \\ -1 & 0 \end{array}\right)$$
shows that $-k_i$ is an exponent whenever $k_i$ is.  If the chosen $U(1)$ subgroup is generated by the basis vector $X_1$ for the Lie algebra of $SU(2)$, then it turns out that the eigenvalues of $X_1$ are simply $k_i/2$ (the $2$ comes from the fact that $SO(3)$ is a simply connected Lie group with the same Lie algebra as $SU(2)$ and $SU(2)$ double covers $SO(3)$).  Using the other two directions in the Lie algebra of $SU(2)$, one can construct operators $X_+$ and $X_-$ (the "raising and lowering" or "creation and annihilation" operators) such that $X_+$ sends any $k/2$-eigenvector of $X_1$ to either $0$ or a $k/2 + 1$-eigenvector of $X_1$ and similarly for $X_-$.
This tells you exactly what irreps of $SU(2)$ have to look like: pick an eigenvector $v$ of $X_1$ whose eigenvalue $n/2$ is as large as possible (a "highest weight" vector), and repeatedly apply $X_-$.  You'll generate a list of eigenvectors of $X_1$ with eigenvalues $-n/2, -n/2 + 1, \ldots, n/2-1, n/2$.  None of this depended on which $X_1$ we started with, so in fact this sequence of numbers determines the irrep up to conjugation.  Moreover any such sequence can be obtained by tensoring the fundamental representation (direct calculation), so we're done.
If you believe all of this works for $SU(2)$, then $SO(3)$ is easy.  Every $SO(3)$ irrep gives rise to a $SU(2)$ irrep via the double cover $SU(2) \to SO(3)$, so we have already constrained the list of possible $SO(3)$ representations dramatically.  The list can be restricted further by noting that a representation of $SU(2)$ descends to a representation of $SO(3)$ if and only if $-1$ goes to the identity, and this holds only when the largest eigenvalue $n/2$ is an integer, i.e. the dimension of the representation is odd.
