Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Polynome und schnelle Fourier-Transformation

Ähnliche Präsentationen


Präsentation zum Thema: "Polynome und schnelle Fourier-Transformation"—  Präsentation transkript:

1 Polynome und schnelle Fourier-Transformation
Mohsen Taheri FU Berlin – SoSe2012

2 Polynome Ein Polynom ist eine Funktion Koeffizienten:
Ein Polynom hat Grad k wenn der höchste Koeffizient mit einem Wert ungleich 0 Länge = jede ganze Zahl großer als Grad eines Polynoms Polynome und FFT

3 Addition von Polynomen
Seien und Polynome der Länge n Addition von A(x) und B(x) ist hat auch Länge n und Beispiel Laufzeit: Polynome und FFT

4 Multiplikation von Polynomen
Seien und Polynome der Länge n Multiplikation von A(x) und B(x) ist Wobei Länge(C) = Länge(A) + Länge(B) Beispiel Laufzeit: Polynome und FFT

5 Darstellung von Polynomen
Koeffizienten-Darstellung Point-Value-Darstellung Polynome und FFT

6 Koeffizienten-Darstellung
Das Polynom als ein Vektor der Koeffizienten Addition: Laufzeit Multiplikation (wie vorhin): wobei Polynome und FFT

7 Point-Value-Darstellung
Polynom Länge n in Point-Value- Darstellung: eine Menge von Punkten alle sind disjunkt für alle : Auswertung durch Horne-Schema (in ) Polynome und FFT

8 Addition in Point-Value-Darstellung
B : Addition: Laufzeit: Polynome und FFT

9 Multiplikation in Point-Value-Darstellung
Problem: Länge(A.B)=Länge(A)+Länge(B) Lösung: Extended Point-Value 2n Punkte statt n Punkte A: B: Multiplikation: C: Laufzeit : Polynome und FFT

10 Evaluation Evaluation: Transform von Koeffizienten-Vektor zur Point-Value-Darstellung Evaluating: Die Auswertung eines Polynoms unter einen bestimmten Wert von x Mit Hilfe von Horne-Schema in Evaluation insgesamt in Polynome und FFT

11 Interpolation Interpolation: Transform von Point-Value-Darstellung zur Koeffizienten-Darstellung Lagranges Formel Polynome und FFT

12 Theorem 1: Eindeutigkeit von Interpolation der Polynomen
Für alle Menge von n Punkten mit disjunkt gibt es ein eindeutiges Polynom A(x) der Länge n, so dass für alle Polynome und FFT

13 DFT effiziente Methode für Evaluation und Interpolation
Diskrete Fourier Transform Das Polynom in n komplexe n-te Einheitswurzeln auswerten Eingabe: Koeffizienten-Vektor Ausgabe: Vektor Auswertung der Polynom in n Komplexe n-te Einheitswurzeln Polynome und FFT

14 Komplexe Einheitswurzeln
komplexe Einheitswurzel: eine komplexe Zahl wobei Es gibt genau n komplexe n-te Einheitswurzeln: für k=0,1, … , n-1: Die Zahl : primitive n-te Einheitswurzel alle anderen Zahlen sind die Potenzen dieser Zahl n komplexe n-te Einheitswurzeln sind dann: Polynome und FFT

15 Komplexe Einheitswurzeln - Eigenschaften
Additive Gruppe Die n Zahlen haben die gleiche Struktur wie die additive Gruppe Beweis: Polynome und FFT

16 Komplexe Einheitswurzeln - Eigenschaften
Cancellation Lemma Für jede ganze Zahl gilt: Beweis: . Korollar: Für alle ganze Zahlen n>0 gilt: Polynome und FFT

17 Komplexe Einheitswurzeln - Eigenschaften
Halving Lemma: wenn n>0 gerade Zahl die Quadrate der n komplexen n -te Einheitswurzeln sind die n/2 komplexe (n/2)-te Einheitswurzeln: Polynome und FFT

18 Komplexe Einheitswurzeln - Eigenschaften
Halving Lemma: Beweis: Da n gerade ist, nehmen wir an n=2m Zu zeigen: Nach Cancellation Lemma: da , ist dann , also Polynome und FFT

