Math Labs

Số học và Lý thuyết số

Định lý số nguyên tố

Mô tả mật độ số nguyên tố thưa dần, xấp xỉ 1/ln(n), trong các số nguyên.

Trực giácSố nguyên tố hiếm đến mức nào?

Trong mười số nguyên đầu tiên, 44 số là nguyên tố — mật độ 40%40\%. Trong một trăm số đầu, chỉ 2525 số nguyên tố — 25%25\%. Trong một triệu số đầu, chỉ 78,49878{,}498 số — dưới 8%8\%. Số nguyên tố không bao giờ hết (Euclid chứng minh điều đó khoảng năm 300 TCN), nhưng chúng thưa dần khi ta nhìn xa hơn. Định lý số nguyên tố xác định chính xác tốc độ đó: mật độ số nguyên tố gần một số lớn xx xấp xỉ 1/log⁡x1/\log x.

Lưới từ 1 đến 60 với số nguyên tố màu xanh, xếp thành sáu hàng mười số để minh họa mật độ hữu hạn.
Trong lưới 11–6060, đếm số nguyên tố màu xanh theo từng hàng mười số: 4,4,2,2,3,24,4,2,2,3,2. Mẫu hữu hạn nhỏ này minh họa mật độ thưa dần, không phải định luật tiệm cận 1/log⁡x1/\log x.

Phổ thôngĐếm số nguyên tố: hàm π(x)

Định nghĩa: Hàm đếm số nguyên tố

π(x)\pi(x) ký hiệu số số nguyên tố pp với p≤xp \le x. Ví dụ π(100)=25\pi(100) = 25: các số nguyên tố tới 100100 là 2,3,5,7,…,972,3,5,7,\ldots,97.

π(x)=#{ p≤x:p prime }\pi(x) = \#\{\, p \le x : p \text{ prime} \,\}

Năm 1792, ở tuổi mười lăm, Carl Friedrich Gauss đã dự đoán — từ việc nghiên cứu bảng số nguyên tố bằng tay — rằng π(x)\pi(x) được xấp xỉ tốt bởi tích phân lôgarit li⁡(x)=∫2xdtlog⁡t\operatorname{li}(x) = \int_2^x \dfrac{dt}{\log t}, và tương đương, rằng mật độ số nguyên tố gần xx hoạt động như 1/log⁡x1/\log x. Phát biểu tiệm cận chính xác là:

π(x)∼xlog⁡x\pi(x) \sim \dfrac{x}{\log x}
π(x) so với hai ước lượng cổ điển
xπ(x)x / ln xli(x)
1044,36,8
1002521,730,1
1.000168144,8177,6
10.0001.2291.085,71.246,1

Đại họcMột chặn sơ cấp, và định lý đầy đủ

Đặt θ(x)=∑p≤xlog⁡p\theta(x) = \sum_{p \le x} \log p. Khi đó θ(n)<(log⁡4) n\theta(n) < (\log 4)\, n với mọi số nguyên n≥1n \ge 1.

Vì sao đúng?

Trước chứng minh giải tích năm 1896 của Hadamard và de la Vallée Poussin, Chebyshev (1852) đã sơ cấp chứng minh, chỉ dùng hệ số nhị thức, rằng số lượng số nguyên tố bị kẹp trong một hằng số nhân của x/log x. Chặn này là thành phần sơ cấp then chốt, đầu vào sau này cho mọi chứng minh của định lý đầy đủ, và mẹo hệ số nhị thức chính giữa chính là mẹo đứng sau chứng minh sơ cấp nổi tiếng của Erdős cho định đề Bertrand.

Chứng minh

Ta dùng quy nạp mạnh theo nn. Trường hợp cơ sở n=1,2n=1,2 hiển nhiên: θ(1)=0\theta(1)=0 và θ(2)=log⁡2<log⁡4\theta(2)=\log 2 < \log 4.

Với bước quy nạp, giả sử chặn đúng với mọi số nguyên dương nhỏ hơn nn. Nếu n>2n>2 chẵn, nn không nguyên tố, nên θ(n)=θ(n−1)<(log⁡4)(n−1)<(log⁡4)n\theta(n)=\theta(n-1) < (\log4)(n-1) < (\log4)n theo giả thiết quy nạp áp dụng cho n−1n-1.

Nếu n=2m+1n=2m+1 lẻ, xét hệ số (2m+1m)=(2m+1)!m! (m+1)!\binom{2m+1}{m}=\dfrac{(2m+1)!}{m!\,(m+1)!}. Nó xuất hiện hai lần trong 22m+12^{2m+1} số hạng của khai triển nhị thức (1+1)2m+1(1+1)^{2m+1} (một lần là (2m+1m)\binom{2m+1}{m}, một lần là (2m+1m+1)\binom{2m+1}{m+1}, và chúng bằng nhau), nên 2(2m+1m)≤22m+12\binom{2m+1}{m} \le 2^{2m+1}, cho (2m+1m)≤4m\binom{2m+1}{m} \le 4^m.

