![]() |
module 2^p - 1
Hi,
I understand the iteration sequence of the Lucas-Lehmer test involves using module (2^p-1) arithmetic. How do computers running these such a test cope with numbers with 20+ million digits? |
one step at a time.
|
[QUOTE=wildrabbitt;552611]Hi,
I understand the iteration sequence of the Lucas-Lehmer test involves using module (2^p-1) arithmetic. How do computers running these such a test cope with numbers with 20+ million digits?[/QUOTE] You need a data structure to hold the numbers. The simplest would be a one dimensional [URL="https://en.wikipedia.org/wiki/Array_data_structure#One-dimensional_arrays"]array[/URL] and a byte or two indicating the most significant bit of the number. For multiplication you use Fast Fourier Transforms (FFT). Some of the operations can be parallelized across available cores. Then there is making things cache-friendly. |
Thanks.
[QUOTE]For multiplication you use Fast Fourier Transforms (FFT).[/QUOTE] I suppose you mean for calculating the squared term? |
An appropriate search term might be "arbitrary precision arithmetic".
|
[QUOTE=wildrabbitt;552635]
I suppose you mean for calculating the squared term?[/QUOTE] Yes. Addition and subtraction and mod 2^p-1 does not require FFT. |
More info on multiprecision multiplication at [url]https://www.mersenneforum.org/showpost.php?p=510721&postcount=7[/url]
|
All times are UTC. The time now is 20:31. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.