69
TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT FFT Els˝ o nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék 2014. április 16. Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT

FFTElso nekifutás

Czirbusz SándorELTE IK, Komputeralgebra Tanszék

2014. április 16.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 2: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT

KIS TÖRTÉNELEM

1805 Gauss – DFT, nem publikálta

1807 Fourier – sorok, nem publikálta1822 Fourier – Théorie analytique de la chaleur1924 Runge, König – Duplázó algoritmus1942 Danielson, Lángos – divide and conquer1965 J. W. Cooley, J. W. Tukey196* Rudnick – az elso O(n log n)-es implementáció1972 Fiduccia

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 3: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT

KIS TÖRTÉNELEM

1805 Gauss – DFT, nem publikálta1807 Fourier – sorok, nem publikálta

1822 Fourier – Théorie analytique de la chaleur1924 Runge, König – Duplázó algoritmus1942 Danielson, Lángos – divide and conquer1965 J. W. Cooley, J. W. Tukey196* Rudnick – az elso O(n log n)-es implementáció1972 Fiduccia

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 4: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT

KIS TÖRTÉNELEM

1805 Gauss – DFT, nem publikálta1807 Fourier – sorok, nem publikálta1822 Fourier – Théorie analytique de la chaleur

1924 Runge, König – Duplázó algoritmus1942 Danielson, Lángos – divide and conquer1965 J. W. Cooley, J. W. Tukey196* Rudnick – az elso O(n log n)-es implementáció1972 Fiduccia

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 5: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT

KIS TÖRTÉNELEM

1805 Gauss – DFT, nem publikálta1807 Fourier – sorok, nem publikálta1822 Fourier – Théorie analytique de la chaleur1924 Runge, König – Duplázó algoritmus

1942 Danielson, Lángos – divide and conquer1965 J. W. Cooley, J. W. Tukey196* Rudnick – az elso O(n log n)-es implementáció1972 Fiduccia

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 6: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT

KIS TÖRTÉNELEM

1805 Gauss – DFT, nem publikálta1807 Fourier – sorok, nem publikálta1822 Fourier – Théorie analytique de la chaleur1924 Runge, König – Duplázó algoritmus1942 Danielson, Lángos – divide and conquer

1965 J. W. Cooley, J. W. Tukey196* Rudnick – az elso O(n log n)-es implementáció1972 Fiduccia

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 7: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT

KIS TÖRTÉNELEM

1805 Gauss – DFT, nem publikálta1807 Fourier – sorok, nem publikálta1822 Fourier – Théorie analytique de la chaleur1924 Runge, König – Duplázó algoritmus1942 Danielson, Lángos – divide and conquer1965 J. W. Cooley, J. W. Tukey

196* Rudnick – az elso O(n log n)-es implementáció1972 Fiduccia

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 8: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT

KIS TÖRTÉNELEM

1805 Gauss – DFT, nem publikálta1807 Fourier – sorok, nem publikálta1822 Fourier – Théorie analytique de la chaleur1924 Runge, König – Duplázó algoritmus1942 Danielson, Lángos – divide and conquer1965 J. W. Cooley, J. W. Tukey196* Rudnick – az elso O(n log n)-es implementáció

1972 Fiduccia

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 9: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT

KIS TÖRTÉNELEM

1805 Gauss – DFT, nem publikálta1807 Fourier – sorok, nem publikálta1822 Fourier – Théorie analytique de la chaleur1924 Runge, König – Duplázó algoritmus1942 Danielson, Lángos – divide and conquer1965 J. W. Cooley, J. W. Tukey196* Rudnick – az elso O(n log n)-es implementáció1972 Fiduccia

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 10: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT

IRODALOM I

Mateer, Todd,FAST FOURIER TRANSFORM ALGORITHMS WITHAPPLICATIONSPhD ThesisClemson University, 2008

Geddes-Czapor-LabahnAlgorithms for Computer AlgebraKluwer Academic, 1992

Bernstein, D.JMultidigit Multiplication for mathematiciansPreprint,http://cr.yp.to/papers.html

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 11: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT

IRODALOM II

Bernstein, D.JFast Multiplication and its applicationsPreprint,http://cr.yp.to/papers.html

Bernstein, D.JThe Tangent FFTPreprint,http://cr.yp.to/papers.html

von zur Gathen, J. and Gerhard, JModern Computer AlgebraCambridge University Press (2003)

von zur Gathen, J. and Gerhard, JFaster Integer Multiplication

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 12: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT

IRODALOM III

Aho, Hopcroft, UllmanThe Design And Analysis of Computer Algorithms

Gentleman, SandeFast Fourier Transforms – For Fun and Profit

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 13: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

MODULÁRIS ARITMETIKA

Moduláris aritmetika Z-benAdottak az m0, . . . ,mn−1 ∈ Z páronként relatív prím 1-nél nagyobb pozitívegész számok, m a szorzatuk. A kínai maradéktétel alapján minden 1, . . . ,mközé eso x egész szám egyértelmuen reprezentálható az x ≡ modmi