Mọi số nguyên tố pp với m+1<p≤2m+1m+1 < p \le 2m+1 chia hết tử số (2m+1)!(2m+1)! nhưng không chia hết m!m! lẫn (m+1)!(m+1)! (vì p>m+1p>m+1), nên pp chia hết (2m+1m)\binom{2m+1}{m}. Do đó tích mọi số nguyên tố như vậy chia hết (2m+1m)\binom{2m+1}{m}, nên ∏m+1<p≤2m+1p≤(2m+1m)≤4m\prod_{m+1<p\le 2m+1} p \le \binom{2m+1}{m} \le 4^m, tức θ(2m+1)−θ(m+1)≤(log⁡4) m\theta(2m+1)-\theta(m+1) \le (\log 4)\,m.

Theo giả thiết quy nạp áp dụng cho m+1<nm+1<n, θ(m+1)<(log⁡4)(m+1)\theta(m+1) < (\log4)(m+1). Cộng lại, θ(n)=θ(2m+1)<(log⁡4)(m+1)+(log⁡4)m=(log⁡4)(2m+1)=(log⁡4)n\theta(n)=\theta(2m+1) < (\log4)(m+1) + (\log4)m = (\log4)(2m+1) = (\log4)n, hoàn tất quy nạp.

Khi x→∞x \to \infty, π(x)∼xlog⁡x\pi(x) \sim \dfrac{x}{\log x}; tương đương π(x)/li⁡(x)→1\pi(x)/\operatorname{li}(x) \to 1.

Vì sao đúng?

Chặn Chebyshev ở trên kẹp π(x) trong một hằng số nhân của x/log x, nhưng "tiệm cận với" là một khẳng định mạnh hơn nhiều: tỉ số π(x)/(x/log x) phải tiến chính xác tới 1, không chỉ bị chặn. Việc thu hẹp khoảng cách đó từ "bị chặn" xuống "chính xác bằng 1" cần một ý tưởng hoàn toàn khác — nhận thức năm 1859 của Riemann rằng sự phân bố số nguyên tố được mã hóa trong các không điểm phức của hàm zeta ζ(s).

Chứng minh

Chứng minh này là một bản phác thảo lô-gic của con đường giải tích, không phải một suy diễn tự chứa — nó cần giải tích phức được giới thiệu sau này trong chương trình (xem chủ đề hàm zeta Riemann để biết chi tiết). Lập luận có ba giai đoạn.

Giai đoạn 1 (quy về θ): một lập luận tổng từng phần quen thuộc cho thấy π(x)∼x/log⁡x\pi(x) \sim x/\log x tương đương θ(x)∼x\theta(x) \sim x, với θ(x)=∑p≤xlog⁡p\theta(x)=\sum_{p\le x}\log p như trong chặn Chebyshev ở trên.

Giai đoạn 2 (mã hóa θ qua ζ): công thức tường minh của Riemann biểu diễn θ(x)\theta(x) (chính xác hơn là ψ(x)=∑pk≤xlog⁡p\psi(x)=\sum_{p^k\le x}\log p gần gũi) gần như chính xác qua các không điểm của ζ(s)=∑nn−s=∏p(1−p−s)−1\zeta(s)=\sum_n n^{-s}=\prod_p(1-p^{-s})^{-1}: số hạng chính xx đến từ cực đơn của ζ\zeta tại s=1s=1, và mỗi không điểm ρ=β+iγ\rho=\beta+i\gamma của ζ\zeta đóng góp một số hạng sai số dao động cỡ xβx^{\beta}.

Giai đoạn 3 (sự kiện không triệt tiêu then chốt): ψ(x)∼x\psi(x)\sim x — và do đó định lý — đúng khi và chỉ khi không không điểm nào có β=1\beta=1, tức ζ(1+it)≠0 for all t∈R\zeta(1+it) \ne 0 \text{ for all } t \in \mathbb{R}. Hadamard và de la Vallée Poussin chứng minh sự không triệt tiêu này độc lập vào năm 1896, dùng một bất đẳng thức lượng giác sơ cấp (3+4cos⁡θ+cos⁡2θ≥03+4\cos\theta+\cos2\theta\ge0) áp dụng cho log⁡∣ζ(σ)3ζ(σ+it)4ζ(σ+2it)∣\log|\zeta(\sigma)^3\zeta(\sigma+it)^4\zeta(\sigma+2it)| khi σ→1+\sigma\to1^+: một không điểm tại 1+it1+it sẽ buộc biểu thức này về −∞-\infty, điều bất đẳng thức cấm. Chứng minh năm 1980 của Newman rút gọn hệ quả của Giai đoạn 3 thành một lập luận Tauberian ngắn gọn, nhưng khung lô-gic — cực tại 11, không điểm ở nơi khác, không triệt tiêu trên đường Re⁡(s)=1\operatorname{Re}(s)=1 — chính xác như Riemann và Hadamard đã đặt ra.

