Hi,
At 11:52 AM 10/2/98 GMT, Brian J Beesley wrote:
>I think the critical point which I don't quite understand is,
>do you do the shift in k bits & shift out 2k bits for each iteration
No. The shift is only done before the first iteration.
>I understand that the overhead is minimal, but is there
>really going to be anything left in the result field after you've
>thrown away all those bits ... there's only N bits in the
>whole residual!
The beauty of operating mod 2^p-1. You don't lose any bits, they simply
wrap around and become the least-significant-bits. In assembler terms,
it's like a rotate instruction rather than a shift instruction.
>George, you are a *real* expert in this area
You are too kind. I feel confident when the heavyweights like
Richard Crandall and Peter Montgomery don't see any problems.
>On an operational matter, IMHO it might be a good policy to have
>"classic" Pentiums prefer double checks whilst PIIs prefer primary
>tests - or have the break-point based on CPU speed (150 MHz?)
The default will be: Less than a P50 you get factoring. Less than a P133
you get double-checking.
Someone suggested increasing the P133 break-point over time (exponents
get harder and new machines get faster). So a year from now version 17 will
get double-checking assignments for P200 machines and below.
As before, this default behavior can be overridden.
Best regards,
George