https://github.com/nucypher/darkintegers.jl
A modulo arithmetic toolbox for integers and polynomials
https://github.com/nucypher/darkintegers.jl
Last synced: over 1 year ago
JSON representation
A modulo arithmetic toolbox for integers and polynomials
- Host: GitHub
- URL: https://github.com/nucypher/darkintegers.jl
- Owner: nucypher
- License: gpl-3.0
- Created: 2018-09-25T14:01:43.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2020-05-18T06:22:52.000Z (about 6 years ago)
- Last Synced: 2025-02-21T04:46:01.418Z (over 1 year ago)
- Language: Julia
- Homepage: https://nucypher.github.io/DarkIntegers.jl
- Size: 464 KB
- Stars: 7
- Watchers: 10
- Forks: 2
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Dark Integers
Master branch: [](https://circleci.com/gh/nucypher/DarkIntegers.jl/tree/master) [](https://codecov.io/gh/nucypher/DarkIntegers.jl)
`DarkIntegers.jl` is a lightweight library for working with unsigned integers and polynomials. It includes:
* Modulo arithmetic for primitive types;
* Regular and modulo arithmetic for multi-limb (fixed size) unsigned integers;
* Arithmetic for cyclic and negacyclic polynomials, including Karatsuba multiplication and multiplication via NTT
It is intended as a partial replacement for [`Nemo.jl`](https://github.com/wbhart/Nemo.jl), which requires compilation of C libraries, and is often slower (in particular, because `DarkIntegers` does not need C calls and heap allocations for operations with multi-limb integers).
**Note:** the library currently does not provide constant-time guarantees for arithmetic operations.