maradékokkal.Ebben az eloállításban a szorzás lineáris.

Modulári aritmetika R[x]-benHa az x0, . . . , xn−1 az R gyurubeli különbözo elemek, a kínai maradéktételt azx− x0, . . . , x− xn−1 lineáris modulusokra is megfogalmazhatjuk. Ekkor egyp(x) ∈ R[x] polinom ezen modulusok szerinti eloállítása a p(x0), . . . , p(xn−1)helyettesítési értékek kiszámítását jelenti.A moduláris reprezentációban itt is lineáris a szorzás.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 14: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

MODULÁRIS ARITMETIKA

Moduláris aritmetika Z-benAdottak az m0, . . . ,mn−1 ∈ Z páronként relatív prím 1-nél nagyobb pozitívegész számok, m a szorzatuk. A kínai maradéktétel alapján minden 1, . . . ,mközé eso x egész szám egyértelmuen reprezentálható az x ≡ modmi

maradékokkal.Ebben az eloállításban a szorzás lineáris.

Modulári aritmetika R[x]-benHa az x0, . . . , xn−1 az R gyurubeli különbözo elemek, a kínai maradéktételt azx− x0, . . . , x− xn−1 lineáris modulusokra is megfogalmazhatjuk. Ekkor egyp(x) ∈ R[x] polinom ezen modulusok szerinti eloállítása a p(x0), . . . , p(xn−1)helyettesítési értékek kiszámítását jelenti.A moduláris reprezentációban itt is lineáris a szorzás.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 15: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

MODULÁRIS ARITMETIKA

Moduláris aritmetika Z-benAdottak az m0, . . . ,mn−1 ∈ Z páronként relatív prím 1-nél nagyobb pozitívegész számok, m a szorzatuk. A kínai maradéktétel alapján minden 1, . . . ,mközé eso x egész szám egyértelmuen reprezentálható az x ≡ modmi

maradékokkal.Ebben az eloállításban a szorzás lineáris.

Modulári aritmetika R[x]-benHa az x0, . . . , xn−1 az R gyurubeli1 különbözo elemek, a kínai maradéktételtaz x− x0, . . . , x− xn−1 lineáris modulusokra is megfogalmazhatjuk. Ekkoregy p(x) ∈ R[x] polinom ezen modulusok szerinti eloállítása ap(x0), . . . , p(xn−1) helyettesítési értékek kiszámítását jelenti.A moduláris reprezentációban itt is lineáris a szorzás.

Hogyan lehet gyorsan eloállítani a moduláris reprezentációt?

1Gyurun mindig egységelemes kommutatív gyurut értünk.Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 16: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

SZIMMETRIKUS KIÉRTÉKELÉSI PONTOK

Legyen a(x) ∈ R[x] egy polinom:

a(x) = a0 + a1x + . . .+ an−1xn−1 ;

Ez a polinom felírhatóa(x) = b(x2) + x · c(x2)

alakban, ha csoportosítjuk a páros és páratlan kitevoket.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 17: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

SZIMMETRIKUS KIÉRTÉKELÉSI PONTOK

Legyen a(x) ∈ R[x] egy polinom:

a(x) = a0 + a1x + . . .+ an−1xn−1 ;

Ez a polinom felírhatóa(x) = b(x2) + x · c(x2)

alakban, ha csoportosítjuk a páros és páratlan kitevoket.

ÁllításLegyen x0, . . . , xn−1 olyan pontok R-beli halmaza melyre

xn/2+i = −xi

teljesül, ha 0 5 i 5 n2 − 1. Jelölje T(n) az n− 1-ed fokú polinom kiértékelési

költségét a fenti ponthalmazon. Ekkor T(1) = 0 és:

T(n) = 2 · T(n

2

)+ c · n

2.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 18: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

SZIMMETRIKUS KIÉRTÉKELÉSI PONTOK

Legyen a(x) ∈ R[x] egy polinom:

a(x) = a0 + a1x + . . .+ an−1xn−1 ;

Ez a polinom felírhatóa(x) = b(x2) + x · c(x2)

alakban, ha csoportosítjuk a páros és páratlan kitevoket.

ÁllításLegyen x0, . . . , xn−1 olyan pontok R-beli halmaza melyre

xn/2+i = −xi

teljesül, ha 0 5 i 5 n2 − 1. Jelölje T(n) az n− 1-ed fokú polinom kiértékelési

költségét a fenti ponthalmazon. Ekkor T(1) = 0 és:

T(n) = 2 · T(n

2

)+ c · n

2.

Tulajdonképpen EZ az FFT. Cél: ilyen kiértékelési pontok keresése.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 19: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PRIMITÍV EGYSÉGGYÖKÖK

