  We present an efficient implementation for the evaluation of Wigner 3j, 6j,
and 9j symbols. These represent numerical transformation coefficients that are
used in the quantum theory of angular momentum. They can be expressed as sums
and square roots of ratios of integers. The integers can be very large due to
factorials. We avoid numerical precision loss due to cancellation through the
use of multi-word integer arithmetic for exact accumulation of all sums. A
fixed relative accuracy is maintained as the limited number of floating-point
operations in the final step only incur rounding errors in the least
significant bits. Time spent to evaluate large multi-word integers is in turn
reduced by using explicit prime factorisation of the ingoing factorials,
thereby improving execution speed. Comparison with existing routines shows the
efficiency of our approach and we therefore provide a computer code based on
this work.
