A Python class for polynomial arithmetic over GF(2), based on Pythons built-in integers, efficiently implemented in C
Project description
gint
A Python class for (large) polynomials over GF(2), based on Python's built-in integers, efficiently implemented in C
The purpose of this package is to support polynomial algebra over GF(2). The polynomial field is infinite, operations are NOT computed modulo anything.
The package does not depend on numpy nor any other package, instead Pythons built-in variable-sized integers are
used. A Python subclass gint
is derived from the built-in int
where the appropriate
operators +, -, *, /, %, divmod are defined. Exponentiation with standard
integer exponent using ** operator is also allowed. Boolean operators &, |, ^
are supported, even with integers (returning gint). Shift operators with
integer shift are allowed.
There is a performance penalty due to the Python integer design being based on 15- or 30-bit chunks. However the generic implementation in C still performs way better than any pure Python implementation, especially for large polynomials.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file gint-0.2.0.tar.gz
.
File metadata
- Download URL: gint-0.2.0.tar.gz
- Upload date:
- Size: 22.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f9a5f74ceca4758d508dfc4b9be5f39b2ab3e9817b0c944771f1f516cc8c24ab |
|
MD5 | f6a484edb488b75bef03aabcc8bc8abc |
|
BLAKE2b-256 | f42af21f8f143691611baaa8362fe4dba426332bbeb74e99fb923d95aa0ad5ee |
File details
Details for the file gint-0.2.0-cp36-cp36m-win_amd64.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-cp36m-win_amd64.whl
- Upload date:
- Size: 21.0 kB
- Tags: CPython 3.6m, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 41ea46c576d4941da447576b04c40c661e010c1ea2b414ad7cb49df82ee548f9 |
|
MD5 | 725f48be59dbf68fd8203afbed03a4b7 |
|
BLAKE2b-256 | abcf8ecf6200817d7f80b5648b7e9624a5f37f0cccc14e7766c696612dccb9e4 |
File details
Details for the file gint-0.2.0-cp36-cp36m-win32.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-cp36m-win32.whl
- Upload date:
- Size: 18.0 kB
- Tags: CPython 3.6m, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 510e7e0de70629c29d31cebe42414ca7ab48804ad132038c2351adf03a617228 |
|
MD5 | 83636b429a6723f05eab81d2ab2df532 |
|
BLAKE2b-256 | 65ece50d46c85544c39fdb741a814fbf366c0ef6df5af6a8d402904a635cf427 |
File details
Details for the file gint-0.2.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
- Upload date:
- Size: 61.5 kB
- Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d1bba058bcfc91166ffb92c6c3142e50db886af1fe040cff1a2e7f9c9e808f2 |
|
MD5 | eb71dea9c9cdacd7f556a3d9616cd083 |
|
BLAKE2b-256 | a2b389f88e4112e2deb9bbe6b032c53513b74d06d369675579243c94cc9ebca2 |
File details
Details for the file gint-0.2.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
- Upload date:
- Size: 46.9 kB
- Tags: CPython 3.6m, manylinux: glibc 2.12+ i686, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bbddb1c1a6112de3e4cd2755b24788c64ff64c9c6305254d1a71a4578828e77a |
|
MD5 | bfc69b37d7f317dfb6a2dfcfa9ffc3ef |
|
BLAKE2b-256 | 1933be43f172f26abea3250a66bc074c97fc54d8495fb9f3c0dde2d3feb346e9 |
File details
Details for the file gint-0.2.0-cp36-cp36m-macosx_10_9_x86_64.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-cp36m-macosx_10_9_x86_64.whl
- Upload date:
- Size: 21.5 kB
- Tags: CPython 3.6m, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cc5c21905dc36994142520652f59b11ffc3fe4381de8de23307e0a3cc69eabe6 |
|
MD5 | c62812451626f29493fff24f78d36157 |
|
BLAKE2b-256 | b8b7d9fb10ed7f2a9484d845ae251b589f091120e709353b2fb0ba3ccd6c5a5c |
File details
Details for the file gint-0.2.0-cp36-abi3-win_amd64.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-abi3-win_amd64.whl
- Upload date:
- Size: 21.1 kB
- Tags: CPython 3.6+, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 000a343d061004a4f9e1ed852f984b6c04d8f61ebf8f945b3638ea5387b3242a |
|
MD5 | 851af40ba352673e121f8776d21bd310 |
|
BLAKE2b-256 | 08b4e3fac93657883f68461cc2ea8977c42b756847f02def74860d0d81ea5a35 |
File details
Details for the file gint-0.2.0-cp36-abi3-win32.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-abi3-win32.whl
- Upload date:
- Size: 18.1 kB
- Tags: CPython 3.6+, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4dba86f72afaa9a1606e51b8d9f97379fae369b7b6ee80008db894c9375eba65 |
|
MD5 | ce248cdf21753a90770875442e74a6b8 |
|
BLAKE2b-256 | cbacf03f5f0c27daa6ac446ee2cc968718df334d9c50b55b89e81685fb5ec62c |
File details
Details for the file gint-0.2.0-cp36-abi3-musllinux_1_1_x86_64.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-abi3-musllinux_1_1_x86_64.whl
- Upload date:
- Size: 60.9 kB
- Tags: CPython 3.6+, musllinux: musl 1.1+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 01a521a330614b6cf47d7996d89fca0ac1fdece78948a3d4830ac788b09d0ce2 |
|
MD5 | 6fe74e66ecdc7463c424a4a7cdd6655e |
|
BLAKE2b-256 | e21c5960ffbe115adf855d8e1a6910fc17b224b959282f50c8ac182163c0cb15 |
File details
Details for the file gint-0.2.0-cp36-abi3-musllinux_1_1_i686.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-abi3-musllinux_1_1_i686.whl
- Upload date:
- Size: 46.5 kB
- Tags: CPython 3.6+, musllinux: musl 1.1+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 204ee831565597063328c743bc4ea22ffeb6168b05e75e67cb2b56b465c52411 |
|
MD5 | b0be1c6959ef510ffdb08c3d207cef68 |
|
BLAKE2b-256 | 371c44af3d595d1616a4455e3c39453399399e66777728544dcb323979da44c1 |
File details
Details for the file gint-0.2.0-cp36-abi3-musllinux_1_1_aarch64.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-abi3-musllinux_1_1_aarch64.whl
- Upload date:
- Size: 66.7 kB
- Tags: CPython 3.6+, musllinux: musl 1.1+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7f586e4b32d93ad92bb14b770e593840c056433f6beb6bbf35b8a270fed95242 |
|
MD5 | 06a0d9fe8648754f63fc67aa4fb3a6e6 |
|
BLAKE2b-256 | d3c9950a0bea58bc9bfbe3805393c95be09da8873667ef1024717b15eca60573 |
File details
Details for the file gint-0.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 56.7 kB
- Tags: CPython 3.6+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1478b1888201328410ed402dd1d3c398a706df10b75d1530364892d77eedc93a |
|
MD5 | 8e4234bc50302a1035c87a4c61bea54c |
|
BLAKE2b-256 | d22fbb9d5dc686969322ffa00aa7c11ddba9e12361d3f840667b8f6390118c17 |
File details
Details for the file gint-0.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 62.9 kB
- Tags: CPython 3.6+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a8bb2d04eb0f9ad764a0ef85796e12e32c08b078bfe7b04b97ae210a00ba599e |
|
MD5 | 3e3422379b2a59e0b5da05c940fb8933 |
|
BLAKE2b-256 | b2cc0a383f145e2212e8ab4f295c746d30058b042717580f98d3baec523a3838 |
File details
Details for the file gint-0.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
- Upload date:
- Size: 46.0 kB
- Tags: CPython 3.6+, manylinux: glibc 2.17+ i686, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c846b5074a21bd928ab6764c696f1d1e11294669395fb6378c085125ae198fc9 |
|
MD5 | 162bf1de1baaccd7d14e465b509ffb86 |
|
BLAKE2b-256 | 981f69292f6b1bce82fe36683d7c692ab70e872d30279210b50c61964cdb827a |
File details
Details for the file gint-0.2.0-cp36-abi3-macosx_10_9_x86_64.whl
.
File metadata
- Download URL: gint-0.2.0-cp36-abi3-macosx_10_9_x86_64.whl
- Upload date:
- Size: 21.6 kB
- Tags: CPython 3.6+, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 818cc4c1dc2699d696ff6f498508a72513f79308693d5276b69bef41311a2690 |
|
MD5 | 78ad3aefd1b6edfd9bb3c16fffac0274 |
|
BLAKE2b-256 | 419ecfb5eacf0dcd8f08a1a5fa3590259f69ca47f9eca006b1657bae5755ce32 |