In matematica, il test di Lucas-Lehmer-Riesel è un test di primalità per i numeri della forma N = k2n − 1, con 2n > k. Il test è stato elaborato da Hans Riesel e si basa sul test di primalità di Lucas-Lehmer. Costituisce l'algoritmo deterministico più veloce per i numeri della suddetta forma. Similmente, il test di Brillhart–Lehmer–Selfridge è il più veloce per i numeri della forma N = k2n + 1.

L'algoritmo

L'algoritmo è molto simile al test di Lucas-Lehmer, ma con un punto iniziale variabile dipendente dal valore di k.

Definiamo una sequenza {ui} per ogni i > 0 da:

 

Allora N è primo se e solo se esso divide  un−2.

Trovare il valore di partenza

  • Se k = 1 e n è primo, allora ci troviamo di fronte ad un numero di Mersenne e possiamo prendere u0 = 4.
  • Se  , allora possiamo prendere  .
  • Se  , e   o  , allora  .
  • Se   o  , e N non è divisibile per 3, allora possiamo prendere  .
  • Altrimenti, ci troviamo nel caso in cui k è un multiplo di 3, ed è più difficile selezionare il valore giusto di <math>u_0</math.