Skip to content
0:00 / 0:00

#fastfouriertransform#fft#multiplication

Multiplying 41*37 with Fast Fourier Transform by hand

rblack37

1.8K subscribers • 1 video on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.

Intermediate. Assumes working knowledge.

22K views8 years ago1 recommendation

Computer scienceAlgorithmsMath for programmers

An explanation of how to perform large integer multiplication by hand using the Fast Fourier Transform algorithm.

For large numbers, the elementary method of multiplication (convolution method) is FAR too slow. Instead, using the rule that time domain convolution is equivalent to frequency domain point-wise multiplication, by travelling to the frequency domain and using point-wise multiplication, we can utilize the Fast Fourier Transform which removes redundant aliasing calculations. 1. The extra zeros to begin allow for tens column to overflow once multiplication occurs. More generally, tacking on zeros prior to convolution is known as zero-padding for a linear convolution. Without zeros, calculations will overflow into the next period and has a name as well: circular convolution. 2. I keep saying half cycle/second twiddle factor. Technically, its half cycle vs unit frequency period but you can intuitively imagine twiddle factor tracing the unit circle over a unit 1 sec time frame so I say that... 3. Half cycle/unit frequency period twiddle factor condenses because of conjugate symmetry of powers of 2. If not radix 2 transform, no symmetry exists and the twiddle factor generalizes to 1 cycle/unit frequency period where the frequency period first is periodically extended to the size of the upsample. This video passes over intricacies of the FFT. You may find hefty tutorials at my Facebook Tutorial Website: Math Music Tutorials (mrpolygon37)

Why it's here

1 person recommends this

What people say. Recommended as a helpful resource for understanding FFT-based multiplication algorithms.

u/BigPurpleBlobin r/FPGA • Recommends

On “Looking for an efficient way to square very large numbers”

https://en.wikipedia.org/wiki/Sch%C3%B6nhage%E2%80%93Strassen\_algorithm "The **Schönhage–Strassen algorithm** is an asymptotically fast multiplication algorithm for large integers, published by Arnold Schönhage and Volker Strassen in 1971.^(\[1\)](https://en.wikipedia.org/wiki/Sch%C3%B6nhage%E2%80%93Strassen_algorithm#cite_note-sch%C3%B6nhage-1) It works by recursively applying fast Fourier transform (FFT) over the integers modulo 2n+1. The run-time bit complexity to multiply two *n*\-digit numbers using the algorithm is O(n⋅log⁡n⋅log⁡log⁡n) in big *O* notation." [video