12.07.2015 Views

Algorytmy transformacji wielomianowych i ich zastosowania

Algorytmy transformacji wielomianowych i ich zastosowania

Algorytmy transformacji wielomianowych i ich zastosowania

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

PreliminariaAlgorytm 3.1. Dekonwolucja metodą Newtona.Input: Liczba całkowita n oraz wektory c = (c i ) n−1i=0 i b = (b i) n−1i=0 , gdzie b 0 ≠ 0.Output: Wektor a = c ⊗ b −1 ∈ K n .1. Oblicz d = ( 1b 0, − b 1b 20, 0, . . . , 0 ) .2. Dla k od 2 do ⌈log 2 n⌉:2.1. Oblicz d = 2d − d ⊗ d ⊗ b (wynik obliczeń - 2 k elementów).3. Oblicz a = c ⊗ d.Można wykazać, że w przypadku obliczania splotuc = (c 0 , c 1 , . . . , c n−1 ) = a ⊗ n balgorytmem rzędu O (n log n) złożoność obliczeniowa powyższego algorytmu wynosiO(n log n). W tym celu wystarczy przeanalizować zastosowaną metodę Newtonanieco dokładniej. Niechx i+1 = 2x i − x 2 i y, i = 0, 1, . . .będzie wzorem iteracyjnym Newtona dla funkcji f (x) = x −1 − y (x ≠ 0) . Ponadto,zakładając, że współczynnikid 0 , d 1 , . . . , d 2 i −1, i 1,wielomianu odwrotnego(b0 + b 1 x + . . . + b n−1 x n−1) −1= d0 + d 1 x + . . . + d 2 i −1x 2i−1 + O(x 2i )zostały już obliczone i d k = 0 dla każdego k 2 i . Wtedy pojedyncza iteracja metodyNewtonad = 2 · d − d ⊗ 2 i+1 d ⊗ 2 i+1 bpodwaja liczbę obliczonych współczynników d k (k = 0, 1, . . . , 2 i+1 − 1) wektora dekonwolucji.W konsekwencji wzór iteracyjny Newtonad = 2 · d − d ⊗ 2 i d ⊗ 2 i b, i = 2, 3, . . . , ⌈log 2 n⌉18

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!