[EMAIL PROTECTED] wrote:

Yes and no.  Standard algorithms for computing and manipulating
combinatorial-sized Integers strongly depend on the properties of
your Integer implementation.

Manipulating lists of prime factors can also be more efficient,
because most of the numbers you deal with are machine-word-sized.

Yep. By the way, if approximations are good enough, the OP could use Gosper's formula:

gosper :: Integral a => a -> a

gosper n | n < 143 = let n' = fromIntegral n
                         g = sqrt ((n' * 2 + 1/3) * pi)
                               * n'**n' * exp (-n')
                     in round g

The accuracy of this approximation increases with n, until you hit the ceiling of whatever your Double implementation can manage (142, typically).

        <b
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to