Function Factorial

Part of:

package cl-mathstats
( factorial < n > )

Returns the factorial of `n,' which should be a non-negative integer. The
result will returned as a floating-point number, single-float if possible,
otherwise double-float. If it is returned as a double-float, it won't
necessarily be integral, since the actual computation is

(exp (gamma-ln (1+ n)))

Implementation is loosely based on Numerical Recipes in C, section 6.1. On the
TI Explorer, the largest argument that won't cause a floating overflow is 170.