Description
A type for integers modulo some constant.
Description
A convenient type for working with integers modulo some constant. It saves you from manually wrapping numeric operations all over the place and prevents a range of simple mistakes. Integer Mod 7
is the type of integers (mod 7) backed by Integer
. We also have some cute syntax for these types like ℤ/7
for integers modulo 7.
README.md
Modular Arithmetic
This package provides a type for integers modulo some constant, usually written as ℤ/n.
Here is a quick example:
>>> 10 * 11 :: ℤ/7
5
It also works correctly with negative numeric literals:
>>> (-10) * 11 :: ℤ/7
2
Modular division is an inverse of modular multiplication. It is defined when divisor is coprime to modulus:
>>> 7 `div` 3 :: ℤ/16
13
>>> 3 * 13 :: ℤ/16
7