Portability | Non-portable (GHC extensions) |
---|---|

Stability | Provisional |

Maintainer | Daniel Fischer <daniel.is.fischer@googlemail.com> |

Safe Haskell | None |

Low level gcd and coprimality functions using the binary gcd algorithm. Normally, accessing these via the higher level interface of Math.NumberTheory.GCD should be sufficient.

# Specialised GCDs

gcdInt :: Int -> Int -> IntSource

Greatest common divisor of two `Int`

s, calculated with the binary gcd algorithm.

gcdWord :: Word -> Word -> WordSource

Greatest common divisor of two `Word`

s, calculated with the binary gcd algorithm.

## GCDs for unboxed types

gcdInt# :: Int# -> Int# -> Int#Source

Greatest common divisor of two `Int#`

s, calculated with the binary gcd algorithm.

gcdWord# :: Word# -> Word# -> Word#Source

Greatest common divisor of two `Word#`

s, calculated with the binary gcd algorithm.

# Specialised tests for coprimality

coprimeInt :: Int -> Int -> BoolSource

Test whether two `Int`

s are coprime, using an abbreviated binary gcd algorithm.

coprimeWord :: Word -> Word -> BoolSource

Test whether two `Word`

s are coprime, using an abbreviated binary gcd algorithm.