Đại họcỨng dụng thực tiễn và Ví dụ minh họa

Định lý số nguyên tố không chỉ mang tính lý thuyết: phần mềm mật mã sinh khóa RSA, và các nhà phân tích mật mã ước lượng độ khó phá khóa đó, đều dựa trực tiếp vào việc biết số nguyên tố được đóng gói dày đặc đến mức nào gần một kích thước cho trước. Ước lượng mật độ 1/log(x) của định lý cho biết, trung bình, bạn phải kiểm tra bao nhiêu số lẻ ngẫu nhiên trước khi gặp một số nguyên tố.

Ví dụ: Cần bao nhiêu lần thử ngẫu nhiên để tìm số nguyên tố RSA 512-bit?

Một thủ tục sinh khóa RSA chọn ngẫu nhiên các số lẻ 512-bit (gần N=2512N=2^{512}) và kiểm tra tính nguyên tố mỗi số cho tới khi gặp số nguyên tố. Dùng ước lượng mật độ của định lý số nguyên tố, trung bình nó phải kiểm tra bao nhiêu ứng viên lẻ?

Lời giải

Theo định lý, gần NN mật độ số nguyên tố trong mọi số nguyên là khoảng 1/log⁡N1/\log N. Giới hạn ở số lẻ nhân đôi mật độ đó (số chẵn không bao giờ nguyên tố sau 22), nên mật độ trong ứng viên lẻ là khoảng 2/log⁡N2/\log N.

Ở đây log⁡N=log⁡(2512)=512log⁡2≈512×0.6931≈354.9\log N = \log(2^{512}) = 512\log 2 \approx 512 \times 0.6931 \approx 354.9. Vậy mật độ khoảng 2/354.9≈0.005632/354.9 \approx 0.00563, tức khoảng 11 trong 177177 số lẻ gần kích thước này là nguyên tố.

Nếu mỗi ứng viên là một phép thử Bernoulli độc lập với xác suất thành công này, số lần thử kỳ vọng tới thành công đầu tiên là 1/p≈1771/p \approx 177. Đây chính xác là lý do các cài đặt RSA thực tế báo cáo cần cỡ vài trăm phép kiểm tra tính nguyên tố (với một bước sàng nhanh lọc trước hợp số rõ ràng) để sinh mỗi số nguyên tố lớn.

Ví dụ: Ước lượng chi phí chia thử khi phân tích một hợp số bán nguyên tố

Một nhà phân tích mật mã muốn ước lượng thô số ứng viên ước số mà phép chia thử phải kiểm tra để phân tích một hợp số bán nguyên tố khó 100 chữ số NN (tích hai số nguyên tố xấp xỉ bằng nhau), bằng cách kiểm tra mọi số nguyên tố tới N\sqrt{N}. Dùng định lý số nguyên tố, ước lượng có bao nhiêu số nguyên tố như vậy.

Lời giải

NN có 100100 chữ số, nên N≈10100N \approx 10^{100} và N≈1050\sqrt{N} \approx 10^{50}. Theo định lý số nguyên tố, π(N)≈N/log⁡N\pi(\sqrt{N}) \approx \sqrt{N}/\log\sqrt{N}.

Ở đây log⁡N=log⁡(1050)=50log⁡10≈50×2.3026≈115.1\log\sqrt{N} = \log(10^{50}) = 50\log 10 \approx 50 \times 2.3026 \approx 115.1. Vậy π(N)≈1050/115.1≈8.7×1047\pi(\sqrt{N}) \approx 10^{50}/115.1 \approx 8.7\times10^{47}.

Con số khổng lồ thiên văn đó — vượt xa những gì bất kỳ máy tính nào có thể liệt kê, chưa nói tới kiểm tra — chính xác là lý do chia thử vô dụng trước các mô-đun mật mã thực tế, và tại sao bảo mật RSA dựa trên việc phân tích thừa số là bất khả thi về mặt tính toán dù chưa có chứng minh cho độ khó đó; định lý số nguyên tố chính xác là thứ cho phép các nhà mật mã học định lượng "khổng lồ thiên văn" thay vì chỉ nói suông.

π(x) ~ x/log x nghĩa chính xác là gì?

Làm tròn tới số nguyên gần nhất, x/ln x tại x = 10.000 bằng bao nhiêu (ln 10000 ≈ 9,210)?

Chứng minh năm 1896 của Hadamard và de la Vallée Poussin về định lý số nguyên tố đều dựa trên sự kiện nào?

Theo ước lượng mật độ 2/log⁡N2/\log N cho số lẻ gần N, xấp xỉ tỉ lệ nào của số lẻ 2048-bit là nguyên tố (log⁡(22048)≈1419.8\log(2^{2048}) \approx 1419.8)?

Tài liệu tham khảo

  1. MacTutor History of Mathematics, University of St Andrews (2021). Prime numbers (history)
  2. Donald J. Newman (1980). Simple analytic proof of the prime number theorem · DOI:10.1080/00029890.1980.11995126