Thuật toán kiểm tra số giả nguyên tố mạnh.

Một phần của tài liệu Về một số thuật toán số học và ứng dụng (Trang 44 - 46)

Thực hành tính toán trên maple

3.1.5. Thuật toán kiểm tra số giả nguyên tố mạnh.

Bớc 1: Phân tích số n ra thừa số nguyên tố .

Bớc 2: Từ kết quả phân tích trên ta biết rằng n -1 có thể viết dới dạng n - 1 = 2st (s là số tự nhiên bất kỳ, t là một số lẻ). Ta kiểm tra điều kiện:

[>is(b&^t mod n= 1) ;

Nếu điều kiện trên nghiệm đúng (lệnh cho giá trị true ) thì n là số giả nguyên tố mạnh cơ sở b, ngợc lại ta kiểm tra điều kiện sau :

[> is(b&^t-1 mod n = 0) ;

Nếu lệnh cho giá trị true thì n là số giả nguyên tố mạnh cơ sở b .

Nếu kết quả là false ta tiếp tục kiểm tra điều kiện b2jt + =1 0(mod )n

có đợc thoả mãn với một j nào đó trong khoảng từ 0 đến s - 1 hay không. Nếu có một j nh vậy thì kết luận n là số giả nguyên tố mạnh cơ sở b, ngợc lại ta kết luận không phải. Có thể thực hiện điều này bằng lệnh sau đây :

[>seq (b&^( (2^j)*t)+1 mod n, j= 0..s-1) ;

Kết quả của lệnh là một dãy bao gồm s số tự nhiên, nếu có một số trong dãy đó bằng 0 thì kết luận n là số giả nguyên tố mạnh cơ sở b, ngợc lại là không phải.

Thí dụ, ta kiểm tra xem số 25326001 có phải là số nguyên tố mạnh cơ sở 2 bằng [> n:=25326001; b:=2; n := 25326001 b := 2 [> isprime(n); false [> factor(n-1); 2 ( )4 3( )3 5( )3 7( ) 67( ) Ta có : [> s:=4; t:=3^3*5^3*7*67; s := 4 t := 1582875 [> is(b&^t mod n = 1);

false

Ta kiểm tra tiếp

[> is(b&^t-1 mod n = 0);

false

[> seq (b&^ ((2^j)*t)+1 mod n, j = 0..s-1);

0, 2, 2, 2

Nh vậy số 25326001 là số giả nguyên tố mạnh cơ sở 2. Với b = 3; 5 ta cũng có kết quả tơng tự . Nhng với b = 7 ta có :

[> n:=25326001; b:=7; n := 25326001 b := 7 [> s:=4; t:=3^3*5^3*7*67; s := 4 t := 1582875 [> is(b&^t mod n = 1); false [> is(b&^t-1 mod n = 0); false

[> seq (b&^ ((2^j)*t)+1 mod n, j= 0.. s-1);

19453142, 16857741, 11448588, 10127251

Vậy, Số 25326001 là số giả nguyên tố mạnh cơ sở 2,3,5 nhng

không là số giả nguyên tố mạnh cơ sở 7.

Một phần của tài liệu Về một số thuật toán số học và ứng dụng (Trang 44 - 46)

Tải bản đầy đủ (DOC)

(53 trang)
w