Arbitrary precision arithmetic.
Project description
rithm
In what follows python
is an alias for python3.7
or pypy3.7
or any later version (python3.8
, pypy3.8
and so on).
Installation
Install the latest pip
& setuptools
packages versions
python -m pip install --upgrade pip setuptools
User
Download and install the latest stable version from PyPI
repository
python -m pip install --upgrade rithm
Developer
Download the latest version from GitHub
repository
git clone https://github.com/lycantropos/rithm.git
cd rithm
Install dependencies
python -m pip install -r requirements.txt
Install
python setup.py install
Usage
Python
Arbitrary precision integer
With setup
>>> from rithm import Int
we can:
- construct
>>> Int() rithm.Int(0) >>> Int(9) rithm.Int(9) >>> Int('9') rithm.Int(9) >>> Int('0b1_001', 2) rithm.Int(9) >>> Int('0o11', 8) rithm.Int(9) >>> Int('0x9', 16) rithm.Int(9) >>> Int('1_001', 2) rithm.Int(9) >>> Int('0o11', 8) rithm.Int(9) >>> Int('9', 16) rithm.Int(9) >>> Int(9.99) rithm.Int(9)
- compare
>>> Int(9) == Int(9) True >>> Int(9) >= Int(9) True >>> Int(9) > Int(8) True >>> Int(9) <= Int(9) True >>> Int(9) < Int(10) True
- calculate
>>> abs(Int(-9)) rithm.Int(9) >>> Int(4) + Int(5) rithm.Int(9) >>> Int(9) & Int(11) rithm.Int(9) >>> Int(19) // Int(2) rithm.Int(9) >>> ~Int(-10) rithm.Int(9) >>> Int(19) % Int(10) rithm.Int(9) >>> Int(3) * Int(3) rithm.Int(9) >>> -Int(-9) rithm.Int(9) >>> Int(1) | Int(8) rithm.Int(9) >>> Int(3) ** Int(2) rithm.Int(9) >>> Int(25) - Int(16) rithm.Int(9) >>> Int(18) / Int(2) rithm.Fraction(rithm.Int(9), rithm.Int(1)) >>> Int(2) ^ Int(11) rithm.Int(9)
Exact fraction
With setup
>>> from rithm import Fraction
we can:
- construct
>>> Fraction() rithm.Fraction(rithm.Int(0), rithm.Int(1)) >>> Fraction(1) rithm.Fraction(rithm.Int(1), rithm.Int(1)) >>> Fraction(1, 2) rithm.Fraction(rithm.Int(1), rithm.Int(2)) >>> Fraction(50, 100) rithm.Fraction(rithm.Int(1), rithm.Int(2)) >>> Fraction(0.5) rithm.Fraction(rithm.Int(1), rithm.Int(2))
- compare
>>> Fraction(1, 2) == Fraction(1, 2) True >>> Fraction(1, 2) >= Fraction(1, 2) True >>> Fraction(1, 2) > Fraction(1, 3) True >>> Fraction(1, 2) < Fraction(2, 3) True >>> Fraction(1, 2) != Fraction(1, 3) True
- calculate
>>> abs(Fraction(-1, 2)) rithm.Fraction(rithm.Int(1), rithm.Int(2)) >>> Fraction(1, 3) + Fraction(1, 6) rithm.Fraction(rithm.Int(1), rithm.Int(2)) >>> Fraction(3, 2) // Fraction(1) rithm.Int(1) >>> Fraction(3, 2) % Fraction(1) rithm.Fraction(rithm.Int(1), rithm.Int(2)) >>> Fraction(1, 3) * Fraction(3, 2) rithm.Fraction(rithm.Int(1), rithm.Int(2)) >>> -Fraction(-1, 2) rithm.Fraction(rithm.Int(1), rithm.Int(2)) >>> Fraction(1, 2) ** 2 rithm.Fraction(rithm.Int(1), rithm.Int(4)) >>> Fraction(3, 2) - Fraction(1) rithm.Fraction(rithm.Int(1), rithm.Int(2)) >>> Fraction(1, 3) / Fraction(2, 3) rithm.Fraction(rithm.Int(1), rithm.Int(2))
Rust
Arbitrary precision integer
/// With setup
use std::convert::TryFrom;
use rithm::big_int;
use rithm::traits::{
Abs, CheckedDivAsF32, CheckedDivAsF64, DivEuclid, FromStrRadix, Pow,
RemEuclid, Zeroable,
};
#[cfg(target_arch = "x86")]
type Digit = u16;
#[cfg(not(target_arch = "x86"))]
type Digit = u32;
const BINARY_SHIFT: usize = (Digit::BITS - 1) as usize;
const _: () = assert!(big_int::is_valid_shift::<Digit, BINARY_SHIFT>());
type BigInt = big_int::BigInt<Digit, '_', BINARY_SHIFT>;
/// we can:
/// - construct
assert_eq!(BigInt::zero(), 0);
assert_eq!(BigInt::from(9), 9);
assert_eq!(BigInt::try_from("9").unwrap(), 9);
assert_eq!(BigInt::try_from("0b1_001").unwrap(), 9);
assert_eq!(BigInt::try_from("0o11").unwrap(), 9);
assert_eq!(BigInt::try_from("0x9").unwrap(), 9);
assert_eq!(BigInt::from_str_radix("1_001", 2).unwrap(), 9);
assert_eq!(BigInt::from_str_radix("11", 8).unwrap(), 9);
assert_eq!(BigInt::from_str_radix("9", 16).unwrap(), 9);
assert_eq!(BigInt::try_from(9.99).unwrap(), 9);
/// - compare
assert!(BigInt::from(9) == BigInt::from(9));
assert!(BigInt::from(9) >= BigInt::from(9));
assert!(BigInt::from(9) > BigInt::from(8));
assert!(BigInt::from(9) <= BigInt::from(9));
assert!(BigInt::from(9) < BigInt::from(10));
/// - calculate
assert_eq!(BigInt::from(-9).abs(), 9);
assert_eq!(BigInt::from(4) + BigInt::from(5), 9);
assert_eq!(BigInt::from(9) & BigInt::from(11), 9);
assert_eq!(BigInt::from(1) | BigInt::from(8), 9);
assert_eq!(BigInt::from(2) ^ BigInt::from(11), 9);
#[cfg(target_arch = "x86")] // not supported by `u32` digits because conversion to `f32` is lossy
assert_eq!(BigInt::from(18).checked_div_as_f32(BigInt::from(2)), Ok(9.0));
assert_eq!(BigInt::from(18).checked_div_as_f64(BigInt::from(2)), Ok(9.0));
assert_eq!(BigInt::from(19) / BigInt::from(2), 9);
assert_eq!(BigInt::from(19).div_euclid(BigInt::from(2)), 9);
assert_eq!(BigInt::from(3) * BigInt::from(3), 9);
assert_eq!(!BigInt::from(-10), 9);
assert_eq!(-BigInt::from(-9), 9);
assert_eq!(BigInt::from(3).pow(BigInt::from(2)), 9);
assert_eq!(BigInt::from(19) % BigInt::from(10), 9);
assert_eq!(BigInt::from(19).rem_euclid(BigInt::from(10)), 9);
assert_eq!(BigInt::from(25) - BigInt::from(16), 9);
Exact fraction
/// With setup
use std::convert::TryFrom;
use rithm::fraction;
use rithm::traits::{Abs, DivEuclid, Pow, RemEuclid, Unitary, Zeroable};
type Fraction = fraction::Fraction<i8>;
/// we can:
/// - construct
assert_eq!(Fraction::zero(), 0);
assert_eq!(Fraction::one(), 1);
assert_eq!(Fraction::new(1, 2), Some(Fraction::from(1) / 2));
assert_eq!(Fraction::new(50, 100), Fraction::new(1, 2));
assert_eq!(Fraction::try_from(0.5).unwrap(), Fraction::new(1, 2).unwrap());
/// - compare
assert!(Fraction::new(1, 2).unwrap() == Fraction::new(1, 2).unwrap());
assert!(Fraction::new(1, 2).unwrap() >= Fraction::new(1, 2).unwrap());
assert!(Fraction::new(1, 2).unwrap() > Fraction::new(1, 3).unwrap());
assert!(Fraction::new(1, 2).unwrap() <= Fraction::new(1, 2).unwrap());
assert!(Fraction::new(1, 2).unwrap() < Fraction::new(2, 3).unwrap());
assert!(Fraction::new(1, 2).unwrap() != Fraction::new(1, 3).unwrap());
/// - calculate
assert_eq!(Fraction::new(-1, 2).unwrap().abs(), Fraction::new(1, 2).unwrap());
assert_eq!(Fraction::new(1, 3).unwrap() + Fraction::new(1, 6).unwrap(),
Fraction::new(1, 2).unwrap());
assert_eq!(Fraction::new(1, 3).unwrap() / Fraction::new(2, 3).unwrap(),
Fraction::new(1, 2).unwrap());
assert_eq!(Fraction::new(3, 2).unwrap().div_euclid(Fraction::from(1)), 1);
assert_eq!(Fraction::new(1, 3).unwrap() * Fraction::new(3, 2).unwrap(),
Fraction::new(1, 2).unwrap());
assert_eq!(-Fraction::new(-1, 2).unwrap(), Fraction::new(1, 2).unwrap());
assert_eq!(Fraction::new(1, 2).unwrap().pow(2), Fraction::new(1, 4).unwrap());
assert_eq!(Fraction::new(3, 2).unwrap() % Fraction::from(1),
Fraction::new(1, 2).unwrap());
assert_eq!(Fraction::new(3, 2).unwrap().rem_euclid(Fraction::from(1)),
Fraction::new(1, 2).unwrap());
assert_eq!(Fraction::new(3, 2).unwrap() - Fraction::from(1),
Fraction::new(1, 2).unwrap());
Development
Bumping version
Preparation
Install bump2version.
Pre-release
Choose which version number category to bump following semver specification.
Test bumping version
bump2version --dry-run --verbose $CATEGORY
where $CATEGORY
is the target version number category name, possible
values are patch
/minor
/major
.
Bump version
bump2version --verbose $CATEGORY
This will set version to major.minor.patch-alpha
.
Release
Test bumping version
bump2version --dry-run --verbose release
Bump version
bump2version --verbose release
This will set version to major.minor.patch
.
Running tests
Install dependencies
python -m pip install -r requirements-tests.txt
Plain
pytest
Inside Docker
container:
- with
CPython
docker-compose --file docker-compose.cpython.yml up
- with
PyPy
docker-compose --file docker-compose.pypy.yml up
Bash
script:
-
with
CPython
./run-tests.sh
or
./run-tests.sh cpython
-
with
PyPy
./run-tests.sh pypy
PowerShell
script:
- with
CPython
.\run-tests.ps1
or.\run-tests.ps1 cpython
- with
PyPy
.\run-tests.ps1 pypy
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
Hashes for rithm-9.4.0-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 64057fe36e20017746fa9412c14a7090ad8f5deffcfa9b31fab2a3107c9fc28c |
|
MD5 | 30e91fa4046e00a52604b6d0a30e7c2f |
|
BLAKE2b-256 | 246ad2e86bc6806dfe376f5c36d270ff7e07e574354ffcd4eebad3d2d97a68c6 |
Hashes for rithm-9.4.0-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2c958abc44a417d5498098ea5f5033699bd4e4ac405f8e389214aa59712b7762 |
|
MD5 | b2610c1d3542159206841de60d1b5970 |
|
BLAKE2b-256 | 13d14d48f93e99b9bddf3b3f17167585fda57975c25b6f79cfed474060ae9e5a |
Hashes for rithm-9.4.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5d7310d8018091af9cc601766eeebb9835c3d86dc383c2c9d687d57f8d6e02ed |
|
MD5 | 813db491bfbaaedafced37cd7d3b6eb9 |
|
BLAKE2b-256 | ca2bc9ed1520a2d70b228333aeb64104713195a16a8f92772425fa87f8f95943 |
Hashes for rithm-9.4.0-cp310-cp310-musllinux_1_1_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d7b70573230b21f66848afff8935828329abd6c00a2c5157e7e03e7cda6f169a |
|
MD5 | a9ec1d083f7618525524c1c04b59a5d9 |
|
BLAKE2b-256 | fe398e728bd0312e0f8c1cb658049f0a8f5e1a4f75e70bb859d9fc07c70bf7f5 |
Hashes for rithm-9.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0e3219be65c763f4de81c5e68b13b783fefc4163e2da8d1feb8e1f928608de8d |
|
MD5 | 00a3ee3dd74b63f065aceaa22aae877e |
|
BLAKE2b-256 | ab119c9e66095663fc419e75926e71543aa2f49cc7b770f071a95a6b1b2352b9 |
Hashes for rithm-9.4.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7cb8b69f69ad4c78d3cdc9af08ffe2c48585c70b0a64702750f0ce758d444964 |
|
MD5 | 8bc5e60419b9dfb9f83ce9ccb29dc884 |
|
BLAKE2b-256 | 638f189ce027be39edc9ea920d707a1056c0602a1017a736e7b415c72c39c233 |
Hashes for rithm-9.4.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d2b56731cfb85c3f89086dda1761ba7abfef1454e7d5ed1e3f0ba8f2d404fc47 |
|
MD5 | 3b7773316f51ea3aec87f9ef4cf2b7f6 |
|
BLAKE2b-256 | a859bdd1db36704d44aa7952586fa657209139ece9401a6f0eec4107120f75ce |
Hashes for rithm-9.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9464240a7b5cc554ff605ae3105f6025286f4f7f22995e329c46d1d028a55c0a |
|
MD5 | 2a614ed203cd960028e90e7536ca9487 |
|
BLAKE2b-256 | c175b04839ebff740a703b647458e878862f0d627083ed49fbe2fc32d835e7a3 |
Hashes for rithm-9.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 743bf01cb33c2997728eac74f10a8952a13656622ce74ba15c3d828251130f59 |
|
MD5 | 72c39fe6d2b131cdabcab6912fdd22e7 |
|
BLAKE2b-256 | b316143e2425b71663355e32ed90addaaf1c945f9468b3f85fb8432c0e91b2f3 |
Hashes for rithm-9.4.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b682e633b25c3fa4141133b3db12bf450aeff967ae3961c9e73443aa92655542 |
|
MD5 | f22caf306e3274b94d05a763fedde0dc |
|
BLAKE2b-256 | 041feb728fee15f5a877468256c64c6a88f69e5959f4c2a32c5ceeba8a59426f |
Hashes for rithm-9.4.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fc74119af6fcd57e1ca8ad41cba6ae96aa6fa99dd49b02fa0560805a43ddb3a3 |
|
MD5 | ee1bb009089e08f84bf833404b1a5756 |
|
BLAKE2b-256 | 0a07984a486bfdd9fb55a01765816843c16a1ca41a592ed13b5baec4dbd13a04 |
Hashes for rithm-9.4.0-cp310-cp310-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 656f5d1d8d165d59e0362a29999d0c2e8e4fea886bff03ce7e0a3918d3421016 |
|
MD5 | 840419641c14f7871521b4c2413f8bc2 |
|
BLAKE2b-256 | f25b54180516606f3d750bbd1c295b6d2579e16cc06ed4199149d80688f2fd51 |
Hashes for rithm-9.4.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f9c71b6e6ef4228ad4bb035327255387cd10315e0a8005d584f449ace952ca7d |
|
MD5 | 00a12f25f0ba036713022da185fb1bb1 |
|
BLAKE2b-256 | ec831aaa7f24c27747cc6cfad85f10baa2ff70ed3972c583766e46d357f7a7a3 |
Hashes for rithm-9.4.0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2df958e1a54f71c0ec2c6720e45f63261d3e4b03a0ed7577df0864f84e9037c2 |
|
MD5 | de41220928c81c5a48a283ed4bb158ff |
|
BLAKE2b-256 | 344d17c842966075bc4885797d801312667e1fc949b49873a68429f093fc5b5f |
Hashes for rithm-9.4.0-cp39-cp39-musllinux_1_1_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8fe6291b0da9bcafd8caded5fb954dc50e805414fd74b89ee8fdc003a7595057 |
|
MD5 | 7f9ee873dead8cbf10966ba55ee43798 |
|
BLAKE2b-256 | 62cf70847dfcd3ec28493286ff5026fbedfccf84eb2cd1f7e8cc6349a65760ce |
Hashes for rithm-9.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d8ce62e74f15e5ceb590a48b6e861a2295aba570d183c3f3942ca66c0fd352b0 |
|
MD5 | a15c598d7e3dd1ddb067d855274754df |
|
BLAKE2b-256 | 976a7fbf4c1998b5d1c53621c2b460b0de1d37e41a2c543619bca808ee1e89fa |
Hashes for rithm-9.4.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 68e1ace03df7de1ebfa5352390ecc004bc89942455a28332f1acaf685edc6344 |
|
MD5 | 8b1d9f91a1de79ee93a0bc6fa8769576 |
|
BLAKE2b-256 | d55c15eb02682fadb3eaff15cbb62822906ef90a01d93f47d80f785fd25cb9db |
Hashes for rithm-9.4.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d606fc7385e80c875b9de20525cd6a4418e98da7fcde754c9cbfe2316bf7f9fa |
|
MD5 | 141a2f30d87756efce3d03bdbcfbad10 |
|
BLAKE2b-256 | b4393b0d71a831d5c8bfde6ebea5e3324e6524501d74cf211d6298efd036e55e |
Hashes for rithm-9.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 79029a56f786b45ab8f85e0c1779c12d9abee502b48775fadea0ac33e4ac0014 |
|
MD5 | b6aa0edcff9d36522593cb8d781ffbcb |
|
BLAKE2b-256 | 187e534491bf174017e10b0b09c50ce420bc625aa6eeb0666c7880401c631ab3 |
Hashes for rithm-9.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77e5516db065a084c9b425936bb9cd04c8d91e5e63dda9f75d3ea931220a4b9c |
|
MD5 | 40f71ce05e04658e7376a1931490bb1c |
|
BLAKE2b-256 | acbb2bdfdf8c365adf22ecf985ca1595fb8daf038bd431ec428fd7d48f0016ff |
Hashes for rithm-9.4.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5337ba4bf4dde29c7a29e5fdde8611311619f83369570eee9d14febb3093a7ce |
|
MD5 | 001323fe88e768c3d3a4a3c118878675 |
|
BLAKE2b-256 | 444ccf5775556bab5274345911db80e635d946e5e352a5a65d25f257cd156c02 |
Hashes for rithm-9.4.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9808da349b8a46e4520b4ccadd1b3c5758f83d95b6e25317b3a0469f1eceea1b |
|
MD5 | 639d69e952ec0658c27c47b90d3c725b |
|
BLAKE2b-256 | 402914031f4eddb3f494f48260ba7e791308d12f86b4ef644e1a84e9e1cab446 |
Hashes for rithm-9.4.0-cp39-cp39-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c749db46bf344d43b36cf6d5924b1d440fe8db00540af09bb9efe7307f950580 |
|
MD5 | d7a9449db30b2ecb6d4d5105780560ef |
|
BLAKE2b-256 | 5262cbc475920664c626fa7198189e422f5bd060031599914b9d28760c00171a |
Hashes for rithm-9.4.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fa019cd282e058b469c011ceb74dfb5ab6e00d8044d409a100b9e3067e6ac9e1 |
|
MD5 | b1079008fae607fcfa762336b65a2223 |
|
BLAKE2b-256 | 2cd6691ba935177a187788801c4d1ce8e15fd06ecf1850f320ed2ec9a4068f4e |
Hashes for rithm-9.4.0-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e62cb227d86fef4224fea3b5005899d89a1905753294e5aebd8baea0daf28332 |
|
MD5 | 4dd6d7a23a508c5b97a52079792fce91 |
|
BLAKE2b-256 | df9d3e4d2a7337e208e55e85e87999c31a068aa2db019ff82f1455dec47955e7 |
Hashes for rithm-9.4.0-cp38-cp38-musllinux_1_1_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90ff84006aff5672f1493a9225c97fd1fa48297e221e153bc151ca6e9ee31f51 |
|
MD5 | befa8c3c198161bc02c0ba1715aaf10f |
|
BLAKE2b-256 | 1775b81de915829a52923ceb2e9bb4d1af7197e85c4498b8b622f1498c04bbc3 |
Hashes for rithm-9.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4fa40c9beaa017a1f80254bf9c1b688265f322d2f2e850cc457639c69f793a8d |
|
MD5 | ad9f18823e53e2b051309cca88799e14 |
|
BLAKE2b-256 | c3f0c8df3fd11133076478b87cca4dccb0a47a38470cc0bf6d33772d651f2499 |
Hashes for rithm-9.4.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28838ca73729a161a8cf39690faf14e812e39879aca707db5e4953ca6fabdf10 |
|
MD5 | 2ec97303baefb80e86a6e8e345d9deed |
|
BLAKE2b-256 | dfef76eb2c3e3a14099e01cadb1979d0ade9f142faa24899baef75564b2e13e4 |
Hashes for rithm-9.4.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fe3b2cb9ae7f284986dfb92d325f45b5ec9d1e1591316732bd56718c7e416a7b |
|
MD5 | 09797ab3bf97220670773e2d3353ba11 |
|
BLAKE2b-256 | 80fb8d1726606fdee82067123ae63455bcdfa63d30f8594489fa1bd6ab96f782 |
Hashes for rithm-9.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ee7841866051d5ca44fa3220d01492dc6bd2f6f89e9ab2f47ef66ae439e9047c |
|
MD5 | ab2919eda26edce1700cc1fea98870bd |
|
BLAKE2b-256 | e092bf348d02d0bf629a97485e0c07384c30d61c794589fab2abc15ee611c7ef |
Hashes for rithm-9.4.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 661905e17396269d10ad8de3db86e9b0b2072bd980fa0eb9d6d3529a2f815c57 |
|
MD5 | 76c44279e1054a73a09df69b1f18213c |
|
BLAKE2b-256 | 51933b49cc45f6623756cfdf5fd739eb77c4967c79a77ce1967873243ce888bc |
Hashes for rithm-9.4.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a810da66b597cb3ada46851ab41825786e2d3b9be8f7c6dbbfcd9642f8c6ec7f |
|
MD5 | 1132c40a7ead346270cfaa50306a9dd8 |
|
BLAKE2b-256 | 0707128fde9fa2a843346b25abcc3aefae32fa3c0af974018ab0e6249ac9dd56 |
Hashes for rithm-9.4.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2d343004998e122f3db767f375b53ed57cc7215dbc68de83e9e1822689174a9 |
|
MD5 | 40b2634f71e47ec10d663fe18d3fdd01 |
|
BLAKE2b-256 | 07352c99c1dc00dc12ab47c490c55f23ac61887aa2fb0037c6b21a0c55ef10bc |
Hashes for rithm-9.4.0-cp38-cp38-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f07e8c1c8e696fc4a9193de11228048112e88c72390b4b8854e7c28d9c598d1a |
|
MD5 | 48ee9470302d9bc5769741df18ac83ec |
|
BLAKE2b-256 | 100436e35b070d4fffa535631b9bf7cdfcf776b8a6ca8437677e441e306594f5 |
Hashes for rithm-9.4.0-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e471080b138dfee738ef9bfeb02441534f85f7241dec0250767383f9f09d4f03 |
|
MD5 | 4ebe6ec22c5757ec0a3f29227817e301 |
|
BLAKE2b-256 | f268bdf67e7dc64eb78f64e42ab5866a021a3d49a913c8271584100a3f81456c |
Hashes for rithm-9.4.0-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 16ab9ff011cc87c7ab09a083a857cd04bf5f442ee9a0fb707f181b254ee2be3d |
|
MD5 | ee162f08da65f33abca422f94fa6923c |
|
BLAKE2b-256 | 7a253d3a33df53433673fa2c4ea2cb0f1d9256ae621b0c8907989ab067a2fd00 |
Hashes for rithm-9.4.0-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3308558db1b1c6d7c014bbe20211bcc7be4d6376e09ed3ad26dd9e4761f4433e |
|
MD5 | 40bc1f8e7270d92661db1df18fcb973d |
|
BLAKE2b-256 | b9a4d5d938ac1ecd749b02c3a3d94c983559892e788dbc9b6653e9d2398a1982 |
Hashes for rithm-9.4.0-cp37-cp37m-musllinux_1_1_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2275f638e6fbda638cad56418caa939e82db99e810555bf54d13660a6c706580 |
|
MD5 | fe8a9778ffbf8ca1425ff0f94e467e9e |
|
BLAKE2b-256 | e404527886816c8eedf105bb38bc544c99c4109a1d08c9bb36445fa7454da007 |
Hashes for rithm-9.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 75cf041e540c527b81162dce79ce8b2e7289564b99bee629f7ee61f394b4d227 |
|
MD5 | f5efec47fa480c7f6ec46e3b1330c724 |
|
BLAKE2b-256 | c5040ef7b90433afd9c5ca8eb9f4f577ffbc3fed033cf26e13bbe4c7c291a782 |
Hashes for rithm-9.4.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a39efd2323ac50da7dd7f80a1e9ecf5b560706c224f8af0836cc101f9c783efc |
|
MD5 | 9723cb243d9abc716db9dd7b2ea015fa |
|
BLAKE2b-256 | b1e96bc4350abd43158657776c94670873566c37e9a54a56bd11a44e9d8a6938 |
Hashes for rithm-9.4.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 96bb9c60de920a0733d3fdb9b1a6639749d6ab80c120b6a1b1618972446f4b0c |
|
MD5 | 09eb32b8a9a35fde11383afb80a244cd |
|
BLAKE2b-256 | 096923024e3691bf4b90a4c851c978a564632b64fdd478aee25534db6b1a7510 |
Hashes for rithm-9.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb5f0125b01ef9adbb4244e8f4ec351930825d468d495c79180760f6ee6e93d0 |
|
MD5 | 1340d990f2ba91bf849b7a7eebb634d9 |
|
BLAKE2b-256 | f601b98909df375ffc13986935e166459a1cdfbd5bff45d82278cc87c53928e6 |
Hashes for rithm-9.4.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1b6868ff54c2db5250176ab6a13923cab7851c917af5da6ee26026003c2ad1eb |
|
MD5 | 19ed812cff9c740634cd8935fef8c585 |
|
BLAKE2b-256 | 695f89a4010e2ef67e02d2a72c4576fe1c93a5f5fdce8d7cca316eda662a5331 |
Hashes for rithm-9.4.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8a778a4e3ecdee937292b68eeefcda26129a489f8fb9bffa49809ea7ed814d56 |
|
MD5 | 9aca502dd15e827386cd0cf369ecc2bf |
|
BLAKE2b-256 | 790e66a255a4dc7ea9d7ab465b4f117b980f367b72ddf8903ef0de485f8a51b1 |