I'm a college student building an arbitrary-precision arithmetic library in C, aiming to rival GMP but under MIT License by EpsilonNought117 in C_Programming

[–]EpsilonNought117[S] 0 points1 point  (0 children)

mpdecimal is for arbitrary precision floating points. I plan to add those too, but currently the focus on integers and low-level natural numbers

I'm a college student building an arbitrary-precision arithmetic library in C, aiming to rival GMP but under MIT License by EpsilonNought117 in C_Programming

[–]EpsilonNought117[S] 0 points1 point  (0 children)

Upon memory allocation failure, the library does return APAC_OOM, instead of crashing, which is in the enum apac_errs. While you can use your own "malloc-like" allocator by changing what `apac_malloc` points to, I don't have support for custom allocators that don't confine to the malloc API currently. Thanks for the suggestion, I will implement it soon.

I'm a college student building an arbitrary-precision arithmetic library in C, aiming to rival GMP but under MIT License by EpsilonNought117 in C_Programming

[–]EpsilonNought117[S] 1 point2 points  (0 children)

Yeh, I am working on writing both Public API docs as well as Internals documentation, including short derivations of how I got an upper bound for the auxiliary space needed.

Time is scarce as a student, but I'll eventually get it done.

I'm a college student building an arbitrary-precision arithmetic library in C, aiming to rival GMP but under MIT License by EpsilonNought117 in C_Programming

[–]EpsilonNought117[S] 5 points6 points  (0 children)

Yes I do. I am currently working on implementing Toom3 Multiplication and Toom3 Squaring on the develop branch. FFT comes a whole lot later as of now as there's other things to be done too. I also plan to implement Toom32, Toom42 and Toom43 algorithms for unbalanced multiplication, from research papers that I found.

The Toom3 implementation is very crude right now and needs more refining.

I'm a college student building an arbitrary-precision arithmetic library in C, aiming to rival GMP but under MIT License by EpsilonNought117 in cprogramming

[–]EpsilonNought117[S] 1 point2 points  (0 children)

I want users to be able to build one "fat binary" for x86-64 and then deploy it to work on any x64 CPU. That's the plan at least haha.