DefinícióLegyen R gyuru, ω ∈ R és n = 1 egész szám.

ω az R n-edik egységgyöke, ha ωn = 1;ω n-edik primitív egységgyök, ha n-edik egységgyök, n ∈ Regység R-ben és az n bármely p prímosztójára ω

np − 1 nem

zérusosztó R-ben.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 20: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PRIMITÍV EGYSÉGGYÖKÖK

DefinícióLegyen R gyuru, ω ∈ R és n = 1 egész szám.

ω az R n-edik egységgyöke, ha ωn = 1;

ω n-edik primitív egységgyök, ha n-edik egységgyök, n ∈ Regység R-ben és az n bármely p prímosztójára ω

np − 1 nem

zérusosztó R-ben.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 21: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PRIMITÍV EGYSÉGGYÖKÖK

DefinícióLegyen R gyuru, ω ∈ R és n = 1 egész szám.

ω az R n-edik egységgyöke, ha ωn = 1;ω n-edik primitív egységgyök, ha n-edik egységgyök, n ∈ Regység R-ben és az n bármely p prímosztójára ω

np − 1 nem

zérusosztó R-ben.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 22: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

MEGJEGYZÉSEK, PÉLDÁK

A primitív egységgyököt néha principális- vagy foegységgyöknek nevezik;

Integritási tartományban a második feltétel arraegyszerusödik, hogy ω

np nem egységgyök;

C egységgyökei a klasszikus példák;Z6-ban 52 = 1, de 2 nem egység, így 5 nem primitív;Z17-ben 16 egységgyök a 3, a 2 nem.Z14-ben a 3 egységgyök, de nem primitív, a 9 viszont 3.primitív

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 23: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

MEGJEGYZÉSEK, PÉLDÁK

A primitív egységgyököt néha principális- vagy foegységgyöknek nevezik;Integritási tartományban a második feltétel arraegyszerusödik, hogy ω

np nem egységgyök;

C egységgyökei a klasszikus példák;Z6-ban 52 = 1, de 2 nem egység, így 5 nem primitív;Z17-ben 16 egységgyök a 3, a 2 nem.Z14-ben a 3 egységgyök, de nem primitív, a 9 viszont 3.primitív

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 24: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

MEGJEGYZÉSEK, PÉLDÁK

A primitív egységgyököt néha principális- vagy foegységgyöknek nevezik;Integritási tartományban a második feltétel arraegyszerusödik, hogy ω

np nem egységgyök;

C egységgyökei a klasszikus példák;

Z6-ban 52 = 1, de 2 nem egység, így 5 nem primitív;Z17-ben 16 egységgyök a 3, a 2 nem.Z14-ben a 3 egységgyök, de nem primitív, a 9 viszont 3.primitív

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 25: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

MEGJEGYZÉSEK, PÉLDÁK

A primitív egységgyököt néha principális- vagy foegységgyöknek nevezik;Integritási tartományban a második feltétel arraegyszerusödik, hogy ω

np nem egységgyök;

C egységgyökei a klasszikus példák;Z6-ban 52 = 1, de 2 nem egység, így 5 nem primitív;

Z17-ben 16 egységgyök a 3, a 2 nem.Z14-ben a 3 egységgyök, de nem primitív, a 9 viszont 3.primitív

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 26: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

MEGJEGYZÉSEK, PÉLDÁK

A primitív egységgyököt néha principális- vagy foegységgyöknek nevezik;Integritási tartományban a második feltétel arraegyszerusödik, hogy ω

np nem egységgyök;

C egységgyökei a klasszikus példák;Z6-ban 52 = 1, de 2 nem egység, így 5 nem primitív;Z17-ben 16 egységgyök a 3, a 2 nem.

Z14-ben a 3 egységgyök, de nem primitív, a 9 viszont 3.primitív

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 27: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

MEGJEGYZÉSEK, PÉLDÁK

A primitív egységgyököt néha principális- vagy foegységgyöknek nevezik;Integritási tartományban a második feltétel arraegyszerusödik, hogy ω

np nem egységgyök;

C egységgyökei a klasszikus példák;Z6-ban 52 = 1, de 2 nem egység, így 5 nem primitív;Z17-ben 16 egységgyök a 3, a 2 nem.Z14-ben a 3 egységgyök, de nem primitív, a 9 viszont 3.primitív

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 28: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

EGYSÉGGYÖK LÉTEZÉSE

ÁllításHa az R gyuruben csak véges sok u1, . . . ,um egység létezik, akkor

1 ui1 · . . . · uik egység minden 1 5 k 5 m esetén;2 Speciálisan um egység;3 Minden egységhez van olyan n 5 m, hogy un = 1.

MegjegyzésEz a kis Fermat-tétel általánosítása.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 29: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

EGYSÉGGYÖK LÉTEZÉSE

ÁllításHa az R gyuruben csak véges sok u1, . . . ,um egység létezik, akkor

