-
Notifications
You must be signed in to change notification settings - Fork 16
[WIP] Add implementation of partial sqrt algorithm #51
base: trunk
Are you sure you want to change the base?
Conversation
I am ready to merge this. If anyone has any comments on it, now is the time. |
nf_elem/doc/nf_elem.txt
Outdated
|
||
int nf_elem_is_square(const nf_elem_t b, const nf_t nf) | ||
|
||
Return \code{1} if \code{b} is a square. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perhaps document that this isn't any faster than actually computing the square root (as presently implemented).
I just added the WIP back as I have found another case that hangs. I have no idea why at this point. |
another regression test.
Is there a description of the representation used by the library? It seems not to keep an interval or other way to distinguish the root of the polynomial. Does it make the naïve |
Co-authored-by: François Bobot <francois.bobot@cea.fr>
That's correct. We implement number fields without embedding. If you wanted a \bar{Q} implementation you might look at Fredrik Johansson's Calcium library. I'm not sure what you are asking about P(X^2). Could you be more specific? |
Even if Calcium library is interesting (thank you for pointing it!) I'm not sure I'm looking at embedding, but I must look more into it ( EDIT: Calcium was the answer to my problem and it is a great library! Thanks a lot. |
This works ok for small degree, but for large degree and large input it can take too long to find a b(n) it can factor.
Another approach is needed.