Lucas-Lehmer-Riesel test ( LLR ) je test primality pro čísla ve tvaru c (podmnožina takových čísel se nazývá čísla Sabit ). Vyvinutý Hansem Rieselem a založený na Luc-Lehmerově testu je nejrychlejším deterministickým algoritmem pro čísla tohoto druhu [1] .
Algoritmus je velmi podobný Luc-Lehmer testu, ale začíná hodnotou, která závisí na . Pro algoritmus se používá Lucasova sekvence , která je dána vzorcem:
.je prvočíslo právě tehdy, když dělí .
Alternativní metoda pro zjištění výchozí hodnoty byla uvedena v roce 1994 [2] . Metoda je mnohem jednodušší než metoda používaná Rieselem pro případ, kdy se dělí 3 . V alternativní metodě nejprve najděte hodnotu , která vyhovuje následující rovnosti Jacobiho symbolu :
a .V praxi je třeba zkontrolovat pouze několik hodnot (5, 8, 9 nebo 11 pokrývá 85 %).
Pro získání počáteční hodnoty můžete použít Lucasovu sekvenci [2] [3] . Pro 3 ∤ k (k není dělitelné 3) lze hodnotu použít a není potřeba žádné předběžné vyhledávání. Počáteční hodnota je pak rovna Lucasově sekvenci modulo . Tento proces trvá velmi málo času ve srovnání s hlavním testem.
Luc-Lehmer-Rieselův test je speciální případ kontroly jednoduchosti uspořádání skupiny. Test ukazuje, že určité číslo je prvočíslo díky tomu, že určitá skupina má pořadí, které by se rovnalo tomuto prvočíslu, pro které je identifikován prvek skupiny, který má přesně požadované pořadí.
Testy jako Lukovy testy používají multiplikativní grupu kvadratického modulového rozšíření celých čísel pro číslo . Jestliže je prvočíslo, pořadí multiplikativní grupy je , a má podskupinu řádu , pro účely testu se hledá generující množina této podskupiny.
Můžete najít neiterativní výraz pro . Podle Lucas-Lehmerova testovacího modelu nastavíme a získáme indukcí .
Uvažujme 2 i -tý prvek posloupnosti . Pokud a splňuje kvadratickou rovnici, je to Lucasova posloupnost a řídí se výrazem . Ve skutečnosti hledáme -tý prvek jiné posloupnosti, ale protože decimováním (výběrem každého k -tého prvku) Lucasovy posloupnosti také vznikne Lucasova posloupnost, můžeme zvolit faktor k výběrem počátečního bodu.
LLR je program, který provádí test LLR. Program vyvinul Jean Penné. Vincent Penné upravil program tak, abyste si mohli ověřit prvočíslo čísla přes internet. Program lze použít jak pro individuální vyhledávání, ale je také součástí některých distribuovaných výpočetních projektů včetně Riesel Sieve a PrimeGrid .