1 ui1 · . . . · uik egység minden 1 5 k 5 m esetén;

2 Speciálisan um egység;3 Minden egységhez van olyan n 5 m, hogy un = 1.

MegjegyzésEz a kis Fermat-tétel általánosítása.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 30: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

EGYSÉGGYÖK LÉTEZÉSE

ÁllításHa az R gyuruben csak véges sok u1, . . . ,um egység létezik, akkor

1 ui1 · . . . · uik egység minden 1 5 k 5 m esetén;2 Speciálisan um egység;

3 Minden egységhez van olyan n 5 m, hogy un = 1.

MegjegyzésEz a kis Fermat-tétel általánosítása.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 31: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

EGYSÉGGYÖK LÉTEZÉSE

ÁllításHa az R gyuruben csak véges sok u1, . . . ,um egység létezik, akkor

1 ui1 · . . . · uik egység minden 1 5 k 5 m esetén;2 Speciálisan um egység;3 Minden egységhez van olyan n 5 m, hogy un = 1.

MegjegyzésEz a kis Fermat-tétel általánosítása.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 32: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

EGYSÉGGYÖK LÉTEZÉSE

ÁllításHa az R gyuruben csak véges sok u1, . . . ,um egység létezik, akkor

1 ui1 · . . . · uik egység minden 1 5 k 5 m esetén;2 Speciálisan um egység;3 Minden egységhez van olyan n 5 m, hogy un = 1.

MegjegyzésEz a kis Fermat-tétel általánosítása.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 33: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PRIMITÍV GYÖK HATVÁNYAI

ÁllításLegyen ω ∈ R primitív n-edik egységgyök, továbbá 1 5 k < n egész.Ekkor

1 ωk − 1 nem zérusosztó R-ben;2∑n−1

j=0 ωkj = 0.

Bizonyítás.A mértani sorozatra vonatkozó összefüggés alapján mindenc ∈ R esetén:

(c− 1) ·m−1∑j=1

cj = cm − 1 , (1)

ahol m pozitív egész.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 34: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PRIMITÍV GYÖK HATVÁNYAI

ÁllításLegyen ω ∈ R primitív n-edik egységgyök, továbbá 1 5 k < n egész.Ekkor

1 ωk − 1 nem zérusosztó R-ben;

2∑n−1

j=0 ωkj = 0.

Bizonyítás.A mértani sorozatra vonatkozó összefüggés alapján mindenc ∈ R esetén:

(c− 1) ·m−1∑j=1

cj = cm − 1 , (1)

ahol m pozitív egész.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 35: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PRIMITÍV GYÖK HATVÁNYAI

ÁllításLegyen ω ∈ R primitív n-edik egységgyök, továbbá 1 5 k < n egész.Ekkor

1 ωk − 1 nem zérusosztó R-ben;2∑n−1

j=0 ωkj = 0.

Bizonyítás.A mértani sorozatra vonatkozó összefüggés alapján mindenc ∈ R esetén:

(c− 1) ·m−1∑j=1

cj = cm − 1 , (1)

ahol m pozitív egész.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 36: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PRIMITÍV GYÖK HATVÁNYAI

ÁllításLegyen ω ∈ R primitív n-edik egységgyök, továbbá 1 5 k < n egész.Ekkor

1 ωk − 1 nem zérusosztó R-ben;2∑n−1

j=0 ωkj = 0.

Bizonyítás.A mértani sorozatra vonatkozó összefüggés alapján mindenc ∈ R esetén:

(c− 1) ·m−1∑j=1

cj = cm − 1 , (1)

ahol m pozitív egész.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 37: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A BIZONYÍTÁS BEFEJEZÉSE

1 Legyen g = (k,n), továbbá u, v ∈ Z olyanok, hogyuk + vn = g. Ekkor van olyan p prímosztója n-nek, hogy gosztja n

p -t.

Az (1)-ben c = ωg és m = npg jelöléssel azt kapjuk,

hogy valamilyen a ∈ R-rel a · (ωg − 1) = ωnp − 1. De emiatt

b · (ωg − 1) = 0-ból következik, hogy b · (ωnp − 1) = 0, ezért

b = 0.2 Ha (1)-ben c = ωk, akkor

(ωk − 1) ·n∑

j=1

(ωk)j = ωkn − 1 = 0 ,

ezért a szumma valóban nulla, mert ωk− 1 nem zérusosztó.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 38: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A BIZONYÍTÁS BEFEJEZÉSE

1 Legyen g = (k,n), továbbá u, v ∈ Z olyanok, hogyuk + vn = g. Ekkor van olyan p prímosztója n-nek, hogy gosztja n

p -t.

Az (1)-ben c = ωg és m = npg jelöléssel azt kapjuk,

hogy valamilyen a ∈ R-rel a · (ωg − 1) = ωnp − 1. De emiatt

b · (ωg − 1) = 0-ból következik, hogy b · (ωnp − 1) = 0, ezért

