IsPerfectPower
James Wanless
james at grok.ltd.uk
Wed Mar 16 15:01:12 CET 2011
On 16 Mar 2011, at 13:45, Torbjorn Granlund wrote:
> James Wanless <james at grok.ltd.uk> writes:
>
> On 16 Mar 2011, at 12:17, Torbjorn Granlund wrote:
>
>> James Wanless <james at grok.ltd.uk> writes:
>>
>> Code should go _something_ like this (I don't pretend this is a
>> genuine patch)
>> File mpz/perfpow.c should replace its only function implementation,
>> mpz_perfect_power_p, thusly:
>>
>> I don't follow you at all. We have quite good code for detection of
>> perfect powers already.
>
> This returns the actual root?
> [though, like I said, maybe your version is just as fast :)]
>
> We are not communicating very well, are we? :-(
Yes, I was beginning to get to the same conclusion (I sometimes try to
hurry my responses when it would be better to draw breath)...
>
> I thought the operation you asked for was computation of the nth
> root of
> some (large) integer a given that it is known by the caller that the
> exact result will be an integer.
>
> Was this what you mean?
Yes, exactly, [thank you!!!] (this I _can_ say with confidence). But
note that my method does not require to know or evaluate n in advance
(I believe).
>
> Then you quote mpz_perfect_power_p which does not seem to have much to
> do with this. We have great code for mpz_perfect_power_p (by means
> of a
> quite new mpn_perfect_power_p).
Yes, you are absolutely right - I _don't_ want to deal with
mpz_perfect_power_p [because this just returns a boolean]. In fact the
whole title of this thread [as created by me :-( ] I realize now is a
misnomer. I probably should have called it something like
'PerfectRoot' instead.
>
> (It is quite possible that some code from mpn_perfect_power_p can be
> reused from this new function, but that's a different story.)
Well, hopefully I've been of _some_ use (!), but I think you'd better
not ask me to try to contribute any more... [for one thing GMP already
has so many lovely optimizations that it would take me a long time to
get up to speed on them, if I really tried to get to grips with the
internal workings - I'm just glad I can use it myself as a 'black box'
of some power!]
>
> --
> Torbjörn
James
More information about the gmp-discuss
mailing list