The mathematics behind Clebsch-Gordan Coefficients In quantum physics we have to work a lot with Clebsch-Gordan coefficients and generalizations like the Wigner 3j,6j, and 9j symbols. In our coursework we are taught that the coefficients are coupling constants between angular momenta, or more specifically, transformation constants between one tensor space basis (m,m' - individual spin as basis vectors) and another tensor space basis (j,m total spin as basis vectors). 
What I don't understand is what this "coupling" represents in an abstract mathematical setting. We are taught to think of spin as representation of some abstract Lie Group. How does one "couple" two Lie groups together? From whence comes more complicated constructs like 6j or 9j coupling coefficients?
I'm sorry if the question is a little broad and/or unclear, I have (what I believe) to be a good intuitive understanding of spin, however I know almost nothing of the true formalism behind the concept so any resources to remedy this would be greatly appreciated. 
 A: The C-G coefficients appear in the following way: if you have a (semisimple) group $G$ and two simple $G$-representations $V$ and $W$, you can form the tensor product $V\otimes W$. This is, in general, not a simple representation so it has decomposition as a direct sum of simple reprsentations. The C-G coefficients are the multiplicities with which simple modules appear in this decomposition.
If you know what this means, this might help: the C-G coefficients are the structure constants for the ring structure in the Grothedieck group of your group with respect to the basis formed by the simple representations.
A toy example: take $G=S_4$, the symmetric group of order $4$, and let us work over the complex numbers. Let us compute (in GAP) the character table of $G$:
gap> g := SymmetricGroup(4);;
gap> tbl := CharacterTable(g);;
gap> Display(tbl);
CT1

     2  3  2  3  .  2
     3  1  .  .  1  .

       1a 2a 2b 3a 4a
    2P 1a 1a 1a 3a 2b
    3P 1a 2a 2b 1a 4a

X.1     1 -1  1  1 -1
X.2     3 -1 -1  .  1
X.3     2  .  2 -1  .
X.4     3  1 -1  . -1
X.5     1  1  1  1  1

We see here the 5 irreducible characters, corresponding each to a simple representation. Let us pick the second and the third one:
gap> chi := Irr(tbl)[2];
Character( CharacterTable( Sym( [ 1 .. 4 ] ) ), [ 3, -1, -1, 0, 1 ] )
gap> tau := Irr(tbl)[3];
Character( CharacterTable( Sym( [ 1 .. 4 ] ) ), [ 2, 0, 2, -1, 0 ] )

and let us have GAP compute the character of the tensor product of the corresponding representations:
gap> sigma := chi * tau;
Character( CharacterTable( Sym( [ 1 .. 4 ] ) ), [ 6, 0, -2, 0, 0 ] )

Finally, let GAP decompose sigma as a sum of irreducible characters:
gap> ConstituentsOfCharacter(sigma);
[ Character( CharacterTable( Sym( [ 1 .. 4 ] ) ), [ 3, -1, -1, 0, 1 ] ), 
  Character( CharacterTable( Sym( [ 1 .. 4 ] ) ), [ 3, 1, -1, 0, -1 ] ) ]

We see that sigma is the direct sum of the two simple modules of degree $3$.
This gives us a little bit of the set the C-G coefficients for $G$.
