-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | An assortment of number theoretic functions
--
-- Functions for finding prime numbers, checking whether a number is
-- prime, finding the factors of a number etc.
@package Numbers
@version 0.2.1
module Data.Numbers.Primes
-- | An infinite list of prime numbers, generated as described here
-- http://www.cs.york.ac.uk/ftpdir/pub/colin/jfp97lw.ps.gz
primes :: [Integer]
-- | Checks whether a number is prime
isPrime :: Integer -> Bool
-- | Performs a Miller Rabin Primality Test. According to the Wikipedia
-- it's false positive with a probability of less than 25%. It's never
-- false negative. Use it several times to increase confidence.
isProbablyPrime :: RandomGen g => Integer -> g -> (Bool, g)
-- | This is an assortment of number theorectic functions. As of now it's
-- not very large or fast, but that should improve over time.
module Data.Numbers
-- | Returns the prime factors for a given number
primeFactors :: Integer -> [Integer]
-- | Returns the number of divisors of a number. Uses
-- http://mathschallenge.net/index.php?section=faq&ref=number/number_of_divisors
numOfFactors :: Integer -> Int
-- | Returns the sum of the factors of a number
factorSum :: Integer -> Integer
-- | Returns the factors of a number
factors :: Integer -> [Integer]