The 10j symbol is a spin network that appears in the partition function for the Barrett-Crane model of Riemannian quantum gravity. Elementary methods of calculating the 10j symbol require order(j^9) or more operations and order(j^2) or more space, where j is the average spin. We present an algorithm that computes the 10j symbol using order(j^5) operations and order(j^2) space, and a variant that uses order(j^6) operations and a constant amount of space. An implementation has been made available on the web.
Available as a pdf file (133K), a postscript file (403k), a dvi file and eps figures (62K+171K), and a text file (27K).