b = 0.

2 Ha (1)-ben c = ωk, akkor

(ωk − 1) ·n∑

j=1

(ωk)j = ωkn − 1 = 0 ,

ezért a szumma valóban nulla, mert ωk− 1 nem zérusosztó.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 39: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A BIZONYÍTÁS BEFEJEZÉSE

1 Legyen g = (k,n), továbbá u, v ∈ Z olyanok, hogyuk + vn = g. Ekkor van olyan p prímosztója n-nek, hogy gosztja n

p -t.

Az (1)-ben c = ωg és m = npg jelöléssel azt kapjuk,

hogy valamilyen a ∈ R-rel a · (ωg − 1) = ωnp − 1. De emiatt

b · (ωg − 1) = 0-ból következik, hogy b · (ωnp − 1) = 0, ezért

b = 0.

2 Ha (1)-ben c = ωk, akkor

(ωk − 1) ·n∑

j=1

(ωk)j = ωkn − 1 = 0 ,

ezért a szumma valóban nulla, mert ωk− 1 nem zérusosztó.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 40: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A BIZONYÍTÁS BEFEJEZÉSE

1 Legyen g = (k,n), továbbá u, v ∈ Z olyanok, hogyuk + vn = g. Ekkor van olyan p prímosztója n-nek, hogy gosztja n

p -t. Az (1)-ben c = ωg és m = npg jelöléssel azt kapjuk,

hogy valamilyen a ∈ R-rel a · (ωg − 1) = ωnp − 1.

De emiattb · (ωg − 1) = 0-ból következik, hogy b · (ω

np − 1) = 0, ezért

b = 0.

2 Ha (1)-ben c = ωk, akkor

(ωk − 1) ·n∑

j=1

(ωk)j = ωkn − 1 = 0 ,

ezért a szumma valóban nulla, mert ωk− 1 nem zérusosztó.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 41: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A BIZONYÍTÁS BEFEJEZÉSE

1 Legyen g = (k,n), továbbá u, v ∈ Z olyanok, hogyuk + vn = g. Ekkor van olyan p prímosztója n-nek, hogy gosztja n

p -t. Az (1)-ben c = ωg és m = npg jelöléssel azt kapjuk,

hogy valamilyen a ∈ R-rel a · (ωg − 1) = ωnp − 1. De emiatt

b · (ωg − 1) = 0-ból következik, hogy b · (ωnp − 1) = 0, ezért

b = 0.

2 Ha (1)-ben c = ωk, akkor

(ωk − 1) ·n∑

j=1

(ωk)j = ωkn − 1 = 0 ,

ezért a szumma valóban nulla, mert ωk− 1 nem zérusosztó.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 42: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A BIZONYÍTÁS BEFEJEZÉSE

1 Legyen g = (k,n), továbbá u, v ∈ Z olyanok, hogyuk + vn = g. Ekkor van olyan p prímosztója n-nek, hogy gosztja n

p -t. Az (1)-ben c = ωg és m = npg jelöléssel azt kapjuk,

hogy valamilyen a ∈ R-rel a · (ωg − 1) = ωnp − 1. De emiatt

b · (ωg − 1) = 0-ból következik, hogy b · (ωnp − 1) = 0, ezért

b = 0.2 Ha (1)-ben c = ωk, akkor

(ωk − 1) ·n∑

j=1

(ωk)j = ωkn − 1 = 0 ,

ezért a szumma valóban nulla, mert ωk− 1 nem zérusosztó.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 43: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

EGYSÉGGYÖK VÉGES TESTBEN

ÁllításAz Fq véges testben pontosan akkor van n-edik primitív egységgyök,ha n | q− 1.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 44: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A DFT DEFINÍCIÓJA

Legyen R egy gyuru, n pozitív egész szám, ω ∈ R primitívn-edik egységgyök. Legyen tovább f ∈ R[x] egy legfeljebbn− 1-ed fokú polinom, (f0, f1, . . . , fn−1) ∈ Rn azegyütthatóvektora.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 45: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A DFT DEFINÍCIÓJA

Legyen R egy gyuru, n pozitív egész szám, ω ∈ R primitívn-edik egységgyök. Legyen tovább f ∈ R[x] egy legfeljebbn− 1-ed fokú polinom, (f0, f1, . . . , fn−1) ∈ Rn azegyütthatóvektora.

DefinícióA DFTω : Rn → Rn, (f0, f1, . . . , fn−1) 7→

(f (1), f (ω), . . . , f (ωn−1)

)módon definiált leképezés az ω-hoz tartozó DISZKRÉT

FOURIER-TRANSZFORMÁCIÓ. Az {1, ω, . . . , ωn−1} pontok aFouirer-pontok.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 46: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A DFT DEFINÍCIÓJA

