<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="vi">
	<id>https://wikibeta.org/index.php?action=history&amp;feed=atom&amp;title=S%C3%A0ng_Atkin</id>
	<title>Sàng Atkin - Lịch sử thay đổi</title>
	<link rel="self" type="application/atom+xml" href="https://wikibeta.org/index.php?action=history&amp;feed=atom&amp;title=S%C3%A0ng_Atkin"/>
	<link rel="alternate" type="text/html" href="https://wikibeta.org/index.php?title=S%C3%A0ng_Atkin&amp;action=history"/>
	<updated>2026-08-10T12:17:10Z</updated>
	<subtitle>Lịch sử thay đổi trang này trên wiki</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://wikibeta.org/index.php?title=S%C3%A0ng_Atkin&amp;diff=3464908&amp;oldid=prev</id>
		<title>imported&gt;T.A.Halley: Thêm liên kết</title>
		<link rel="alternate" type="text/html" href="https://wikibeta.org/index.php?title=S%C3%A0ng_Atkin&amp;diff=3464908&amp;oldid=prev"/>
		<updated>2022-01-27T08:13:07Z</updated>

		<summary type="html">&lt;p&gt;Thêm liên kết&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Trang mới&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Dead end|date=tháng 7 năm 2018}}&lt;br /&gt;
&lt;br /&gt;
{{thiếu nguồn gốc}}&lt;br /&gt;
&lt;br /&gt;
Trong toán học, &amp;#039;&amp;#039;&amp;#039;sàng nguyên tố Atkin&amp;#039;&amp;#039;&amp;#039; là một [[thuật toán]] nhanh và hiện đại để tìm tất cả các [[số nguyên tố]] nhỏ hơn một [[số nguyên]] xác định. Đó là một thuật toán tối ưu từ sàng nguyên tố [[Eratosthenes]]: sàng Atkin chuẩn bị trước một số việc rồi sau đó đánh dấu các [[bội số]] của [[bình phương]] các số nguyên tố, chứ không phải là bội của các số nguyên tố. Thuật toán này được xây dựng bở A. O. L. Atkin và Daniel J. Bernstein.&lt;br /&gt;
&lt;br /&gt;
==Thuật toán==&lt;br /&gt;
* Tất cả các số dư là [[số dư]] khi [[Phép chia|chia]] cho 60 (chia cho 60 và xét số dư).&lt;br /&gt;
* Tất cả các số, bao gồm cả x và y đều là [[số nguyên]] dương.&lt;br /&gt;
* Đảo một ô trong sàng nghĩa là thay đổi đánh dấu (là [[số nguyên tố]] hoặc không) thành ngược lại.&lt;br /&gt;
&lt;br /&gt;
:#Tạo bảng kết quả, điền vào 2, 3, và 5.&lt;br /&gt;
:#Tạo bảng sàng nguyên tố với các số nguyên dương; tất cả các số đánh dấu là không nguyên tố.&lt;br /&gt;
:#Với tất cả các số trong sàng:&lt;br /&gt;
:#* Nếu số đó chia 60 dư 1, 13, 17, 29, 37, 41, 49, hoặc 53, đảo đánh dấu cho các số ở &amp;lt;math&amp;gt;4*x^2 + y^2&amp;lt;/math&amp;gt; = số đang xét.&lt;br /&gt;
:#* Nếu số đó chia 60 dư 7, 19, 31, hoặc 43, đảo các ô &amp;lt;math&amp;gt;3*x^2 + y^2&amp;lt;/math&amp;gt; = số đang xét.&lt;br /&gt;
:#* Nếu số đó chia 60 dư 11, 23, 47, hoặc 59, đảo các số &amp;lt;math&amp;gt;3*x^2- y^2&amp;lt;/math&amp;gt; = số đang xét.&lt;br /&gt;
:#* Nếu không, không làm gì cả.&lt;br /&gt;
:#Bắt đầu từ số nhỏ nhất trong sàng.&lt;br /&gt;
:#Lấy các số tiếp theo trong sàng được đánh dấu là prime.&lt;br /&gt;
:#Thêm vào danh sách kết quả.&lt;br /&gt;
:#Bình phương số đó và đánh dấu các bội số của số đó là không phải số nguyên tố.&lt;br /&gt;
:#Lặp lại bước 5 cho tới bước 8.&lt;br /&gt;
&lt;br /&gt;
==Pseudocode==&lt;br /&gt;
[[Pseudocode]] sau đây mô tả thuật toán này:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// giới hạn tìm kiếm&lt;br /&gt;
limit ← 1000000&lt;br /&gt;
&lt;br /&gt;
// khởi tạo lưới lọc&lt;br /&gt;
is_prime(i) ← false, ∀ i ∈ [5, limit]&lt;br /&gt;
&lt;br /&gt;
// đưa vào số nguyên tố ứng cử: &lt;br /&gt;
// những số nguyên có một số lẻ &lt;br /&gt;
// các dạng bậc 2.&lt;br /&gt;
for (x, y) in [1, √limit] × [1, √limit]:&lt;br /&gt;
 n ← 4x²+y²&lt;br /&gt;
 if (n ≤ limit) and (n mod 12 = 1 or n mod 12 = 5):&lt;br /&gt;
 is_prime(n) ← ¬is_prime(n)&lt;br /&gt;
 n ← 3x²+y²&lt;br /&gt;
 if (n ≤ limit) and (n mod 12 = 7):&lt;br /&gt;
 is_prime(n) ← ¬is_prime(n)&lt;br /&gt;
 n ← 3x²-y²&lt;br /&gt;
 if (x &amp;gt; y) and (n ≤ limit) and (n mod 12 = 11):&lt;br /&gt;
 is_prime(n) ← ¬is_prime(n)&lt;br /&gt;
 &lt;br /&gt;
// loại bỏ bằng cách sàng&lt;br /&gt;
for n in [5, √limit]:&lt;br /&gt;
 if is_prime(n):&lt;br /&gt;
 // n là số nguyên tố, bỏ qua các bội số bậc 2 của nó; điều này là&lt;br /&gt;
 // sufficient because composites which managed to get&lt;br /&gt;
 // on the list cannot be square-free&lt;br /&gt;
 is_prime(k) ← false, k ∈ {n², 2n², 3n²,..., limit}&lt;br /&gt;
&lt;br /&gt;
print 2, 3&lt;br /&gt;
for n in [5, limit]:&lt;br /&gt;
 if is_prime(n): print n&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tham khảo==&lt;br /&gt;
{{tham khảo}}&lt;br /&gt;
{{sơ khai}}&lt;br /&gt;
&lt;br /&gt;
[[Thể loại:Số học sơ cấp]]&lt;/div&gt;</summary>
		<author><name>imported&gt;T.A.Halley</name></author>
	</entry>
</feed>