ModInt¶
Python implementation of the Chinese Remainder algorithm
- Free software: MIT license
- Documentation: https://modint.readthedocs.io.
Features¶
A usable implementation of the Chinese Remainder algorithm (see https://en.wikipedia.org/wiki/Chinese_remainder_theorem ) under the permissive MIT/Expat licence. Written because none other similarly-licensed ones could be found.
What this does is given two-or-more pairwise coprime bases integers and their corresponding moduli, it finds an integer that yields these moduli for all the bases.
Example¶
Here is an example:
from modint import ChineseRemainderConstructor, chinese_remainder
cr = ChineseRemainderConstructor([2, 5])
# Because 5 % 2 == 1 and 5 % 5 == 0
assert cr.rem([1, 0]) == 5
# Because 8 % 2 == 0 and 8 % 5 == 3
assert cr.rem([0, 3]) == 8
# Convenience function
assert chinese_remainder([2, 3, 7], [1, 2, 3]) == 17
Credits¶
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.