Skip to main content

A set of functions for miscellaneous arithmetic calculation

Project description

arith_lib: A set of functions for miscellaneous arithmetic calculation

List of implemented functions

  • gcd(*arg): Greatest common divisor of a set of integers

  • lcm(*arg): Least common multiple of a set of integers

  • bezout(a, b): Provides a particular solution to diophantine equation a.u+b.v=gcd(a, b)

  • modulo_inv(a, b): Inverse of a modulo b

  • chinese_remainder(r, m): Solves the modular system:

    • x = r1 mod m1
    • x = r2 mod m2
    • ...
    • x = r_n mod m_n
  • gene_pseudo_prime(): A generator which provides 2, 3, 5 and then all integers non multiple of 2, 3, 5

  • is_prime(n): Check for n primality. Miller-Rabin primality test is used

  • next_prime(n): Provides the first prime greater or equal to n

  • previous_prime(n) Provides the first prime smaller or equal to n

  • prime_factorization(n, frmt): Prime factorization of n

  • divisors(n): Provides all divisors of n

  • phi(n): Euler totient function

  • moebius(n): Moebius function

  • to_base(n, *kwarg): Conversion from base 10 to base B

  • frobenius(*A, n=None): Solves equation a1.x1 + a2.x2 + .. + ap.xp = n or finds the greatest n for which this equation has no solution. a1, a2, ... are positive integers. x1, x2, ... are the unknowns, positive integers

  • isqrt(n) Provides the integer part of the square root of n where n is an integer of any size

  • is_miller_rabin_witness(a, n) Return True if 'a' is a Miller-Rabin witness for n

  • get_random_prime(nbits, lessthan) Provides a random prime with exactly or at most 'nbits' bits

  • is_strong_pseudoprime(a, n) Return True is n is a strong pseudo prime to base 'a'

Installation

pip install arith_lib

Utilization

from arith_lib import *

>>> gcd(15, 20) 5

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for arith-lib, version 2.0.0
Filename, size File type Python version Upload date Hashes
Filename, size arith_lib-2.0.0-py3-none-any.whl (16.2 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size arith_lib-2.0.0.tar.gz (14.8 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page