De Lucas-Lehmertest voor mersennegetallen is een algoritme om te bepalen of het mersennegetal 2 p − − --> 1 {\displaystyle 2^{p}-1} ( p {\displaystyle p} een priemgetal) een mersennepriemgetal is. De test is ontwikkeld door Édouard Lucas en later verbeterd door Derrick Henry Lehmer.
Laat M p = 2 p − − --> 1 {\displaystyle M_{p}=2^{p}-1} een mersennegetal zijn met p {\displaystyle p} een priemgetal. Definieer nu de rij S {\displaystyle S} als volgt:
De eerste termen van deze rij zijn 4, 14, 194, 37634, ... Nu geldt dat M p {\displaystyle M_{p}} een priemgetal is dan en slechts dan als
Anders is M p {\displaystyle M_{p}} een samengesteld getal.
Met FFT-implementatie heeft het algoritme een looptijd van O ( p 2 log --> p ) {\displaystyle O(p^{2}\log p)} .
Als voorbeeld nemen we M 5 = 2 5 − − --> 1 = 31 {\displaystyle M_{5}=2^{5}-1=31} .
S 3 = 0 {\displaystyle S_{3}=0} dus 31 is een priemgetal.