Download presentation

Presentation is loading. Please wait.

Published byCarlos Dowdey Modified over 2 years ago

1
1 Fast Multiplication of Large Numbers Using Fourier Techniques Henry Skiba Advisor: Dr. Marcus Pendergrass

2
2 What is Multiplication? Multiplication of small numbers This can also be represented in the following way: –where x is equal to 10 Multiplication of small numbers

3
3 Represent basic numbers as polynomials when x equals 10 Multiply two polynomials together Multiplication in a New Way

4
4 General Polynomial Multiplication General Polynomials General Polynomial Multiplication Even More General Form – where Convolution

5
5 What is Convolution? This opens the door for use of the Fast Fourier Transform (FFT) for multiplication

6
6 Using the FFT to Convolve Convolution in the time domain is point wise multiplication in the frequency domain But

7
7 Arrays are zero padded to make and equivalent –p = [p 0,p 1,p 2,…,p n-1,p n,0,0,0,0,0…] Using the FFT to Convolve (cont.) vs. with zero padding without zero padding

8
8 Algorithm 1.Starts with two arrays, p and q 2.Zero pads p and q 3. 4. 5. 6.carry

9
9 Testing vs. Regular Convolution in Time Domain Timed how long it took to multiply to random numbers of a certain length –10,000 to 100,000 with digit stepping of 10,000 Repeated iteration 5 times Used theoretical times to plot fit based on average of 10,000 digit time values –FFT Multiplication: nlog 10 n –Convolution: n 2

10
10 Results

11
11 Questions?

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google