빠른 답변 : 실제적인 목적으로는 절대 사용하지 마십시오. 현재 실용적이지 않습니다.
먼저, "실제적인"복합성 테스트를 우선 성 증명과 분리 해 봅시다. 전자는 사람들이 적절하다고 생각하는 다른 수준의 테스트가 있지만 거의 모든 목적에 충분합니다. 2 ^ 64 미만의 숫자의 경우 결정 론적 답변을 위해 7 개 이하의 Miller-Rabin 검정 또는 하나의 BPSW 검정이 필요합니다. 이것은 AKS보다 훨씬 빠르며 모든 경우에 똑같이 정확합니다. 2 ^ 64를 초과하는 숫자의 경우 BPSW를 선택하는 것이 좋습니다. 일부 추가 임의 기수 Miller-Rabin 테스트는 약간의 비용으로 약간의 자신감을 더합니다. 거의 모든 증명 방법은 값이 싸기 때문에 이와 같은 테스트로 시작합니다 (또는 그 방법으로 시작해야 함). 우리는 거의 확실하게 소수 인 숫자에 대해서만 열심히 노력합니다.
증거로 넘어갑니다. 각각의 경우 결과 증거는 추측이 필요하지 않으므로 기능적으로 비교할 수 있습니다. APR-CL의 "gotcha"는 다항식이 아니며 ECPP / fastECPP의 "gotcha"는 예상보다 오래 걸리는 숫자가있을 수 있다는 것입니다.
그래프에서 우리는 두 가지 오픈 소스 AKS 구현을 볼 수 있습니다. 첫 번째는 v6 논문에서, 두 번째는 Bernstein과 Voloch에서 개선되었으며 Bornemann의 우수한 r / s 휴리스틱을 포함합니다. 이것들은 다항식 곱셈을 위해 GMP에서 이진 분할을 사용하므로 매우 효율적이며 메모리 사용은 여기에서 고려 된 크기에 중요하지 않습니다. 로그 로그 그래프에서 ~ 6.4의 기울기로 멋진 직선을 생성합니다. 그러나 APR-CL 및 ECPP의 경우 몇 분이 걸리는 것과 비교하여 1000 자리까지 추정하면 수십만에서 수백만 년으로 추정 된 시간에 도달합니다. 2002 번스타인 (Bernstein) 논문에서 수행 할 수있는 추가 최적화가 있지만, 이것이 실제로 상황을 바꿀 것이라고는 생각하지 않습니다 (구현 될 때까지는 입증되지 않음).
결국 AKS는 시험 부문을 능가합니다. BLS75 정리 5 (예 : n-1 증명) 방법에는 n-1의 부분 인수 분해가 필요합니다. 이것은 작은 크기에서 잘 작동하며 운이 좋고 n-1이 팩토링하기 쉬운 경우에도 결국 큰 세미 프라임을 고려해야합니다. 보다 효율적인 구현이 있지만 실제로 100 자리를 초과하여 확장되지는 않습니다. AKS가이 방법을 통과한다는 것을 알 수 있습니다. 1975 년에 질문을했고 (그리고 당시 AKS 알고리즘을 가졌다면) AKS가 가장 실용적인 알고리즘 인 크로스 오버를 계산할 수있었습니다. 그러나 1980 년대 후반에는 APR-CL과 다른 사이클로 톰 방법이 올바른 비교였으며 1990 년대 중반에는 ECPP를 포함시켜야했습니다.
APR-CL 및 ECPP 방법은 모두 오픈 소스 구현입니다. Primo (무료이지만 오픈 소스 ECPP는 아님)는 더 큰 숫자 크기에 대해 더 빠를 것이고 더 좋은 곡선을 가질 것이라고 확신합니다 (아직 새로운 벤치마킹을하지 않았습니다). APR-CL은 다항식이 아니지만 지수에는 인자가 있습니다.이 인자 는 누군가가 "무한대로 갔지만 결코 그렇게 관찰 된 적이 없습니다". 이것은 이론상으로 선이 타기 전에 AKS가 끝나는 n 값에 대해 선이 교차하지 않는다고 믿게합니다. ECPP는 라스 베이거스 알고리즘으로, 100 % 정확한 답변을 얻으면 추측 된 (ECPP) 또는로그로그로그엔O ( 로그5 + ϵ( n ) )O ( 로그4 + ϵ( n ) )( "fastECPP") 시간이지만 더 오래 걸리는 숫자가있을 수 있습니다. 따라서 우리는 표준 AKS가 거의 모든 숫자에 대해 ECPP보다 항상 느릴 것으로 예상합니다 (확실히 25k 자릿수의 숫자에는 그 자체가 표시되었습니다).
AKS는 실용적으로 발견 될 때까지 더 많은 개선이있을 수 있습니다. Bernstein의 Quartic 논문은 AKS 기반 무작위 알고리즘에 대해 설명하고 Morain의 fastECPP 논문은 다른 비 결정적 AKS 기반 방법을 참조합니다. 이것은 근본적인 변화이지만 AKS가 새로운 연구 영역을 어떻게 열 었는지 보여줍니다. 그러나 거의 10 년 후 나는 아무도이 방법 (또는 구현)을 사용하는 것을 보지 못했습니다. 그는인가 ", 도입에 기록하는 보다 작은 새로운 알고리즘 시간 elliptic- 찾을 시간 곡선 증명서? 나의 현재 인상은 대답은 '아니오'이지만, 그 결과는 [...] 대답이 바뀔 수 있다는 것입니다. "O ( 로그4 + ϵ( n ) )( lg엔)4 + o ( 1 )(lgn )4 + o ( 1 )
이러한 알고리즘 중 일부는 쉽게 병렬화 또는 분산 될 수 있습니다. 매우 쉽게 AKS (각 's'테스트는 독립적 임). ECPP는 그렇게 어렵지 않습니다. APR-CL에 대해 잘 모르겠습니다.
ECPP 및 BLS75 방법은 독립적이고 신속하게 확인할 수있는 인증서를 생성합니다. 이는 AKS 및 APR-CL에 비해 큰 이점입니다. 여기서 구현 및 컴퓨터를 신뢰하면됩니다.