View
562
Download
1
Embed Size (px)
DESCRIPTION
Citation preview
New Method Said to Solve Key Problem In Math
- NewYork Times August 8, 2002
This algorithm is beautiful It's the best result I've heard in over ten years
AKS algorithm
PRIMES Is in P
박상혁
아꿈사
: A Breakthrough for "Everyman"
AKS algorithm
• Manindra Agrawal, Neeraj Kayal, Nitin Saxena of Indian Institute of Technology
• 헤드라인이 뜨기 4일 전 - 일요일, 세 명의 저자는 "PRIMES is in P" 라는 이름의 9페이지짜리 논문을 15명의 전문가에게 보냄
• 같은 날 저녁 Jaikumar Radhakrishnan 과 Vikraman Arvind 가 축하를 보내옴.
• 다트머스(dartmouth) 에서 학과장을 맡고 있던 Carl Pomerance 는 다음날인 월요일 일찍 결과를 확증하고, 그날 오후 즉흥적으로 세미나를 조직한 뒤, NewYork Times 에 알림
• 화요일, 논문을 인터넷에 공개. 누구나 볼 수 있게함.
• 목요일, NewYork Times에 개제.
• 금요일, 기존 결과에 대한 개선된 증명법이 올라옴.
Sieve of Eratosthenes
• N 이 소수인지 확인하기 위해 N과 비례하는 시간이 소요 즉, O(N)
• PRIMES 에서 '입력길이' n은 숫자의 비트수이다.
• N의 이진 비트수는 log2 𝑁 = 𝑛.
• O(N) = O(2log2 𝑁) = O(2𝑛)
• 즉 지수에 비례한다.
PRIMES is in P ?
• N이 소수인지 판단할 수 있는, 고정된 지수 𝜅 에대해 O(𝑙𝑜𝑔𝜅𝑁) 를 만족하는 '결정적' 알고리즘이 존재할 때.
Before August 2002
• '가우스' 시대에 '소인수분해'와 '소수판정' 문제가 분리됨
• 소수판정의 시작점은 '페르마의 소정리' 모든 소수 n, 이와 서로소인 임의의 숫자 a 사이에는
𝑎𝑛 ≡ 𝑎 𝑚𝑜𝑑 𝑛 가 성립한다.
• 불행히도 역은 성립하지 않음.
Probabilistic Algorithm
• 1976 Miller and Robin
• 합성수 이거나, 높은 확률로 소수
• 틀릴 확률은 4−𝜅 보다 작고, O(𝜅 𝑙𝑜𝑔2𝑁)
• PRIMES ∈ co-RP
Deterministic Algorithm
• 1983 Adleman, Pomerance, Rumely
• 수많은 이론과, 일반화된 페르마 소정리를 이용하여 완전하게 소수임을 판정함
• 2002년이 되기전 까지는 최고의 결정적 알고리즘
• 시간 복잡도는 (log 𝑛)𝑂(log log log 𝑛). (super-polynomial order)
And...
• 최근 알고리즘은 elliptic curve 나 abelian varieties of high genus 이용
• 𝜅 번 반복 후, 결정적 대답을 제공. 아니면 답이 없음
• 답을 못낼 확률은 2−𝜅
• PRIMES ∈ ZPP
Manindra Agrawal
• 1991년 IITK Computer Science and Engineering 박사학위
• 1999. "Primality and identity testing vis Chinese remaindering"
• Generalization of Fermat's Little Theorem a 와 n 이 서로 소 일때, n 이 소수이면, 그리고 소수일 때만
(𝑥 − 𝑎)𝑛 ∈ 𝑥𝑛 − 𝑎 𝑚𝑜𝑑 𝑛 in ring of polynomials ℤ[𝑥]
• 소수에 대한 우아한 정의이긴 하지만 사용하기 어렵다.
Two Bachelor's Project
• (𝑥 − 𝑛)𝑛 대신에 이를 𝑥𝑟 − 1 로 나눈 나머지를 이용.
• r 이 x의 로그로 표현될 때, 이 나머지는 적당한 알고리즘으로 다항식 시간 내에 계산 가능함
• n 이 소수라면, a와 서로 소인 모든 r 과 n에 대해
𝑇𝑟,𝑎 (𝑥 − 𝑎)𝑛 ≡ 𝑥𝑛 − 𝑎 𝑚𝑜𝑑 (𝑥𝑟 − 1, 𝑛)
• a=1 로 고정하고 r의 요구사항을 조사함
• r≤100, n≤1010 일 때, r 과 n 이 서로 소이고,
𝑇𝑟,1 (𝑥 − 1)𝑛≡ 𝑥𝑛 − 1 𝑚𝑜𝑑 (𝑥𝑟 − 1, 𝑛)
이면, n은 소수이거나 𝑛2 ≡ 1 𝑚𝑜𝑑 𝑟
• 소수일 경우 O(𝑙𝑜𝑔3+ℇ𝑁)
Two Bachelor's Project
• Neeraj Kayal and Nitin Saxena
• 𝑇𝑟,1 과 기존의 소수테스트의 연관성을 조사
• 리만 가설이 옳다면, 𝑇𝑟,1 은 소수성 증명을 위해
r = 2, ..., 4𝑙𝑜𝑔22𝑛 으로 제한 가능함.
• 이런 방식으로 O(𝑙𝑜𝑔6+ℇ𝑁) 인 결정적 알고리즘을 얻을 수 있다.
• 이 내용이 2002.04 "Towards a deterministic polynomial time primality test" 라는 이름으로 발표됨
Changing the Viewpoint
• 𝑇𝑟,𝑎 에서 r을 고정하고 a 가 변하게 하면?
AKS algorithm again..
• 1. Decide if n is a power of a natural number. If so, go to step 5.
• 2. Choose (q,r,s) satisfying the hypotheses of the theorem.
• 3. For a = 1, . . . , s−1 do the following: – (i) If a is a divisor of n, go to step 5.
– (ii) If (𝑥 − 𝑎)𝑛 ≢ 𝑥𝑛 − 𝑎 𝑚𝑜𝑑 (𝑥𝑟 − 1, 𝑛), go to step 5.
• 4. n is prime. Done.
• 5. n is composite. Done
And..
• Fermat's Last Theorem
• Sophie Germain Prime
• ...
• 𝑂 (𝑙𝑜𝑔6𝑁)
• Õ(g(n)) 은 O(g(n) logk g(n)) for some k 의 축약형
But..
• 아직 실용성은 적다
• 이론적으로는, 즉 n이 무한대로 갈때는 빠르지만,
• 실제 쓰이는 범위(512비트)의 소수 판정에는 다른 빠른 알고리즘들이 있다.
참고자료
• http://www.ams.org/notices/200305/fea-bornemann.pdf
• http://www.cse.iitk.ac.in/users/manindra/algebra/primality_v6.pdf