Legyen R egy gyuru, n pozitív egész szám, ω ∈ R primitívn-edik egységgyök. Legyen tovább f ∈ R[x] egy legfeljebbn− 1-ed fokú polinom, (f0, f1, . . . , fn−1) ∈ Rn azegyütthatóvektora.

DefinícióA DFTω : Rn → Rn, (f0, f1, . . . , fn−1) 7→

(f (1), f (ω), . . . , f (ωn−1)

)módon definiált leképezés az ω-hoz tartozó DISZKRÉT

FOURIER-TRANSZFORMÁCIÓ. Az {1, ω, . . . , ωn−1} pontok aFouirer-pontok.

MegjegyzésNyilvánvaló, hogy DFTω lineáris.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 47: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A FOURIER PONTOK ÉS A SZIMMETRIA

ÁllításA Fourier-pontok szimmetrikus kiértékelési pontok.

BizonyításMivel ω n-edik primitív egységgyök,(

ωn/2+j)2

= ωn ·(ωj)2

=(ωj)2

,

ezért (ωn/2+j − ωj

)·(ωn/2+j + ωj

)= 0 .

Ha most (ωn/2+j − ωj nulla lenne, akkor ωn/2 − 1 zérusosztó lenne,ellentmondás.Tehát ωn/2+j + ωj = 0.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 48: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PÁROS n ESETE

ÁllításLegyen n páros pozitív egész, ω ∈ R n-edik primitív egységgyök.Ekkor

(a) ω2 primitív n2 -edik gyök.

(b) Az 1, ω2, ω4, . . . , ωn szimmetrikus kiértékelési pontok.

Bizonyítás

a) Nyilvánvaló, hogy (ω2)n2 = 1. Ha most (ω2)

n/2p = 1 lenne az

n/2 valamilyen p prímosztója esetén, akkor ωn/p − 1 iszérusosztó lenne.

b) Mivel az „új” pontok halmaza részhalmaza a „régi”pontok halmazának, igaz.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 49: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PÁROS n ESETE

ÁllításLegyen n páros pozitív egész, ω ∈ R n-edik primitív egységgyök.Ekkor(a) ω2 primitív n

2 -edik gyök.

(b) Az 1, ω2, ω4, . . . , ωn szimmetrikus kiértékelési pontok.

Bizonyítás

a) Nyilvánvaló, hogy (ω2)n2 = 1. Ha most (ω2)

n/2p = 1 lenne az

n/2 valamilyen p prímosztója esetén, akkor ωn/p − 1 iszérusosztó lenne.

b) Mivel az „új” pontok halmaza részhalmaza a „régi”pontok halmazának, igaz.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 50: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PÁROS n ESETE

ÁllításLegyen n páros pozitív egész, ω ∈ R n-edik primitív egységgyök.Ekkor(a) ω2 primitív n

2 -edik gyök.(b) Az 1, ω2, ω4, . . . , ωn szimmetrikus kiértékelési pontok.

Bizonyítás

a) Nyilvánvaló, hogy (ω2)n2 = 1. Ha most (ω2)

n/2p = 1 lenne az

n/2 valamilyen p prímosztója esetén, akkor ωn/p − 1 iszérusosztó lenne.

b) Mivel az „új” pontok halmaza részhalmaza a „régi”pontok halmazának, igaz.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 51: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PÁROS n ESETE

ÁllításLegyen n páros pozitív egész, ω ∈ R n-edik primitív egységgyök.Ekkor(a) ω2 primitív n

2 -edik gyök.(b) Az 1, ω2, ω4, . . . , ωn szimmetrikus kiértékelési pontok.

Bizonyítás

a) Nyilvánvaló, hogy (ω2)n2 = 1. Ha most (ω2)

n/2p = 1 lenne az

n/2 valamilyen p prímosztója esetén, akkor ωn/p − 1 iszérusosztó lenne.

b) Mivel az „új” pontok halmaza részhalmaza a „régi”pontok halmazának, igaz.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 52: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PÁROS n ESETE

ÁllításLegyen n páros pozitív egész, ω ∈ R n-edik primitív egységgyök.Ekkor(a) ω2 primitív n

2 -edik gyök.(b) Az 1, ω2, ω4, . . . , ωn szimmetrikus kiértékelési pontok.

Bizonyítás

a) Nyilvánvaló, hogy (ω2)n2 = 1. Ha most (ω2)

n/2p = 1 lenne az

n/2 valamilyen p prímosztója esetén, akkor ωn/p − 1 iszérusosztó lenne.

b) Mivel az „új” pontok halmaza részhalmaza a „régi”pontok halmazának, igaz.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 53: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

PÁROS n ESETE

ÁllításLegyen n páros pozitív egész, ω ∈ R n-edik primitív egységgyök.Ekkor(a) ω2 primitív n

2 -edik gyök.(b) Az 1, ω2, ω4, . . . , ωn szimmetrikus kiértékelési pontok.

Bizonyítás

