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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Nowe algorytmy ewaluacji i interpolacji jednowymiarowejTwierdzenie 4.7. Jeśli M : K n → K n oznacza transformację Maclaurina-Lagrange’adla parami różnych punktów spełniających zależność rekurencyjną x i = αx i−1 +β(i = 0, 1, . . . , n − 1, α ≠ 1, x 0 = γ) , toM (a) = ( g ˜⊗h ) · b, (4.20)gdzie współrzędne wektorów g = (g k ) k=0 2n−2 , h = (h k) k=0 2n−2 i b = (b k ) k=0 n−1 są zdefiniowanewzorami (4.19). Ponadto, jeśli w ciele K istnieją pierwiastki pierwotne z jedności ψi ω = ψ 2 , odpowiednio stopni 2n i n, to algorytm bazujący na wzorze (4.20) ma złożonośćobliczeniową równą O (c(n)), gdzie c(n) oznacza koszt obliczenia zwiniętegosplotu. W szczególnym przypadku, gdy zwinięty splot jest obliczany ze wzoru (3.4),rząd tego algorytmu jest równy O(n log n) .Poniższy algorytm prezentuje szczegóły obliczania <strong>transformacji</strong> Maclaurina-Lagrange’a.Algorytm 4.8. Transformacja Maclaurina-Lagrange’a dla parami różnych węzłówx i = αx i−1 + β, i = 0, 1, . . . , n − 1, α ≠ 0, α ≠ 1, x 0 = γ.Input: Wektor a = (a 0 , a 1 , . . . , a n−1 ) ∈ K n , skalary α ∈ K\{0, 1}, β, γ ∈ K.Output: y = M (a i ) ∈ K.1. Korzystając z (4.18) oblicz elementy wektorów z, w i t.2. Oblicz v = w ⊗ t.3. Dla k od 1 do n − 1 wykonaj:2.1. f k = v n−1−k · z k .4. Korzystając z (4.19) oblicz elementy wektorów b, g i h.5. Oblicz y = g ˜⊗h.6. Wykonaj mnożenie po współrzędnych y = y · b.31

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

Saved successfully!

Ooh no, something went wrong!