next up previous contents
Næste: 6. Konklusion Op: 5.2 Programmet mprime Foregående: 5.2.1 Lucas-Lehmer testen

5.2.2 Dobbelttjek

Alle eksponenter bliver dobbelttjekket for at sikre sig mod fejl, som kan opstå undervejs i den lange Lucas-Lehmer test. Det er ikke selve algoritmen som fejler noget, men i stedet de moderne processorer. Man bruger kommatal (floating points på engelsk) til beregningerne, da processorerne er hurtigere til disse beregninger, end til heltalsberegninger. Men der kan så opstå afrundingsfejl undervejs.

Derfor gemmer man de sidste 64 bit af $ S_{p-1}$ efter en test, og når så dobbelttjekket er færdigt, sammenligner man disse bit fra de to test. Hvis disse to tal er ens, er begge programmer altså nået frem til det samme tal for $ S_{p-1}$, og eksponenten bliver så erklæret for testet. Det sker sommetider at de to tal ikke stemmer, og så må man igang med en tredje test. Fejlraten på en Lucas-Lehmer test er ifølge [16] lidt over 1%.



Copyright © 2001, Martin Geisler.