19 Komplexe Einheitswurzeln - Eigenschaften
Summation Lemma: Für jede ganze Zahl n≥1 und für k≠0 und nicht dividierbar durch n, gilt: Polynome und FFT

20 FFT Evaluation eines Polynoms in
unter Verwendung der Eigenschaften der Einheitswurzeln Diese Methode heißt Fast Fourier Transform(FFT). Annahme n ist ein 2er Potenz ( ) Divide-and-Conquer Polynome und FFT

21 FFT das Polynom A(x) in gerade und ungerade indizierte Koeffizienten teilen zwei neue Polynome der Länge n/2 Das Polynom wird so berechnet: Polynome und FFT

22 FFT das Problem von Auswerten des Polynoms in n Punkten ( ) reduziert zu: 1. zwei Polynome der Länge n/2 in Punkten ( ) auswerten 2. das Resultat mit Hilfe der Abgleichung zusammen addieren Polynome und FFT

23 FFT Nach Halving Lemma:
die Anzahl der Elemente der Liste nicht n, sondern n/2. Die zwei Subprobleme haben genau die gleiche Struktur wie das ursprüngliche Problem und sind halb so groß. Polynome und FFT

24 Rekursiv FFT RECURSIVE-FFT(a) n = a.length() if n==1 return a
for k=0 to n/2-1 return y Eingabe: Ausgabe: Zeilen 2-3 Rekursionsbasis: DFT von einem Vektor mit einem Element ist das Element selbst., weil Zeilen 6-7 definieren die Koeffizienten-Vektoren für Zeilen 4,5 und 13 sorgen dafür, dass stets den Wert hat Die Zeilen 8-9 führen die rekursive Berechnung für k=0,1,…,n/2-1: und oder, weil durch Cancellation Lemma , ist: Polynome und FFT

25 Rekursiv FFT Zeilen11-12 kombinieren das Ergebnis der rekursiven Berechnung Zeile 11 für Zeile 12 für zusammengefügt wird Vektor y berechnet Polynome und FFT

26 Rekursiv FFT - Laufzeit
jeder rekursiver Aufruf kostet n = Länge des Eingabevektors Laufzeit: Polynome und FFT

27 Interpolation in Einheitswurzeln
umgekehrtes Verfahren Polynom vom Point-Value zurück zu Koeffizienten Berechnung von DTF als eine Matrizenmultiplikation Vandermonde-Matrix wir brauchen die Inverse-Matrix Polynome und FFT

28 Inverse von Vandermonde-Matrix
Theorem: Für j,k=0,1,…,n-1 sind die (j,k)Einträge von die Zahlen Beweis: z.z.: , wobei die n×n Identitätsmatrix betrachte die (j,j')Einträge von Falls j=j‘ : Falls j≠j‘ : -(n-1) ≤ j-j' ≤ n-1  j-j' ist nicht durch n dividierbar Summation Lemma : Polynome und FFT

29 Interpolation in Einheitswurzeln
I : (j,k)Einträge der sind: II : Vergleiche mit Polynom in Einheitswurzeln leichte Modifikation in Algorithmus berechnet die Interpolation tausche a und y ersetze durch dividiere jedes Element durch n Also die Interpolation auch in berechenbar Polynome und FFT

30 Zusammenfassung Standard-Multiplikation Koeffizienten- Darstellung
Laufzeit Koeffizienten- Darstellung Interpolation Laufzeit Evaluation Laufzeit Wir haben gezeigt, dass mit Hilfe vom Recursive-FFT man die Evaluation und Interpolation eines Polynoms in durchführen kann. Damit man zwei Polynome in Koeffizienten-Form in multipliziert, wird man sie zunächst in Point-Value-Form umwandeln. Diese Transformation ist in machbar. Die Multiplikation in Point-Value-Form kostet nun Zeit. Nachher wird man das Ergebnis der Multiplikation in zurück in Koeffizienten-Form umwandeln. Somit kann man diese Multiplikation insgesamt in durchführen. punktweise Multiplikation Laufzeit Point-Value- Darstellung Polynome und FFT


Herunterladen ppt "Polynome und schnelle Fourier-Transformation"

Ähnliche Präsentationen


Google-Anzeigen