Was sind die bekanntesten Methoden für die zyklische Faltung der Länge über ein kleines Feld, dh wenn ? Ich interessiere mich besonders für Felder mit konstanter Größe oder sogar . Allgemeine Aussagen und Referenzen zur asymptotischen Effizienz werden sehr geschätzt.
Hintergrund: Sei ein Feld und . Wir denken an Vektoren mit durch indizierten Koordinaten .
Die (zyklische) Faltung der Länge über F ist die Transformation, die u , v ∈ F n nimmt und u ∗ v ∈ F n ausgibt , definiert durch mit über .Z n
Um eine zyklische Faltung über große Felder durchzuführen, besteht eine beliebte Methode darin, den Faltungssatz zu verwenden, um unser Problem auf die Durchführung diskreter Fouriertransformationen (DFTs) und die Verwendung eines FFT-Algorithmus zu reduzieren.
Für kleine endliche Felder ist die DFT undefiniert, weil es keine primitive te Einheitswurzel gibt. Man kann dies durch die Einbettung zu umgehen * das Problem in einem größeren endlichen Körper, aber es ist nicht klar , dass dies der beste Weg ist , um fortzufahren. Selbst wenn wir diesen Weg einschlagen, wäre es schön zu wissen, ob jemand die Details bereits ausgearbeitet hat (zum Beispiel, welches größere Feld verwendet und welcher FFT-Algorithmus angewendet werden soll).
Hinzugefügt:
Mit "Einbetten" unserer Faltung meine ich eines von zwei Dingen. Erste Option: Man könnte zu einem Erweiterungsfeld übergehen, in dem sich die gewünschten primitiven Wurzeln der Einheit anschließen, und dort die Faltung durchführen.
Zweite Option: Wenn unser Startfeld zyklisch ist, könnte man zu einem zyklischen Feld größerer Charakteristik übergehen - groß genug, wenn wir unsere Vektoren als in liegend betrachten. tritt kein "Wraparound" auf.
(Ich bin informell, aber denke nur darüber nach, wie wir, um eine Faltung über zu berechnen , dieselbe Faltung über , und nehme dann die Antworten Mod 2.) F p ' F 2 Z
Auch hinzugefügt:
Viele Algorithmen für FFT und verwandte Probleme funktionieren besonders gut für 'nette' Werte von (und ich möchte die Situation damit besser verstehen).
Wenn man aber nicht versucht, spezielle Werte von auszunutzen , ist das Problem der zyklischen Faltung im Grunde genommen (durch einfache Verkleinerung mit linearer Aufblähung in ) gleichbedeutend mit der normalen Faltung; Dies entspricht wiederum der Multiplikation von Polynomen mit Koeffizienten über . n F p
Durch diese Äquivalenz kann man Ergebnisse zB in dieser Arbeit von zur Gathen und Gerhard (basierend auf Cantor) verwenden, die einen Extension-Field-Ansatz verwenden, um eine Schaltungskomplexität zu erhalten, die von . Sie geben ihre Grenzen nicht besonders deutlich an, IMO, aber die Grenze ist schlimmer als selbst für . Kann man es besser machen?n⋅log2nF2