윌슨 소수 탐색: 평균 다항 시간 알고리즘의 혁신

윌슨 소수 탐색: 평균 다항 시간 알고리즘의 혁신
안내: 본 포스트의 한글 요약 및 분석 리포트는 AI 기술을 통해 자동 생성되었습니다. 정보의 정확성을 위해 하단의 [원본 논문 뷰어] 또는 ArXiv 원문을 반드시 참조하시기 바랍니다.

초록

이 논문은 (p-1)! ≡ -1 (mod p²) 조건을 만족하는 ‘윌슨 소수’를 2×10¹³까지 탐색한 결과를 보고합니다. 기존 알고리즘의 지수적 시간 복잡도를 극복하고, 소수당 평균 다항 시간(poly(log p))에 (p-1)! mod p²를 계산할 수 있는 최초의 알고리즘을 제시하며, 실용적인 시간-메모리 절충 알고리즘을 통해 대규모 탐색을 수행했습니다. 새로운 윌슨 소수는 발견되지 않았습니다.

상세 분석

이 논문의 핵심 기술적 기여는 윌슨 잉여 w_p = ((p-1)! + 1)/p mod p를 계산하는 복잡도를 근본적으로 개선한 것입니다. 기존 방법들은 p에 대해 선형 또는 √p에 준하는 시간이 소요되어 입력 크기(log p) 기준으로 지수적 복잡도를 가졌습니다.

저자들은 Theorem 1에서 소수 p ≤ N에 대한 모든 w_p를 N log³⁺ᵋ N 시간에 계산하는 알고리즘을 제시합니다. 핵심 아이디어는 서로 다른 소수 p에 대한 (p-1)! 계산 사이의 중복성을 활용하는 것입니다. 예를 들어, N < p < 2N 구간의 모든 w_p 계산에는 N!이 공통 인자로 포함됩니다. 따라서 N!을 개별 p²가 아닌, 모든 p²의 곱(Q = ∏ p²)에 대해 한 번만 계산한 후, 나머지 트리(Remainder Tree) 기법을 통해 각 p²에 대한 모듈로 값을 효율적으로 복원합니다. 이 과정에서 FFT 기반 고속 정수 연산을 사용하며, 이를 재귀적으로 적용하여 평균 소수당 log⁴ p 시간을 달성합니다.

Theorem 2는 Theorem 1 알고리즘의 큰 메모리 요구량을 해결한 실용적 절충안입니다. 구간 M < p ≤ N의 w_p를 계산할 때, 1단계(Stage 1)에서 M! mod Q를 계산하고(M log²⁺ᵋ M 시간), 2단계(Stage 2)에서 Theorem 1의 방식을 변형하여 나머지를 처리합니다. 이를 통해 사용자가 가용 RAM 크기에 맞춰 구간 크기(N-M)를 조절할 수 있게 합니다. 실제 2×10¹³까지의 탐색은 이 방식을 연속 구간에 적용하여 수행되었으며, 110만 CPU 시간 이상이 소요되었습니다.

또한 논문의 3섹션에서는 p-1의 작은 약수 e에 대해 ((p-1)/e)! mod p² 계산으로 문제를 환원시키는 정수론적 항등식들을 확장 소개합니다. 이는 Crandall 등이 제안한 기법을 일반화한 것으로, 특정 조건의 소수에 대해 계산량을 e배 가량 줄일 수 있는 잠재력을 가집니다.

이러한 알고리즘 혁신은 단일 w_p 계산의 점근적 복잡도를 개선하지는 않았지만(최선은 여전히 p¹ᐟ²⁺ᵋ), 체계적인 대규모 탐색이라는 본래 문제에 있어서는 획기적인 속도 향상을 가능하게 했습니다. 계산 결과, |w_p| ≤ p/50000인 약 2700만 개의 소수에 대한 잉여값이 공개되었으며, 새로운 윌슨 소수는 발견되지 않아 기존 3개(5, 13, 563)만이 알려진 상태입니다.


댓글 및 학술 토론

Loading comments...

의견 남기기