Cho một số nguyên không âm N
, xuất ra số nguyên dương lẻ nhỏ nhất là giả ngẫu nhiên mạnh cho tất cả các N
cơ sở nguyên tố đầu tiên .
Đây là trình tự OEIS A014233 .
Các trường hợp thử nghiệm (một chỉ mục)
1 2047
2 1373653
3 25326001
4 3215031751
5 2152302898747
6 3474749660383
7 341550071728321
8 341550071728321
9 3825123056546413051
10 3825123056546413051
11 3825123056546413051
12 318665857834031151167461
13 3317044064679887385961981
Các trường hợp thử nghiệm N > 13
không có sẵn vì những giá trị này chưa được tìm thấy. Nếu bạn quản lý để tìm (các) thuật ngữ tiếp theo trong chuỗi, hãy chắc chắn gửi nó / chúng cho OEIS!
Quy tắc
- Bạn có thể chọn lấy
N
giá trị không có chỉ mục hoặc giá trị một chỉ mục. - Giải pháp của bạn chỉ chấp nhận được đối với các giá trị có thể biểu thị trong phạm vi số nguyên của ngôn ngữ của bạn (tối đa
N = 12
cho các số nguyên 64 bit không dấu), nhưng về mặt lý thuyết, giải pháp của bạn phải hoạt động cho mọi đầu vào với giả định rằng ngôn ngữ của bạn hỗ trợ các số nguyên có độ dài tùy ý.
Lý lịch
Bất kỳ số nguyên dương thậm chí x
có thể được viết theo hình thức x = d*2^s
nơi d
là số lẻ. d
và s
có thể được tính bằng cách chia n
2 lần cho đến khi thương số không còn chia hết cho 2. d
là thương số cuối cùng và s
là số lần 2 lần chia n
.
Nếu một số nguyên dương n
là số nguyên tố, thì định lý nhỏ của Fermat nói:
Trong bất kỳ trường hữu hạn nào Z/pZ
(trong đó p
có một số nguyên tố), căn bậc hai duy nhất 1
là 1
và -1
(hoặc, tương đương, 1
và p-1
).
Chúng ta có thể sử dụng ba sự thật này để chứng minh rằng một trong hai câu lệnh sau phải đúng với một số nguyên tố n
(trong đó d*2^s = n-1
và r
là một số nguyên trong [0, s)
):
Các Kiểm tra Miller-Rabin hoạt động bằng cách kiểm tra contrapositive của tuyên bố trên: nếu có một cơ sở a
như vậy mà cả hai điều kiện trên là sai sự thật, sau đó n
không phải là số nguyên tố. Căn cứ đó a
được gọi là nhân chứng .
Bây giờ, việc kiểm tra mọi cơ sở trong [1, n)
sẽ rất tốn kém về thời gian tính toán n
. Có một biến thể xác suất của thử nghiệm Miller-Rabin chỉ thử nghiệm một số cơ sở được chọn ngẫu nhiên trong trường hữu hạn. Tuy nhiên, người ta đã phát hiện ra rằng chỉ kiểm tra a
các cơ sở chính là đủ, và do đó thử nghiệm có thể được thực hiện theo cách hiệu quả và xác định. Trên thực tế, không phải tất cả các cơ sở chính cần phải được kiểm tra - chỉ cần một số lượng nhất định và con số đó phụ thuộc vào kích thước của giá trị được kiểm tra tính nguyên thủy.
Nếu một số lượng cơ sở nguyên tố không đủ được kiểm tra, thử nghiệm có thể tạo ra dương tính giả - số nguyên tổng hợp lẻ trong đó thử nghiệm không chứng minh được tính phức tạp của chúng. Cụ thể, nếu một cơ sở a
không chứng minh được tính phức tạp của một số hỗn hợp lẻ, thì số đó được gọi là giả ngẫu nhiên mạnh đối với cơ sở a
. Thách thức này là về việc tìm ra các số hỗn hợp lẻ là các psuedoprimes mạnh cho tất cả các cơ sở nhỏ hơn hoặc bằng N
số nguyên tố thứ (tương đương với việc nói rằng chúng là các giả ngẫu nhiên mạnh đối với tất cả các số nguyên tố nhỏ hơn hoặc bằng N
số nguyên tố thứ nhất) .