a) Nyilvánvaló, hogy (ω2)n2 = 1. Ha most (ω2)

n/2p = 1 lenne az

n/2 valamilyen p prímosztója esetén, akkor ωn/p − 1 iszérusosztó lenne.

b) Mivel az „új” pontok halmaza részhalmaza a „régi”pontok halmazának, igaz.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 54: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

MEGJEGYZÉS, PÉLDÁK

A fenti állítás adja az algoritmust;

Z41-ben a 14 8-adik primitív egységgyök, a Fourier-pontok:1, 14,−9,−3,−1,−14, 9, 3, mivel 92 = −14, a következosorozat: 1,−9,−1, 9, s.í.t.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 55: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

MEGJEGYZÉS, PÉLDÁK

A fenti állítás adja az algoritmust;Z41-ben a 14 8-adik primitív egységgyök, a Fourier-pontok:1, 14,−9,−3,−1,−14, 9, 3, mivel 92 = −14, a következosorozat: 1,−9,−1, 9, s.í.t.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 56: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TA

RT

AL

OM

JEG

YZ

ÉK

Kis

történelemIrodalom

Az

FFTM

odulárisaritm

etikaPrim

itívegységgyökök

AD

FTA

zalgoritm

usA

zinverz

FFTPolinom

okgyors

szorzása

AZ ALGORITMUS

!

Algorithm 1: FFT(N, ω, a(x))

Input: Adott N, kettohatványInput: ω primitív N-edik primitív egységgyökInput: a(x) legfeljebb N − 1-ed fokú polinomOutput: A polinom Fourier transzformáltja

beginif N = 1 then

A0 ← a0 ;

else

b(x)←∑N

2 −1i=0 a2i · xi ;

c(x)←∑N

2 −1i=0 a2i+i · xi ;

B← FFT(N2 , ω

2, b(x)) ;C← FFT(N

2 , ω2, c(x)) ;

for i← 0 to N2 − 1 do

Ai ← Bi + ωi · Ci ;A N

2 +i ← Bi − ωi · Ci ;

return (A0,A1, . . . ,AN−1) ;C

zirbuszSándor

ELTEIK

,Kom

puteralgebraTanszék

FFT

Page 57: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

AZ FFT MUVELETIGÉNYE

TételA szimmetrikus Fourier-pontokon végrehajtott DFT iterációmuveletigénye O(n · log n)

BizonyításHa T(n) a muveletigény, akkor mint már beláttuk, hogy

T(0) = 1,T(n) = 2 · T(n2 ) + c · n. Ha n = 2k alakú, akkor

n2 = 2k−1-et alkalmazva iterálva a felezéseket pont abizonyítandó képletet kapjuk.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 58: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A DFT MÁTRIXA

A DFTω lineáris leképezés mátrixa a standard bázisban:

Vω =

1 1 1 · · · 11 ω ω2 . . . ωn−1

1 ω2 ω3 . . . ω2(n−1)

......

.... . .

...1 ωn−1 ω2(n−1) . . . ω(n−1)2

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 59: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

AZ INVERZ MÁTRIXA

TételLegyen R kommutatív egységelemes gyuru, n = 1 egész szám, ωn-edik primitív egységgyök. Ekkor ω−1 is n-edik primitív egységgyökés

Vω · Vω−1 = n · In ,

ahol In az n× n-es egységmátrix.

Bizonyítás.

Az, hogy ω−1 egységgyök, következik abból, hogy 1 = ωn =ω · ωn−1,

így ω−1 = ωn−1. Tehát (ω−1)n = (ωn)n−1 = 1. Ezekszerint általában ω−k = ωn−k. Ezért (ω−1)k − 1 = ωn−k − 1 nemlehet zérusosztó.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 60: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

AZ INVERZ MÁTRIXA

TételLegyen R kommutatív egységelemes gyuru, n = 1 egész szám, ωn-edik primitív egységgyök. Ekkor ω−1 is n-edik primitív egységgyökés

Vω · Vω−1 = n · In ,

ahol In az n× n-es egységmátrix.

Bizonyítás.

Az, hogy ω−1 egységgyök, következik abból, hogy 1 = ωn =ω · ωn−1,

így ω−1 = ωn−1. Tehát (ω−1)n = (ωn)n−1 = 1. Ezekszerint általában ω−k = ωn−k. Ezért (ω−1)k − 1 = ωn−k − 1 nemlehet zérusosztó.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 61: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

AZ INVERZ MÁTRIXA

TételLegyen R kommutatív egységelemes gyuru, n = 1 egész szám, ωn-edik primitív egységgyök. Ekkor ω−1 is n-edik primitív egységgyökés

Vω · Vω−1 = n · In ,

ahol In az n× n-es egységmátrix.

Bizonyítás.

Az, hogy ω−1 egységgyök, következik abból, hogy 1 = ωn =ω · ωn−1,

