[ANN] euler 0.3

It is my pleasure to announce the release of Euler version 0.3. :slight_smile:

Euler is an arithmetic library for OCaml integers. For more details, please read the repo’s README or browse the docs.

In version 0.3:

  • some amount of optimization (:magic_wand: magic tricks to compute logarithms, see source code of log2sup and logsup);
  • new functions (for instance: root extraction, multiplicative order);
  • Arith.gcdext now returns minimal coefficients and avoids overflows (which was not trivial);
  • factorization now performs some steps of Fermat’s factor searching, which I think closes the gap with Owl (mentioning this because @struktured had asked me how Euler compared with Owl, and Fermat’s algorithm was the only integer arithmetic operation that I found in Owl not provided by Euler).

The full list of changes is found in the changelog, in the repo.

Happy factorizing!

(This is a new topic because I cannot edit the initial one.)


Great stuff, and now that owl is being rebranded / refactored (need to catch up on that), it manifests euler clearly as it’s own thing and not equal to, or part of, a “fat math” library (although it’s sort of an integer fat math library…).

While I don’t have an immediate use case for the library right now I am still going to play with the api this weekend and see if my desktop has any juice to it.

Thanks for the hard work!

Edit: I did not see euler 0.3 on opam yet, even after an opam update (ocaml version 5.1.1).


I did the announcement a bit eagerly, the opam PR is still pending. It should land soon. Edit: it is now available on opam.

I’ve seen the news about Owl, it’s great that they got volunteers to maintain it. :slight_smile: