복소근 근사 가속화: 단순 구현으로 거의 최적 알고리즘
초록
본 논문은 단일 복소근을 포함하는 격리된 원판을 고립비 5d² 수준으로 빠르게 강화한 뒤, 뉴턴 반복을 적용해 근을 2차 수렴으로 찾는 방법을 제시한다. 핵심은 원판 내부의 파워합을 FFT 기반의 다항식 평가로 근사하는 기술이며, 전체 복소근을 찾는 복잡도는 O(d·log²d·log log (1/ε)) 정도로 거의 최적에 가깝다. 구현이 간단하면서도 부울(비트) 복잡도까지 분석하였다.
상세 분석
이 논문은 기존의 다항식 근 찾기 연구에서 제시된 고성능 알고리즘들을 재조합하여, “격리 비율(isolation ratio)”이라는 개념을 중심으로 새로운 근사 절차를 설계한다. 먼저, 복소다항식 p(x)의 근이 하나만 포함된 원판 D(c,r)이 주어지면, 그 원판이 1+η 정도의 고립성을 가질 때, 파워합을 이용해 원판 중심을 보다 정확히 근에 가깝게 이동시킬 수 있음을 보인다. 구체적으로, 원판 내부의 파워합 s₁ = Σz_j (여기서 z_j는 원판 안의 근) 를 근사하기 위해 q개의 단위근 ω_j (q는 O(log d) 수준) 에서 p(ω_j)/p′(ω_j) 를 평가하고, 이를 FFT(또는 DFT) 로 합산한다. 이 과정은 O(q log q) 연산으로 수행되며, q를 충분히 크게 잡으면 근사 오차가 원하는 수준 이하로 감소한다.
이후, 얻어진 근사값 ĉ를 새로운 중심으로 삼아 원판을 축소하면, 격리 비율이 5d² 이상으로 향상된다. 격리 비율이 충분히 크면 뉴턴 반복 x_{k+1}=x_k−p(x_k)/p′(x_k) 가 초기점부터 2차 수렴을 보장한다. 따라서 전체 알고리즘은 (1) 파워합 근사 → (2) 격리 비율 강화 → (3) 뉴턴 반복의 세 단계로 구성된다.
복잡도 분석에서는 기본 연산을 ‘ops’(산술 연산)와 ‘eOB’(부울 복잡도)로 구분한다. 파워합 근사 단계는 d개의 덧셈과 O(log d·log log d)개의 FFT 연산으로 O(log d·log log d) ops 를 요구한다. 뉴턴 단계는 각 근마다 O(log (1/ε)) 번의 반복이 필요하므로 전체 d개의 근에 대해 O(d·log log (1/ε)) ops 가 추가된다. 따라서 전체 복소근 근사는 O(d·log²d·log log (1/ε)) 연산으로 거의 최적에 가깝다.
부울 복잡도 측면에서는 입력 계수를 정확히 알고 있다고 가정하고, 작업 정밀도 λ 를 적절히 설정하면 전체 비용이 eOB(d²·τ + d·L) 로 제한된다. 여기서 τ는 입력 계수의 비트 크기, L은 최종 근의 목표 비트 정밀도이다. 또한, 다중 근(중복근)에도 동일한 방법을 적용할 수 있음을 보이며, 파생 다항식에 대한 격리 비율이 유지된다는 Lucas 정리의 활용도 강조한다.
마지막으로, 기존의 근 격리 알고리즘(
댓글 및 학술 토론
Loading comments...
의견 남기기