9 lines
232 B
Text
9 lines
232 B
Text
open integer //arbitrary sized integers
|
|
|
|
decompose_prime n = loop n 2I
|
|
where
|
|
loop c p | c < (p * p) = [c]
|
|
| c % p == 0I = p :: (loop (c / p) p)
|
|
| else = loop c (p + 1I)
|
|
|
|
decompose_prime 600851475143I
|