Verifying Sierpinski and Riesel Numbers in ACL2

Verifying Sierpinski and Riesel Numbers in ACL2
Notice: This research summary and analysis were automatically generated using AI technology. For absolute accuracy, please refer to the [Original Paper Viewer] below or the Original ArXiv Source.

A Sierpinski number is an odd positive integer, k, such that no positive integer of the form k * 2^n + 1 is prime. Similar to a Sierpinski number, a Riesel number is an odd positive integer, k, such that no positive integer of the form k * 2^n + 1 is prime. A cover for such a k is a finite list of positive integers such that each integer j of the appropriate form has a factor, d, in the cover, with 1 < d < j. Given a k and its cover, ACL2 is used to systematically verify that each integer of the given form has a non-trivial factor in the cover.


💡 Research Summary

The paper “Verifying Sierpinski and Riesel Numbers in ACL2” presents a fully automated method for proving that a given odd integer k is a Sierpinski number (no prime of the form k·2ⁿ + 1) or a Riesel number (no prime of the form k·2ⁿ − 1) by using a finite “cover” C. A cover is a set of small integers such that every member of the infinite sequence k·2ⁿ ± 1 has a non‑trivial divisor drawn from C.

The authors formalize the verification process as follows. For each d ∈ C they compute two auxiliary parameters:

* b₍d₎ – the multiplicative order of 2 modulo d, i.e., the smallest positive integer satisfying 2^{b₍d₎} ≡ 1 (mod d).
* c₍d₎ – the smallest non‑negative integer for which k·2^{c₍d₎} ≡ −1 (mod d).

With these values one can show by simple induction that for every non‑negative integer i, d divides k·2^{b₍d₎·i + c₍d₎} ± 1. The base case i = 0 follows from the definition of c₍d₎, while the inductive step uses the identity

k·2^{b₍d₎(i+1)+c₍d₎} ± 1 =


Comments & Academic Discussion

Loading comments...

Leave a Comment