package euler

  1. Overview
  2. Docs
An arithmetic library for OCaml's native integers

Install

Dune Dependency

Authors

Maintainers

Sources

euler-0.3.tbz
sha256=b6e887239f69177c121b9b88a48d27abc6b5dd597e5416c16bb2871f29a390ff
sha512=3627c597a6976e88cabceebf501be9f3bc52f26f233a9cac9c1967ad3d385d59c46a803251e265710d665ef949d057733e67cc57458c570288bad33c7445a63b

doc/CHANGES.html

0.3

  • optimize several functions in Arith:

    • mul
    • pow for small bases
    • log2 and log2sup (5x faster)
    • log and logsup for bases 2, 16, 64, 10, 60
    • valuation_of_2
    • number_of_bits_set (7x faster)
  • fix overflow in Arith.mul_quo (renamed to mul_equo) and Arith.gcdext
  • let Arith.gcdext return minimal coefficients
  • add Arith.sdiv
  • add Arith.mul_{ediv,erem}
  • add Arith.{gcd,gcdext,lcm}_of_seq
  • add functions related to integer powers and roots:

    • Arith.isqrt_if_square
    • Arith.is_pow
    • Arith.is_pow2
    • Arith.kth_root
    • Arith.is_kth_pow
    • Arith.smallest_root
  • add some classical arithmetic functions whose computation uses factorization:

    • Primes.divisor_pairs
    • Primes.sum_of_divisors
    • Primes.jordan
    • Primes.carmichael
    • Primes.mobius
    • Primes.derivative
  • add Primes.order, Primes.order_with_known_multiple, Primes.order_mod_prime_pow
  • Primes.factors now performs some iterations of Fermat’s factor searching
  • BREAKING: rename sequence-related functions:

    • Arith.sum_seq -> sum_of_seq
    • Arith.prod_seq -> prod_of_seq
    • Primes.prime_seq -> gen_primes
    • Primes.primes -> iter_primes
  • BREAKING: rename logarithm functions:

    • Arith.log -> Arith.ilog
    • Arith.log2 -> Arith.ilog2
    • Arith.logsup -> Arith.ilogsup
    • Arith.log2sup -> Arith.ilog2sup
  • BREAKING: rename Arith.mul_quo to mul_equo
  • BREAKING: add notation Arith.( ** ) for integer exponentiation
  • fix Arith.range_down not being exposed in the interface

0.2

  • add Primes.prime_seq
  • lower the minimal supported version of OCaml to 4.07

0.1

  • First release
OCaml

Innovation. Community. Security.