Implementierung komplexer Zahlen und FFT mit nur Datentypen (keine Gleitkommazahlen)
Dieser Artikel präsentiert eine Methode zur Implementierung komplexer Zahlen und der schnellen Fourier-Transformation (FFT) unter Verwendung nur algebraischer Datentypen, ohne auf Gleitkommazahlen angewiesen zu sein. Der Autor beginnt damit, die Vorteile der Verwendung algebraischer Datentypen für die numerische Darstellung zu erläutern und hebt Ineffizienzen in traditionellen FFT-Implementierungen hervor. Anschließend wird eine prägnante und elegante Implementierung von ganzen Zahlen und komplexen Zahlen unter Verwendung nur algebraischer Datentypen gezeigt. Schließlich wird eine rein funktionale Implementierung der komplexen FFT, ebenfalls ohne Gleitkommazahlen, abgeleitet. Dies wird durch die Verwendung einer balancierten ternären Darstellung für ganze Zahlen und die Erweiterung gaußscher Zahlen zur Darstellung komplexer Zahlen erreicht, wodurch die fusionhindernden Effekte der Gleitkommaarithmetik geschickt umgangen werden und so die Effizienz des Algorithmus verbessert wird.