így ω−1 = ωn−1. Tehát (ω−1)n = (ωn)n−1 = 1. Ezekszerint általában ω−k = ωn−k. Ezért (ω−1)k − 1 = ωn−k − 1 nemlehet zérusosztó.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 62: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

AZ INVERZ MÁTRIXA

TételLegyen R kommutatív egységelemes gyuru, n = 1 egész szám, ωn-edik primitív egységgyök. Ekkor ω−1 is n-edik primitív egységgyökés

Vω · Vω−1 = n · In ,

ahol In az n× n-es egységmátrix.

Bizonyítás.

Az, hogy ω−1 egységgyök, következik abból, hogy 1 = ωn =ω · ωn−1, így ω−1 = ωn−1.

Tehát (ω−1)n = (ωn)n−1 = 1. Ezekszerint általában ω−k = ωn−k. Ezért (ω−1)k − 1 = ωn−k − 1 nemlehet zérusosztó.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 63: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

AZ INVERZ MÁTRIXA

TételLegyen R kommutatív egységelemes gyuru, n = 1 egész szám, ωn-edik primitív egységgyök. Ekkor ω−1 is n-edik primitív egységgyökés

Vω · Vω−1 = n · In ,

ahol In az n× n-es egységmátrix.

Bizonyítás.

Az, hogy ω−1 egységgyök, következik abból, hogy 1 = ωn =ω · ωn−1, így ω−1 = ωn−1. Tehát (ω−1)n = (ωn)n−1 = 1. Ezekszerint általában ω−k = ωn−k. Ezért (ω−1)k − 1 = ωn−k − 1 nemlehet zérusosztó.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 64: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A BIZONYÍTÁS BEFEJEZÉSE

Be kell még látni a két mátrix szorzására vonatkozó állítást. Aszorzat tetszoleges elemére:

u =(Vω · Vω−1)i,k

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 65: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A BIZONYÍTÁS BEFEJEZÉSE

Be kell még látni a két mátrix szorzására vonatkozó állítást. Aszorzat tetszoleges elemére:

u =(Vω · Vω−1)i,k

=

n−1∑j=0

(Vω)i,j · (Vω−1)j,k

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 66: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A BIZONYÍTÁS BEFEJEZÉSE

Be kell még látni a két mátrix szorzására vonatkozó állítást. Aszorzat tetszoleges elemére:

u =(Vω · Vω−1)i,k

=

n−1∑j=0

(Vω)i,j · (Vω−1)j,k

=

n−1∑j=0

ωi·j · ω−j·k

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 67: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A BIZONYÍTÁS BEFEJEZÉSE

Be kell még látni a két mátrix szorzására vonatkozó állítást. Aszorzat tetszoleges elemére:

u =(Vω · Vω−1)i,k

=

n−1∑j=0

(Vω)i,j · (Vω−1)j,k

=

n−1∑j=0

ωi·j · ω−j·k

=∑(

ωi−k)j

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 68: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TARTALOMJEGYZÉK Kis történelem Irodalom Az FFT Moduláris aritmetika Primitív egységgyökök A DFT Az algoritmus Az inverz FFT Polinomok gyors szorzása

A BIZONYÍTÁS BEFEJEZÉSE

Be kell még látni a két mátrix szorzására vonatkozó állítást. Aszorzat tetszoleges elemére:

u =(Vω · Vω−1)i,k

=

n−1∑j=0

(Vω)i,j · (Vω−1)j,k

=

n−1∑j=0

ωi·j · ω−j·k

=∑(

ωi−k)j

Ha i = k, akkor a szumma n, egyébként 0.

Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék FFT

Page 69: Elso˝ nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszékcompalg.inf.elte.hu/~czirbusz/teaching/effalg/FFT.pdf · 2014. 5. 21. · TARTALOMJEGYZÉK Kis történelemIrodalomAz

TA

RT

AL

OM

JEG

YZ

ÉK

Kis

történelemIrodalom

Az

FFTM

odulárisaritm

etikaPrim

itívegységgyökök

AD

FTA

zalgoritm

usA

zinverz

FFTPolinom

okgyors

szorzása

AZ ALGORITMUS

!

Algorithm 2: FFT_Multiply(a(x), b(x))

Input: a(x), b(x) két polinom, m,n fokszámokkalOutput: c(x) = a(x) · b(x) polinom FFT-vel

beginm← deg a(x) ;n← deg b(x) ;N ← az elso 2 hatvány, mely nagyobb mintm + n ;ω ← primitív N-e-edik egységgyök ;A← FFT(N, ω, a(x)) ;B← FFT(N, ω, b(x)) ;for i← 0 to N − 1 do

Ci ← Ai · Bi ;

c← N−1 · FFT(N, ω−1,C(x)) ;c(x)←

∑N−1i=0 cixi ;

return c(x) ;

Czirbusz

SándorELTE

IK,K

omputeralgebra

TanszékFFT