Một số bài toán sơ cấp ứng dụng
4.1 Phép kiểm tra tính nguyên tố của Lucas
Mục tiêu chính của Lucas khi nghiên cứu hai dãy{un}và{vn}là tìm phương pháp mới để phát hiện số nguyên tố. Kết quả này được trình bày trong định lý sau mà được Lucas gọi là định lý cơ bản của ông.
Định lý 4.1.1 ([2, tr. 41]). Giả sử N là số nguyên lẻ. Đặt T = T(N) =N + 1 hoặc N −1. Nếu N | uT và N - uT /d, với mọi d < T và d | T, thì N là một số nguyên tố.
Định lý trên được phát biểu đơn giản hơn như sau.
Định lý 4.1.2 ([2, tr. 41]). Giả sử N là số nguyên lẻ. Đặt T = T(N) =N + 1 hoặc N −1. Nếu N | uT và N - uT /q, với q là ước nguyên tố của T, thì N là một số nguyên tố.
Hệ quả 4.1.3 ([2, tr. 42]). Giả sử N là số nguyên lẻ và T = T(N) = N + 1 hoặc N −1. Nếu N | uT và N | uT
uT /q với mọi ước nguyên tố q của T, thì N là một số nguyên tố.
Chứng minh. Dựa theo tính chất của dãy{un}, nếum, n ≥1thìgcd(umn
un , un)| m, ta suy ra
(uT/uT /q, uT /q)| q. Do đó, nếuN | uT
uT /q, thìN - uT /q. Theo Định lý 4.1.2, ta suy ra điều phải chứng minh.
Định lý sau được gọi là định lý Lucas-Lehmer. Lucas sử dụng kết quả tương tự như thế này để thiết lập công cụ kiểm tra tính nguyên tố của số Mersenne. Định lý 4.1.4 ([2, tr. 42]). NếuNn = A2n−1, n≥3,0< A < 2n,2- A, và ký hiệu Jacobi (δ/Nn) = (q/Nn) = −1, thì Nn là một số nguyên tố khi và chỉ khi
Nn | vNn+1 2 (p, q)
(nhắc lại, δ= p2−4q là biệt thức của đa thức x2−px+q).
Hệ quả 4.1.5 ([2, tr. 43]). Giả sử A = 1 và 2 - n, n ≥ 3. Đặt q = −2 (mod Nn), p = 2 (mod Nn). Khi đó N là số nguyên tố khi và chỉ khi
Nn | vNn+1 2 (2,−2). Chứng minh. Vìδ = p2−4q ≡ 12 (mod Nn), ta có (δ/Nn) = (q/Nn) = −1. Đặt S0 = 4, Sj+1 =Sj2−2, thì v2j(2,−2) = 22j−1Sj−1. Cho nên Nn |vNn+1 2 (2,−2) ⇔Nn | Sn−2.
Do đó, nếu Nn là số Mersenne (Nn có dạng 2n−1) thì Nn là số nguyên tố khi và chỉ khi Nn | Sn−2.
Ví dụ 4.1.6. Các giá trị đầu tiên của dãy {Si} là 4,14,194,37634,1416317954, . . .
Xét số Mersenne N3 = 7. Phép kiểm tra Lucas-Lehmer áp dụng như sau: S1 = 14, N3 = 7 | S1 = 14. Do đó N3 là một số nguyên tố.
Việc tính Sn−2 = Sn2−3−2 sẽ khó khăn nếu n lớn. Trong thực tế, ta dùng công thức đệ quy sau:
sn ≡ s2n−1−2 (mod Np)
với s0 = 4. Lặp p−2 lần, nếu sp−2 ≡ 0 (mod Np) thì Np là số nguyên tố. Ví dụ 4.1.7. Xét số Mersenne N7 = 127. Kiểm tra 7−2 = 5 lần như sau:
s1 := ((4×4)−2) mod 127 = 14 s2 := ((14×14)−2) mod 127 = 67 s3 := ((67×67)−2) mod 127 = 42 s4 := ((42×42)−2) mod 127 = 111 s5 := ((111×111)−2) mod 127 = 0.
Giá trị cuối cùng s5 = 0 nên ta kết luận N7 là một số nguyên tố.
Ví dụ 4.1.8. Xét số Mersenne N11 = 2047 = 23∗89 không là số nguyên tố. Các bước áp dụng phép kiểm tra Lucas-Lehmer như sau: Kiểm tra 11−2 = 9 lần s := ((4×4)−2) mod 2047 = 14 s := ((14×14)−2) mod 2047 = 194 s := ((194×194)−2) mod 2047 = 788 s := ((788×788)−2) mod 2047 = 701 s := ((701×701)−2) mod 2047 = 119 s := ((119×119)−2) mod 2047 = 1877 s := ((1877×1877)−2) mod 2047 = 240 s := ((240×240)−2) mod 2047 = 282 s := ((282×282)−2) mod 2047 = 1736.
Vì giá trị s cuối cùng khác 0, ta kết luận N11 = 2047 không là số nguyên tố. Số nguyên tố lớn nhất mà được tính bằng tay là M127 = 2127−1, được tìm bởi Lucas vào năm 1876 sử dụng kết quả tương tự như hệ quả này. Điều này là đáng chú ý nhất bởi vì M127 là một số có tơi 39 chữ số. Số nguyên tố lớn nhất tìm được bằng máy tính hiện nay vẫn là số Mersenne và được tìm thông qua phép kiểm định Lucas-Lehmer.