Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No powm or invert? #201

Open
thehans opened this issue Oct 3, 2019 · 2 comments
Open

No powm or invert? #201

thehans opened this issue Oct 3, 2019 · 2 comments
Assignees

Comments

@thehans
Copy link

thehans commented Oct 3, 2019

I just stumbled across this project and was interested to test it out and compare performance with GMP. I am writing software to factor Mersenne numbers, and my use case deals mostly with 1 to 2 limb(64bit) values, so mppp being optimized for small values sounded ideal. But I make heavy use of modular exponentiation (mpz_powm), plus a few calls to mpz_invert.

Searching through the documentation I didn't immediately see any reference to either. Are these planned to be added eventually?

@bluescarni
Copy link
Owner

Hi @thehans,

those functions are not in mppp because I haven't had much use for them so far. It should not be an issue to add them for the next release.

@bluescarni bluescarni self-assigned this Oct 4, 2019
@bluescarni
Copy link
Owner

@thehans just a quick update. I haven't had much time to look into this feature in the last couple of months, so I think it is unlikely it will end up in mp++ 0.18 (which I would like to release relatively soon for other reasons).

I did some preliminary work in #205 with the implementation of (modular) squaring but I really need to go and study in some detail what GMP is doing before coming up with a subpar solution. This is an area of multiprecision arithmetics which I hadn't really much looked into before, and I really need to study the topic a bit more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants