# Clebsch-Gordan coefficients: General Expression Does Not Match Specific Expression

The expression ClebschGordan[{2, 0}, {4, 0}, {2, 0}] yields the correct result of Sqrt[2/7].

However the expression ClebschGordan[{2, 0}, {l2, 0}, {2, 0}]/. l2 -> 4 yields Indeterminate. Indeed, ClebschGordan[{2, 0}, {l2, 0}, {2, 0}] evaluates to an algebraic expression numerator/((-4 + l2) (2 - l2)!) where numerator/.l2 -> 4 evaluates to Sqrt[2/7]. This is indeed indeterminate.

Interestingly, the expression ClebschGordan[{l2, 0}, {2, 0}, {2, 0}] /. l2 -> 4 gives the correct result, and ClebschGordan[{l2, 0}, {2, 0}, {2, 0}] leads to a different algebraic expression that has the same values for 0<=l2<4 and the correct value for l2->4.

This would appear to be a minor bug, as it violates the simplest symmetry of the Clebsch-Gordan coefficients.

• Weirder even is the fact that substituting your values in the pre-calculated completely symbolic expression returns the correct result: ClebschGordan[{j, m}, {j1, m1}, {j2, m2}] /. {j -> 2, m -> 0, j1 -> 4, m1 -> 0, j2 -> 2, m2 -> 0} returns Sqrt[2/7]. The substitution can also be done stepwise and the correct result is still obtained. Odd behavior indeed. Jan 3 at 19:34

An argument could be made that the result being returned by ClebschGordan[] is generically correct; that is, the expression that comes from the hypergeometric representation of the Clebsch-Gordan coefficient is correct except at a countable number of values.

In particular,

ClebschGordan[{2, 0}, {l2, 0}, {2, 0}] // FullSimplify
Piecewise[{{(Sqrt[5] (-1 + l2) (2 + l2) (4 + l2) Sqrt[Gamma[5 - l2]/Gamma[6 + l2]])/
((-4 + l2) Gamma[3 - l2]), l2 ∈ Integers && 0 <= l2 <= 4}}, 0]


Looking at the expression inside the conditional,

Table[(Sqrt[5] (-1 + l2) (2 + l2) (4 + l2) Sqrt[Gamma[5 - l2]/Gamma[6 + l2]])/
((-4 + l2) Gamma[3 - l2]), {l2, 0, 4}]
{1, 0, -Sqrt[2/7], 0, Indeterminate}


we do get the Indeterminate result noted in the OP, but you should also account for the following:

Limit[(Sqrt[5] (-1 + l2) (2 + l2) (4 + l2) Sqrt[Gamma[5 - l2]/Gamma[6 + l2]])/
((-4 + l2) Gamma[3 - l2]), l2 -> 4]
Sqrt[2/7]


which is the expected answer. In short, the result is usually correct except at l2 = 4, and in that special case, a limit must be taken.

• Very interesting! Is there a way to identify whether a particular argument is an element of that countable set of values where taking the limit is not required? And, at those values where the limit is required, does the ClebschGordan function always yield Indeterminate? Jan 5 at 22:38
• Yes to the second, and no to the first. A careful person might consider taking limits first and then verifying if substitution gives the same result. Jan 6 at 1:30