Intensive Algorithms Lecture 11. DFT and DP. Lecturer: Daniel A. Spielman February 20, f(n) O(g(n) log c g(n)).

Size: px
Start display at page:

Download "Intensive Algorithms Lecture 11. DFT and DP. Lecturer: Daniel A. Spielman February 20, f(n) O(g(n) log c g(n))."

Transcription

1 Itesive Algorithms Lecture 11 DFT ad DP Lecturer: Daiel A. Spielma February 20, Itroductio The purpose of this lecture is to lear how use the Discrete Fourier Trasform to save space i Dyamic Programmig. If there is time at the ed, I will show a fast algorithm for computig the matrix permaet, ad talk a little about Gray codes. The mai result comes from the paper Savig Space by Algebraizatio by Lokshtaof ad Nederlof [LN10]. I do ot recommed the paper, as it solves a more abstract problem ad speds a lot of time o umerical aalysis, which we will igore. Sice this algorithm will ivolve may multiplicatios, I will state some improvemets o the multiplicatio algorithm we ecoutered last week. A classic result of Schöhage ad Strasse [SS71] tells us that we ca compute the product of two B-bit itegers i time O(B log B log log B). A few years ago Fürer [Für09] improved this to time O(B(log B)K log B ), for some costat K. This later result is slightly faster. But, the differece will ot matter to us i this lecture. I fact, the precise expressios for the complexities of the algorithms we will ecouter this lecture will be very difficult to state. For this reaso, we itroduce the otatio Õ. We say that f() Õ(g()) if there is some costat c for which f() O(g() log c g()). This eables us skip writig low order logarithmic terms. I this otatio, we say that we ca multiply two B-bit itegers i time Õ(B). Similarly, we ca multiply two umbers to B bits of precisio i time Õ(B). We will also require algorithms for fast expoetiatio. For a iteger a, we ca compute x a while usig oly O(log a) arithmetic operatios: we ca compute x 2i for various i by repeated squarig, ad the multiplyig together the appropriate terms. For example, x 11 = x 1 x 2 x 8. I geeral, we expad a i biary as b 0 + 2b 1 + 4b k b k, the compute by the loop x a = j:b j =1 x 2b j 11-1

2 Lecture 11: February 20, z = x. y = For j i 1 to k a. If b j = 1, y = y z. b. z = z Retur y The DFT ad iverse DFT We begi by recallig the Discrete Fourier Trasform from last lecture, ad the derive its iverse. Let ω = e 2πi/. The DFT is a liear trasformatio that maps a vector (a 0, a 1,..., a ) to a vector (y 0,..., y ) by settig ( y k = a j ω k) j = a j ω jk. That is, it treats its iput vector as the coefficiets of a polyomial ad the sets for all k. j=0 j=0 p(x) = a j x j, j=0 y k = p(ω k ) It is sometimes useful to expres the DFT as multiplicatio by a matrix. We may evaluate the polyomial p at a poit x 0 by formig the vector of powers of x 0, ad the takig its ier product with the vector of coefficiets of p: a 0 a 1 p(x 0 ) = ( 1, x 0, x 2 0,..., x 0 ). a. If we assemble all of those row vectors ito a matrix, we obtai a 0 1 ω ω 2 ω 3 ω a 1 1 ω 2 ω 4 ω 6 ω 2 2 a 2 1 ω 3 ω 6 ω 9 ω 3 3 a 3 = ω ω 2 2 ω 3 3 ω a y 0 y 1 y 2 y 3. y.

3 Lecture 11: February 20, Last lecture, we leared a algorithm called the FFT for computig the DFT i time O( log ) whe is a power of 2. Today s lecture will ot actually require the FFT. But, we will eed the iverse of the DFT, which is what we use to iterpolate the coefficiets of a polyomial from its values. Lemma 1. Let y 0,..., y be the DFT of a 0,..., a. The, Proof. By expadig y k, we fid ω jk y k = ω jk a j = 1 ω jk y k. ω hk a h = h=0 h=0 ω hk ω jk = a h h=0 a h ω k(h j) We ow prove that ω k(h j) = { if j = h 0 otherwise. Whe h = j, all of the terms are 1 ad the sum is. For h j, (h j) is ot divisible by ad so ω (h j) 1. There are the two easy way to see that the sum is 0. The algebraic way is to sum the geometric series, to get 1 (ω (h j) ) 1 ω h j = 1 (ω ) h j 1 ω h j = 1 1 = 0. 1 ωh j The geometric way is to observe that this is a sum of regularly spaced poits aroud the uit circle, ad thus evaluates to 0. Thus, 1 ω jk y k = 1 h=0 a h { if j = h 0 otherwise = a j. There are two thigs that you should take away from this. The first is that we ca obtai the coefficiet a j by computig the ier product of the DFT of p(x) ad the vector with etries ω jk. The secod is that the computatio that iverts the DFT is almost idetical to the oe that computes it.

4 Lecture 11: February 20, Space ad Subset Sum We ow recall that i the subset sum problem we are give as iput a list of positive itegers w 1,..., w alog with a target iteger T, ad eed to determie if there a S {1,..., } such that w i = T. i S We may assume without loss of geerality that all w i T, as we ca safely discard ay w i that are larger. We ca solve this problem by Dyamic Programmig i time O(T ) by buildig a table of achievable sums. For example, we could set opt(j, t) to be true if there is a S {1,..., j} for which i S w i = t. We ca the compute all the etires i this table by the recurrece opt(j, t) = opt(j 1, t) or opt(j 1, t w j ). I fact, we ca make this table a little smaller by droppig the first coordiate. followig routie: Cosider the 1. For t i 1 to, set opt(t) = false. Set opt(0) = true. 2. For i i 1 to a. For t i 1 to T, if a i t set opt(t) = opt(t) or opt(t a i ). You ca show that after the ith iteratio, opt(t) = opt(i, t) for all t. We could eve use a loop like this to cout the umber of solutios. Cosider istead 1. For t i 1 to, set c(t) = 0. Set c(0) = true. 2. For i i 1 to a. For t i 1 to T, if a i t set c(t) = c(t) + c(t a i ). Oe ca prove by iductio that after the ith iteratio, c(t) equals the umber of subsets of {1,..., i} that give the sum t. We would ow like to see how to solve this problem by usig less space. The importat property of space / memory that we are goig to exploit is that it ca be reused. To get us used to this idea, I will show that we ca solve this problem usig O( + log T ) bits, but O(2 log T ) time. This is the space ad time required to go through every possible subset (there are 2 ), compute the sum for that subset (i time O( log T )), ad check if it equals T. We eed bits to keep track of the curret subset, ad O(log T ) bits to write dow the sum for that subset. It might seem that we could eed as may as log(t ) bits, but we ca avoid this by stoppig if the sum exceeds T. This algorithm is reasoable if T 2 ; but is slow if T << 2. We wat a algorithm that uses space o this order, but which is ot too much slower tha the dyamic programmig algorithm.

5 Lecture 11: February 20, Subset Sum by Polyomials Cosider the polyomial p(x) = (1 + x a i ). The coefficiet of x t i this polyomial equals the umber of subsets that give sum t. We called this quatity c(t) a few sectios ago. Our pla is to use the DFT to compute the coefficiet of x T i low space. I additio to determiig if there is a subset that achieves sum T, we will fid out how may there are that do. We will, of course, do this usig a Discrete Fourier Trasform. For each 1 i, let p i (x) = 1+x a i. Note that we ca compute p i (x) i at most O(log a i ) operatios: O(log a i ) multiplicatios to compute x a i, ad we the add 1. The followig is a descriptio of the algorithm for computig c(t ). We will write it i a way that makes it easy to reaso about its space usage. 1. Set N = T + 1, ad ω = e 2πi/N. 2. Set c = For j i 0 to T 1, a. Set z = 1 ad x = ω j. b. For k i 1 to, z = z p k (x). c. Set c = c + z ω jt 4. Retur c. The umber c retured at the ed of the algorithm equals c(t ) = 1 N N 1 j=0 ad thus is the coefficiet of x T i the polyomial p. ω jt p(ω j ), I assert, ad do ot have time or space to prove, that it suffices to perform all the calculatios with O( + log T ) bits of accuracy. At the ed of this sectio, I will explai how we could do it modulo a prime. The algorithm keeps all of its storage i 4 variables: j, k, z ad c. So, its total space usage is O(+log T ). The mai cost of the algorithm i time is the computatio of p k (x) ad multiplicatio by z. As each computatio of p k (x) requires O(log T ) operatios ad is carried out to O( + log T ) bits of precisio, it ca be performed i time Õ( log T + log2 T ). As there are N O( 2 T ) such computatios i the algorithm, the total time is Õ(3 T ).

6 Lecture 11: February 20, Modulo a prime Istead of worryig about umerics, we could perform these computatios modulo a prime. The most atural way of doig this would first ivolve discoverig a prime N just a little bit larger tha T + 1. Usig radomized algorithms, we ca do this with high probability i time polyomial i log(t ). We the eed to fid a geerator of multiplicative group modulo N to use as ω. This is a elemet for which ω N 1 = 1, but ω k 1 for 0 < k < N 1. Agai, there are algorithms for doig this quickly (assumig some stadard umber theoretic cojectures are true). If we ow go through the computatio, we will compute c(t ) modulo N. This, however, does ot ecessarily allow us to determie if c(t ) is zero or ot: it could be divisible by N. The Chiese Remaider Theorem allows us to solve this problem: we just eed to repeat the process with primes N 1,..., N q whose product exceeds c(t ) The Permaet We probably wo t make it to this material i class. By, I am writig it just i case. The determiat of a square matrix is a fudametal quatity i liear algebra. It s magitude is the volume of the parallelipiped whose axes are the colums of the matrix (remarkably, we get the same volume usig the rows). Oe formula for the determiat is give by a sum over all permutatios of : det(m) = π ( 1) sg(π) M i,π(i). Here the sig of a permutatio, sg(π), is determied by umber of traspositios eeded to costruct π: it is 1 if the umber is eve ad 1 if the umber is odd. As there are! permutatios, this is a slow way to compute the determiat. It ca be computed i polyomial time usig stadard tools from liear algebra. I fact, it ca be computed i time O( ω ), the time eeded to multiply matrices. The determiat looks very similar to the permaet of a matrix M, which has the same formula but without the sigs: perm(m) = M i,π(i). π For example, a 1 a 2 a 3 perm b 1 b 2 b 3 = a 1 b 2 c 3 + a 2 b 1 c 3 + a 1 b 3 c 2 + a 3 b 1 c 2 + a 2 b 3 c 1 + a 3 b 2 c 1. c 3 c 2 c 3 We believe that it is ot possible to compute the permaet of a matrix i polyomial time, eve whe all of its etries are i {0, 1}.

7 Lecture 11: February 20, But, we do kow how to compute it i time much less tha!. By rearragig the computatio, we ca compute it usig oly O(2 ) operatios. While these are both big umbers ad it might ot look like a big differece, it is better tha every polyomial speedup: (2 ) c O(!) for every costat c. To speed up this computatio, we derive a alterative formula for the permaet. There are two that are famous: Ryser s formula ad Gly s formula (which seems to have bee discovered log before Gly published it). Gly s formula ivolves a sum over vectors s {±1} : perm(m) 1 2 s {±1} j=1 s j (s 1 M 1,i + s 2 M 2,i + + s M,i ). I fact, it suffices to sum over oly vectors s for which s 1 = 1, which saves a factor of 2 i the ruig time. For example, this formula gives ( ) a1 a 2perm 2 = (a b 1 b 1 + b 1 )(a 2 + b 2 ) (a 1 b 1 )(a 2 b 2 ) 2 = a 1 a 2 + a 1 b 2 + b 1 a 2 + b 1 b 2 a 1 a 2 + a 1 b 2 + b 1 a 2 b 1 b 2 = 2a 1 b 2 + 2a 2 b 1. To show that Gly s formula is correct, we cosider what happes to every moomial. The terms that ca appear i the product ca each be described by a fuctio f : {1,..., } {1,..., }: s f(i) M f(i),i. We will show that the oly terms that survive are those for which f is a permutatio. If f is ot a permutatio, the there is some k which is ot i the image of f. This meas that the correspodig moomial does ot deped o s f(k), ad thus will appear a equal umber of times with positive ad egative sig. For those fuctios f that are permutatios, each s f(i) appears ad we ca write: s f(i) M f(i),i = M f(i),i. s f(i) The product of the sigs is cacelled by the product of the sigs at the from of Gly s formula. A aive computatio of Gly s formula would take time O( 2 2 ), as the product of the siged row-sums looks like it requires 2 operatios. However, oe ca accelerate this by beig careful about the order i which we traverse the vectors s. The best order is give by a Gray code. It chages oe coordiate i s per step. There are very efficiet algorithms for eumeratig the vectors i a Gray code (ad i fact for eumeratig everythig else atural). Thus, we ca keep track for of the siged sums for each colum with a costat cost for each, for a total of O() per product. Refereces [Für09] Marti Fürer. Faster iteger multiplicatio. SIAM Joural o Computig, 39(3): , 2009.

8 Lecture 11: February 20, [LN10] Daiel Lokshtaov ad Jesper Nederlof. Savig space by algebraizatio. I Proceedigs of the forty-secod ACM symposium o Theory of computig, pages ACM, [SS71] Arold Schöhage ad Volker Strasse. Schelle multiplikatio grosser zahle. Computig, 7(3-4): , 1971.

(3) If you replace row i of A by its sum with a multiple of another row, then the determinant is unchanged! Expand across the i th row:

(3) If you replace row i of A by its sum with a multiple of another row, then the determinant is unchanged! Expand across the i th row: Math 50-004 Tue Feb 4 Cotiue with sectio 36 Determiats The effective way to compute determiats for larger-sized matrices without lots of zeroes is to ot use the defiitio, but rather to use the followig

More information

Properties and Tests of Zeros of Polynomial Functions

Properties and Tests of Zeros of Polynomial Functions Properties ad Tests of Zeros of Polyomial Fuctios The Remaider ad Factor Theorems: Sythetic divisio ca be used to fid the values of polyomials i a sometimes easier way tha substitutio. This is show by

More information

Theorem: Let A n n. In this case that A does reduce to I, we search for A 1 as the solution matrix X to the matrix equation A X = I i.e.

Theorem: Let A n n. In this case that A does reduce to I, we search for A 1 as the solution matrix X to the matrix equation A X = I i.e. Theorem: Let A be a square matrix The A has a iverse matrix if ad oly if its reduced row echelo form is the idetity I this case the algorithm illustrated o the previous page will always yield the iverse

More information

Algorithms and Data Structures 2014 Exercises and Solutions Week 13

Algorithms and Data Structures 2014 Exercises and Solutions Week 13 Algorithms ad Data Structures 204 Exercises ad Solutios Week 3 Toom-Cook (cotiued) Durig the last lecture, two polyomials A(x) a 0 + a x ad B(x) b 0 + b x both of degree were multiplied, first by evaluatig

More information

4.3 Growth Rates of Solutions to Recurrences

4.3 Growth Rates of Solutions to Recurrences 4.3. GROWTH RATES OF SOLUTIONS TO RECURRENCES 81 4.3 Growth Rates of Solutios to Recurreces 4.3.1 Divide ad Coquer Algorithms Oe of the most basic ad powerful algorithmic techiques is divide ad coquer.

More information

Inverse Matrix. A meaning that matrix B is an inverse of matrix A.

Inverse Matrix. A meaning that matrix B is an inverse of matrix A. Iverse Matrix Two square matrices A ad B of dimesios are called iverses to oe aother if the followig holds, AB BA I (11) The otio is dual but we ofte write 1 B A meaig that matrix B is a iverse of matrix

More information

Polynomial Multiplication and Fast Fourier Transform

Polynomial Multiplication and Fast Fourier Transform Polyomial Multiplicatio ad Fast Fourier Trasform Com S 477/577 Notes Ya-Bi Jia Sep 19, 2017 I this lecture we will describe the famous algorithm of fast Fourier trasform FFT, which has revolutioized digital

More information

, then cv V. Differential Equations Elements of Lineaer Algebra Name: Consider the differential equation. and y2 cos( kx)

, then cv V. Differential Equations Elements of Lineaer Algebra Name: Consider the differential equation. and y2 cos( kx) Cosider the differetial equatio y '' k y 0 has particular solutios y1 si( kx) ad y cos( kx) I geeral, ay liear combiatio of y1 ad y, cy 1 1 cy where c1, c is also a solutio to the equatio above The reaso

More information

Zeros of Polynomials

Zeros of Polynomials Math 160 www.timetodare.com 4.5 4.6 Zeros of Polyomials I these sectios we will study polyomials algebraically. Most of our work will be cocered with fidig the solutios of polyomial equatios of ay degree

More information

Matrices and vectors

Matrices and vectors Oe Matrices ad vectors This book takes for grated that readers have some previous kowledge of the calculus of real fuctios of oe real variable It would be helpful to also have some kowledge of liear algebra

More information

(3) If you replace row i of A by its sum with a multiple of another row, then the determinant is unchanged! Expand across the i th row:

(3) If you replace row i of A by its sum with a multiple of another row, then the determinant is unchanged! Expand across the i th row: Math 5-4 Tue Feb 4 Cotiue with sectio 36 Determiats The effective way to compute determiats for larger-sized matrices without lots of zeroes is to ot use the defiitio, but rather to use the followig facts,

More information

Chimica Inorganica 3

Chimica Inorganica 3 himica Iorgaica Irreducible Represetatios ad haracter Tables Rather tha usig geometrical operatios, it is ofte much more coveiet to employ a ew set of group elemets which are matrices ad to make the rule

More information

The Discrete Fourier Transform

The Discrete Fourier Transform The Discrete Fourier Trasform Complex Fourier Series Represetatio Recall that a Fourier series has the form a 0 + a k cos(kt) + k=1 b k si(kt) This represetatio seems a bit awkward, sice it ivolves two

More information

Lemma Let f(x) K[x] be a separable polynomial of degree n. Then the Galois group is a subgroup of S n, the permutations of the roots.

Lemma Let f(x) K[x] be a separable polynomial of degree n. Then the Galois group is a subgroup of S n, the permutations of the roots. 15 Cubics, Quartics ad Polygos It is iterestig to chase through the argumets of 14 ad see how this affects solvig polyomial equatios i specific examples We make a global assumptio that the characteristic

More information

Math 155 (Lecture 3)

Math 155 (Lecture 3) Math 55 (Lecture 3) September 8, I this lecture, we ll cosider the aswer to oe of the most basic coutig problems i combiatorics Questio How may ways are there to choose a -elemet subset of the set {,,,

More information

CHAPTER I: Vector Spaces

CHAPTER I: Vector Spaces CHAPTER I: Vector Spaces Sectio 1: Itroductio ad Examples This first chapter is largely a review of topics you probably saw i your liear algebra course. So why cover it? (1) Not everyoe remembers everythig

More information

3.2 Properties of Division 3.3 Zeros of Polynomials 3.4 Complex and Rational Zeros of Polynomials

3.2 Properties of Division 3.3 Zeros of Polynomials 3.4 Complex and Rational Zeros of Polynomials Math 60 www.timetodare.com 3. Properties of Divisio 3.3 Zeros of Polyomials 3.4 Complex ad Ratioal Zeros of Polyomials I these sectios we will study polyomials algebraically. Most of our work will be cocered

More information

Analysis of Algorithms. Introduction. Contents

Analysis of Algorithms. Introduction. Contents Itroductio The focus of this module is mathematical aspects of algorithms. Our mai focus is aalysis of algorithms, which meas evaluatig efficiecy of algorithms by aalytical ad mathematical methods. We

More information

a for a 1 1 matrix. a b a b 2 2 matrix: We define det ad bc 3 3 matrix: We define a a a a a a a a a a a a a a a a a a

a for a 1 1 matrix. a b a b 2 2 matrix: We define det ad bc 3 3 matrix: We define a a a a a a a a a a a a a a a a a a Math E-2b Lecture #8 Notes This week is all about determiats. We ll discuss how to defie them, how to calculate them, lear the allimportat property kow as multiliearity, ad show that a square matrix A

More information

The Binomial Theorem

The Binomial Theorem The Biomial Theorem Robert Marti Itroductio The Biomial Theorem is used to expad biomials, that is, brackets cosistig of two distict terms The formula for the Biomial Theorem is as follows: (a + b ( k

More information

Polynomial identity testing and global minimum cut

Polynomial identity testing and global minimum cut CHAPTER 6 Polyomial idetity testig ad global miimum cut I this lecture we will cosider two further problems that ca be solved usig probabilistic algorithms. I the first half, we will cosider the problem

More information

Polynomial Functions and Their Graphs

Polynomial Functions and Their Graphs Polyomial Fuctios ad Their Graphs I this sectio we begi the study of fuctios defied by polyomial expressios. Polyomial ad ratioal fuctios are the most commo fuctios used to model data, ad are used extesively

More information

3. Z Transform. Recall that the Fourier transform (FT) of a DT signal xn [ ] is ( ) [ ] = In order for the FT to exist in the finite magnitude sense,

3. Z Transform. Recall that the Fourier transform (FT) of a DT signal xn [ ] is ( ) [ ] = In order for the FT to exist in the finite magnitude sense, 3. Z Trasform Referece: Etire Chapter 3 of text. Recall that the Fourier trasform (FT) of a DT sigal x [ ] is ω ( ) [ ] X e = j jω k = xe I order for the FT to exist i the fiite magitude sese, S = x [

More information

Math 2784 (or 2794W) University of Connecticut

Math 2784 (or 2794W) University of Connecticut ORDERS OF GROWTH PAT SMITH Math 2784 (or 2794W) Uiversity of Coecticut Date: Mar. 2, 22. ORDERS OF GROWTH. Itroductio Gaiig a ituitive feel for the relative growth of fuctios is importat if you really

More information

Mon Feb matrix inverses. Announcements: Warm-up Exercise:

Mon Feb matrix inverses. Announcements: Warm-up Exercise: Math 225-4 Week 6 otes We will ot ecessarily fiish the material from a give day's otes o that day We may also add or subtract some material as the week progresses, but these otes represet a i-depth outlie

More information

Quantum Computing Lecture 7. Quantum Factoring

Quantum Computing Lecture 7. Quantum Factoring Quatum Computig Lecture 7 Quatum Factorig Maris Ozols Quatum factorig A polyomial time quatum algorithm for factorig umbers was published by Peter Shor i 1994. Polyomial time meas that the umber of gates

More information

6 Integers Modulo n. integer k can be written as k = qn + r, with q,r, 0 r b. So any integer.

6 Integers Modulo n. integer k can be written as k = qn + r, with q,r, 0 r b. So any integer. 6 Itegers Modulo I Example 2.3(e), we have defied the cogruece of two itegers a,b with respect to a modulus. Let us recall that a b (mod ) meas a b. We have proved that cogruece is a equivalece relatio

More information

a 2 +b 2 +c 2 ab+bc+ca.

a 2 +b 2 +c 2 ab+bc+ca. All Problems o the Prize Exams Sprig 205 The source for each problem is listed below whe available; but eve whe the source is give, the formulatio of the problem may have bee chaged. Solutios for the problems

More information

Math 61CM - Solutions to homework 3

Math 61CM - Solutions to homework 3 Math 6CM - Solutios to homework 3 Cédric De Groote October 2 th, 208 Problem : Let F be a field, m 0 a fixed oegative iteger ad let V = {a 0 + a x + + a m x m a 0,, a m F} be the vector space cosistig

More information

TMA4205 Numerical Linear Algebra. The Poisson problem in R 2 : diagonalization methods

TMA4205 Numerical Linear Algebra. The Poisson problem in R 2 : diagonalization methods TMA4205 Numerical Liear Algebra The Poisso problem i R 2 : diagoalizatio methods September 3, 2007 c Eiar M Røquist Departmet of Mathematical Scieces NTNU, N-749 Trodheim, Norway All rights reserved A

More information

Chapter 4. Fourier Series

Chapter 4. Fourier Series Chapter 4. Fourier Series At this poit we are ready to ow cosider the caoical equatios. Cosider, for eample the heat equatio u t = u, < (4.) subject to u(, ) = si, u(, t) = u(, t) =. (4.) Here,

More information

Trial division, Pollard s p 1, Pollard s ρ, and Fermat s method. Christopher Koch 1. April 8, 2014

Trial division, Pollard s p 1, Pollard s ρ, and Fermat s method. Christopher Koch 1. April 8, 2014 Iteger Divisio Algorithm ad Cogruece Iteger Trial divisio,,, ad with itegers mod Iverses mod Multiplicatio ad GCD Iteger Christopher Koch 1 1 Departmet of Computer Sciece ad Egieerig CSE489/589 Algorithms

More information

Algorithms Design & Analysis. Divide & Conquer

Algorithms Design & Analysis. Divide & Conquer Algorithms Desig & Aalysis Divide & Coquer Recap Direct-accessible table Hash tables Hash fuctios Uiversal hashig Perfect Hashig Ope addressig 2 Today s topics The divide-ad-coquer desig paradigm Revised

More information

1 Generating functions for balls in boxes

1 Generating functions for balls in boxes Math 566 Fall 05 Some otes o geeratig fuctios Give a sequece a 0, a, a,..., a,..., a geeratig fuctio some way of represetig the sequece as a fuctio. There are may ways to do this, with the most commo ways

More information

In number theory we will generally be working with integers, though occasionally fractions and irrationals will come into play.

In number theory we will generally be working with integers, though occasionally fractions and irrationals will come into play. Number Theory Math 5840 otes. Sectio 1: Axioms. I umber theory we will geerally be workig with itegers, though occasioally fractios ad irratioals will come ito play. Notatio: Z deotes the set of all itegers

More information

2 Geometric interpretation of complex numbers

2 Geometric interpretation of complex numbers 2 Geometric iterpretatio of complex umbers 2.1 Defiitio I will start fially with a precise defiitio, assumig that such mathematical object as vector space R 2 is well familiar to the studets. Recall that

More information

Course : Algebraic Combinatorics

Course : Algebraic Combinatorics Course 18.312: Algebraic Combiatorics Lecture Notes # 18-19 Addedum by Gregg Musier March 18th - 20th, 2009 The followig material ca be foud i a umber of sources, icludig Sectios 7.3 7.5, 7.7, 7.10 7.11,

More information

Advanced Course of Algorithm Design and Analysis

Advanced Course of Algorithm Design and Analysis Differet complexity measures Advaced Course of Algorithm Desig ad Aalysis Asymptotic complexity Big-Oh otatio Properties of O otatio Aalysis of simple algorithms A algorithm may may have differet executio

More information

Summary: Congruences. j=1. 1 Here we use the Mathematica syntax for the function. In Maple worksheets, the function

Summary: Congruences. j=1. 1 Here we use the Mathematica syntax for the function. In Maple worksheets, the function Summary: Cogrueces j whe divided by, ad determiig the additive order of a iteger mod. As described i the Prelab sectio, cogrueces ca be thought of i terms of coutig with rows, ad for some questios this

More information

ENGI Series Page 6-01

ENGI Series Page 6-01 ENGI 3425 6 Series Page 6-01 6. Series Cotets: 6.01 Sequeces; geeral term, limits, covergece 6.02 Series; summatio otatio, covergece, divergece test 6.03 Stadard Series; telescopig series, geometric series,

More information

ECE-S352 Introduction to Digital Signal Processing Lecture 3A Direct Solution of Difference Equations

ECE-S352 Introduction to Digital Signal Processing Lecture 3A Direct Solution of Difference Equations ECE-S352 Itroductio to Digital Sigal Processig Lecture 3A Direct Solutio of Differece Equatios Discrete Time Systems Described by Differece Equatios Uit impulse (sample) respose h() of a DT system allows

More information

IP Reference guide for integer programming formulations.

IP Reference guide for integer programming formulations. IP Referece guide for iteger programmig formulatios. by James B. Orli for 15.053 ad 15.058 This documet is iteded as a compact (or relatively compact) guide to the formulatio of iteger programs. For more

More information

Number of fatalities X Sunday 4 Monday 6 Tuesday 2 Wednesday 0 Thursday 3 Friday 5 Saturday 8 Total 28. Day

Number of fatalities X Sunday 4 Monday 6 Tuesday 2 Wednesday 0 Thursday 3 Friday 5 Saturday 8 Total 28. Day LECTURE # 8 Mea Deviatio, Stadard Deviatio ad Variace & Coefficiet of variatio Mea Deviatio Stadard Deviatio ad Variace Coefficiet of variatio First, we will discuss it for the case of raw data, ad the

More information

Addition: Property Name Property Description Examples. a+b = b+a. a+(b+c) = (a+b)+c

Addition: Property Name Property Description Examples. a+b = b+a. a+(b+c) = (a+b)+c Notes for March 31 Fields: A field is a set of umbers with two (biary) operatios (usually called additio [+] ad multiplicatio [ ]) such that the followig properties hold: Additio: Name Descriptio Commutativity

More information

6.3 Testing Series With Positive Terms

6.3 Testing Series With Positive Terms 6.3. TESTING SERIES WITH POSITIVE TERMS 307 6.3 Testig Series With Positive Terms 6.3. Review of what is kow up to ow I theory, testig a series a i for covergece amouts to fidig the i= sequece of partial

More information

FFTs in Graphics and Vision. The Fast Fourier Transform

FFTs in Graphics and Vision. The Fast Fourier Transform FFTs i Graphics ad Visio The Fast Fourier Trasform 1 Outlie The FFT Algorithm Applicatios i 1D Multi-Dimesioal FFTs More Applicatios Real FFTs 2 Computatioal Complexity To compute the movig dot-product

More information

TEACHER CERTIFICATION STUDY GUIDE

TEACHER CERTIFICATION STUDY GUIDE COMPETENCY 1. ALGEBRA SKILL 1.1 1.1a. ALGEBRAIC STRUCTURES Kow why the real ad complex umbers are each a field, ad that particular rigs are ot fields (e.g., itegers, polyomial rigs, matrix rigs) Algebra

More information

THE ASYMPTOTIC COMPLEXITY OF MATRIX REDUCTION OVER FINITE FIELDS

THE ASYMPTOTIC COMPLEXITY OF MATRIX REDUCTION OVER FINITE FIELDS THE ASYMPTOTIC COMPLEXITY OF MATRIX REDUCTION OVER FINITE FIELDS DEMETRES CHRISTOFIDES Abstract. Cosider a ivertible matrix over some field. The Gauss-Jorda elimiatio reduces this matrix to the idetity

More information

Lecture 3: Divide and Conquer: Fast Fourier Transform

Lecture 3: Divide and Conquer: Fast Fourier Transform Lecture 3: Divide ad Coquer: Fast Fourier Trasform Polyomial Operatios vs. Represetatios Divide ad Coquer Algorithm Collapsig Samples / Roots of Uity FFT, IFFT, ad Polyomial Multiplicatio Polyomial operatios

More information

Generating Functions II

Generating Functions II Geeratig Fuctios II Misha Lavrov ARML Practice 5/4/2014 Warm-up problems 1. Solve the recursio a +1 = 2a, a 0 = 1 by usig commo sese. 2. Solve the recursio b +1 = 2b + 1, b 0 = 1 by usig commo sese ad

More information

Chapter 9 - CD companion 1. A Generic Implementation; The Common-Merge Amplifier. 1 τ is. ω ch. τ io

Chapter 9 - CD companion 1. A Generic Implementation; The Common-Merge Amplifier. 1 τ is. ω ch. τ io Chapter 9 - CD compaio CHAPTER NINE CD-9.2 CD-9.2. Stages With Voltage ad Curret Gai A Geeric Implemetatio; The Commo-Merge Amplifier The advaced method preseted i the text for approximatig cutoff frequecies

More information

Bertrand s Postulate

Bertrand s Postulate Bertrad s Postulate Lola Thompso Ross Program July 3, 2009 Lola Thompso (Ross Program Bertrad s Postulate July 3, 2009 1 / 33 Bertrad s Postulate I ve said it oce ad I ll say it agai: There s always a

More information

Model of Computation and Runtime Analysis

Model of Computation and Runtime Analysis Model of Computatio ad Rutime Aalysis Model of Computatio Model of Computatio Specifies Set of operatios Cost of operatios (ot ecessarily time) Examples Turig Machie Radom Access Machie (RAM) PRAM Map

More information

ACCELERATING CONVERGENCE OF SERIES

ACCELERATING CONVERGENCE OF SERIES ACCELERATIG COVERGECE OF SERIES KEITH CORAD. Itroductio A ifiite series is the limit of its partial sums. However, it may take a large umber of terms to get eve a few correct digits for the series from

More information

1 1 2 = show that: over variables x and y. [2 marks] Write down necessary conditions involving first and second-order partial derivatives for ( x0, y

1 1 2 = show that: over variables x and y. [2 marks] Write down necessary conditions involving first and second-order partial derivatives for ( x0, y Questio (a) A square matrix A= A is called positive defiite if the quadratic form waw > 0 for every o-zero vector w [Note: Here (.) deotes the traspose of a matrix or a vector]. Let 0 A = 0 = show that:

More information

Quadratic Functions. Before we start looking at polynomials, we should know some common terminology.

Quadratic Functions. Before we start looking at polynomials, we should know some common terminology. Quadratic Fuctios I this sectio we begi the study of fuctios defied by polyomial expressios. Polyomial ad ratioal fuctios are the most commo fuctios used to model data, ad are used extesively i mathematical

More information

Math 609/597: Cryptography 1

Math 609/597: Cryptography 1 Math 609/597: Cryptography 1 The Solovay-Strasse Primality Test 12 October, 1993 Burt Roseberg Revised: 6 October, 2000 1 Itroductio We describe the Solovay-Strasse primality test. There is quite a bit

More information

Linear Programming and the Simplex Method

Linear Programming and the Simplex Method Liear Programmig ad the Simplex ethod Abstract This article is a itroductio to Liear Programmig ad usig Simplex method for solvig LP problems i primal form. What is Liear Programmig? Liear Programmig is

More information

Basic Iterative Methods. Basic Iterative Methods

Basic Iterative Methods. Basic Iterative Methods Abel s heorem: he roots of a polyomial with degree greater tha or equal to 5 ad arbitrary coefficiets caot be foud with a fiite umber of operatios usig additio, subtractio, multiplicatio, divisio, ad extractio

More information

Infinite Sequences and Series

Infinite Sequences and Series Chapter 6 Ifiite Sequeces ad Series 6.1 Ifiite Sequeces 6.1.1 Elemetary Cocepts Simply speakig, a sequece is a ordered list of umbers writte: {a 1, a 2, a 3,...a, a +1,...} where the elemets a i represet

More information

a for a 1 1 matrix. a b a b 2 2 matrix: We define det ad bc 3 3 matrix: We define a a a a a a a a a a a a a a a a a a

a for a 1 1 matrix. a b a b 2 2 matrix: We define det ad bc 3 3 matrix: We define a a a a a a a a a a a a a a a a a a Math S-b Lecture # Notes This wee is all about determiats We ll discuss how to defie them, how to calculate them, lear the allimportat property ow as multiliearity, ad show that a square matrix A is ivertible

More information

Eigenvalues and Eigenvectors

Eigenvalues and Eigenvectors 5 Eigevalues ad Eigevectors 5.3 DIAGONALIZATION DIAGONALIZATION Example 1: Let. Fid a formula for A k, give that P 1 1 = 1 2 ad, where Solutio: The stadard formula for the iverse of a 2 2 matrix yields

More information

Section 11.8: Power Series

Section 11.8: Power Series Sectio 11.8: Power Series 1. Power Series I this sectio, we cosider geeralizig the cocept of a series. Recall that a series is a ifiite sum of umbers a. We ca talk about whether or ot it coverges ad i

More information

Model of Computation and Runtime Analysis

Model of Computation and Runtime Analysis Model of Computatio ad Rutime Aalysis Model of Computatio Model of Computatio Specifies Set of operatios Cost of operatios (ot ecessarily time) Examples Turig Machie Radom Access Machie (RAM) PRAM Map

More information

CSE 1400 Applied Discrete Mathematics Number Theory and Proofs

CSE 1400 Applied Discrete Mathematics Number Theory and Proofs CSE 1400 Applied Discrete Mathematics Number Theory ad Proofs Departmet of Computer Scieces College of Egieerig Florida Tech Sprig 01 Problems for Number Theory Backgroud Number theory is the brach of

More information

1. ARITHMETIC OPERATIONS IN OBSERVER'S MATHEMATICS

1. ARITHMETIC OPERATIONS IN OBSERVER'S MATHEMATICS 1. ARITHMETIC OPERATIONS IN OBSERVER'S MATHEMATICS We cosider a ite well-ordered system of observers, where each observer sees the real umbers as the set of all iite decimal fractios. The observers are

More information

Complex Analysis Spring 2001 Homework I Solution

Complex Analysis Spring 2001 Homework I Solution Complex Aalysis Sprig 2001 Homework I Solutio 1. Coway, Chapter 1, sectio 3, problem 3. Describe the set of poits satisfyig the equatio z a z + a = 2c, where c > 0 ad a R. To begi, we see from the triagle

More information

Topic 1 2: Sequences and Series. A sequence is an ordered list of numbers, e.g. 1, 2, 4, 8, 16, or

Topic 1 2: Sequences and Series. A sequence is an ordered list of numbers, e.g. 1, 2, 4, 8, 16, or Topic : Sequeces ad Series A sequece is a ordered list of umbers, e.g.,,, 8, 6, or,,,.... A series is a sum of the terms of a sequece, e.g. + + + 8 + 6 + or... Sigma Notatio b The otatio f ( k) is shorthad

More information

Ch3. Asymptotic Notation

Ch3. Asymptotic Notation Ch. Asymptotic Notatio copyright 006 Preview of Chapters Chapter How to aalyze the space ad time complexities of program Chapter Review asymptotic otatios such as O, Ω, Θ, o for simplifyig the aalysis

More information

Discrete-Time Systems, LTI Systems, and Discrete-Time Convolution

Discrete-Time Systems, LTI Systems, and Discrete-Time Convolution EEL5: Discrete-Time Sigals ad Systems. Itroductio I this set of otes, we begi our mathematical treatmet of discrete-time s. As show i Figure, a discrete-time operates or trasforms some iput sequece x [

More information

Math 525: Lecture 5. January 18, 2018

Math 525: Lecture 5. January 18, 2018 Math 525: Lecture 5 Jauary 18, 2018 1 Series (review) Defiitio 1.1. A sequece (a ) R coverges to a poit L R (writte a L or lim a = L) if for each ǫ > 0, we ca fid N such that a L < ǫ for all N. If the

More information

w (1) ˆx w (1) x (1) /ρ and w (2) ˆx w (2) x (2) /ρ.

w (1) ˆx w (1) x (1) /ρ and w (2) ˆx w (2) x (2) /ρ. 2 5. Weighted umber of late jobs 5.1. Release dates ad due dates: maximimizig the weight of o-time jobs Oce we add release dates, miimizig the umber of late jobs becomes a sigificatly harder problem. For

More information

1 Last time: similar and diagonalizable matrices

1 Last time: similar and diagonalizable matrices Last time: similar ad diagoalizable matrices Let be a positive iteger Suppose A is a matrix, v R, ad λ R Recall that v a eigevector for A with eigevalue λ if v ad Av λv, or equivaletly if v is a ozero

More information

Basic Sets. Functions. MTH299 - Examples. Example 1. Let S = {1, {2, 3}, 4}. Indicate whether each statement is true or false. (a) S = 4. (e) 2 S.

Basic Sets. Functions. MTH299 - Examples. Example 1. Let S = {1, {2, 3}, 4}. Indicate whether each statement is true or false. (a) S = 4. (e) 2 S. Basic Sets Example 1. Let S = {1, {2, 3}, 4}. Idicate whether each statemet is true or false. (a) S = 4 (b) {1} S (c) {2, 3} S (d) {1, 4} S (e) 2 S. (f) S = {1, 4, {2, 3}} (g) S Example 2. Compute the

More information

Parallel Vector Algorithms David A. Padua

Parallel Vector Algorithms David A. Padua Parallel Vector Algorithms 1 of 32 Itroductio Next, we study several algorithms where parallelism ca be easily expressed i terms of array operatios. We will use Fortra 90 to represet these algorithms.

More information

Lecture 9: Pseudo-random generators against space bounded computation,

Lecture 9: Pseudo-random generators against space bounded computation, Lecture 9: Pseudo-radom geerators agaist space bouded computatio, Primality Testig Topics i Pseudoradomess ad Complexity (Sprig 2018) Rutgers Uiversity Swastik Kopparty Scribes: Harsha Tirumala, Jiyu Zhag

More information

CSI 2101 Discrete Structures Winter Homework Assignment #4 (100 points, weight 5%) Due: Thursday, April 5, at 1:00pm (in lecture)

CSI 2101 Discrete Structures Winter Homework Assignment #4 (100 points, weight 5%) Due: Thursday, April 5, at 1:00pm (in lecture) CSI 101 Discrete Structures Witer 01 Prof. Lucia Moura Uiversity of Ottawa Homework Assigmet #4 (100 poits, weight %) Due: Thursday, April, at 1:00pm (i lecture) Program verificatio, Recurrece Relatios

More information

CS / MCS 401 Homework 3 grader solutions

CS / MCS 401 Homework 3 grader solutions CS / MCS 401 Homework 3 grader solutios assigmet due July 6, 016 writte by Jāis Lazovskis maximum poits: 33 Some questios from CLRS. Questios marked with a asterisk were ot graded. 1 Use the defiitio of

More information

Notes for Lecture 5. 1 Grover Search. 1.1 The Setting. 1.2 Motivation. Lecture 5 (September 26, 2018)

Notes for Lecture 5. 1 Grover Search. 1.1 The Setting. 1.2 Motivation. Lecture 5 (September 26, 2018) COS 597A: Quatum Cryptography Lecture 5 (September 6, 08) Lecturer: Mark Zhadry Priceto Uiversity Scribe: Fermi Ma Notes for Lecture 5 Today we ll move o from the slightly cotrived applicatios of quatum

More information

In algebra one spends much time finding common denominators and thus simplifying rational expressions. For example:

In algebra one spends much time finding common denominators and thus simplifying rational expressions. For example: 74 The Method of Partial Fractios I algebra oe speds much time fidig commo deomiators ad thus simplifyig ratioal epressios For eample: + + + 6 5 + = + = = + + + + + ( )( ) 5 It may the seem odd to be watig

More information

NAME: ALGEBRA 350 BLOCK 7. Simplifying Radicals Packet PART 1: ROOTS

NAME: ALGEBRA 350 BLOCK 7. Simplifying Radicals Packet PART 1: ROOTS NAME: ALGEBRA 50 BLOCK 7 DATE: Simplifyig Radicals Packet PART 1: ROOTS READ: A square root of a umber b is a solutio of the equatio x = b. Every positive umber b has two square roots, deoted b ad b or

More information

INTEGRATION BY PARTS (TABLE METHOD)

INTEGRATION BY PARTS (TABLE METHOD) INTEGRATION BY PARTS (TABLE METHOD) Suppose you wat to evaluate cos d usig itegratio by parts. Usig the u dv otatio, we get So, u dv d cos du d v si cos d si si d or si si d We see that it is ecessary

More information

Sequences, Mathematical Induction, and Recursion. CSE 2353 Discrete Computational Structures Spring 2018

Sequences, Mathematical Induction, and Recursion. CSE 2353 Discrete Computational Structures Spring 2018 CSE 353 Discrete Computatioal Structures Sprig 08 Sequeces, Mathematical Iductio, ad Recursio (Chapter 5, Epp) Note: some course slides adopted from publisher-provided material Overview May mathematical

More information

OPTIMAL ALGORITHMS -- SUPPLEMENTAL NOTES

OPTIMAL ALGORITHMS -- SUPPLEMENTAL NOTES OPTIMAL ALGORITHMS -- SUPPLEMENTAL NOTES Peter M. Maurer Why Hashig is θ(). As i biary search, hashig assumes that keys are stored i a array which is idexed by a iteger. However, hashig attempts to bypass

More information

Statistics 511 Additional Materials

Statistics 511 Additional Materials Cofidece Itervals o mu Statistics 511 Additioal Materials This topic officially moves us from probability to statistics. We begi to discuss makig ifereces about the populatio. Oe way to differetiate probability

More information

MAXIMALLY FLAT FIR FILTERS

MAXIMALLY FLAT FIR FILTERS MAXIMALLY FLAT FIR FILTERS This sectio describes a family of maximally flat symmetric FIR filters first itroduced by Herrma [2]. The desig of these filters is particularly simple due to the availability

More information

Review Problems 1. ICME and MS&E Refresher Course September 19, 2011 B = C = AB = A = A 2 = A 3... C 2 = C 3 = =

Review Problems 1. ICME and MS&E Refresher Course September 19, 2011 B = C = AB = A = A 2 = A 3... C 2 = C 3 = = Review Problems ICME ad MS&E Refresher Course September 9, 0 Warm-up problems. For the followig matrices A = 0 B = C = AB = 0 fid all powers A,A 3,(which is A times A),... ad B,B 3,... ad C,C 3,... Solutio:

More information

Solutions to Math 347 Practice Problems for the final

Solutions to Math 347 Practice Problems for the final Solutios to Math 347 Practice Problems for the fial 1) True or False: a) There exist itegers x,y such that 50x + 76y = 6. True: the gcd of 50 ad 76 is, ad 6 is a multiple of. b) The ifiimum of a set is

More information

1 Approximating Integrals using Taylor Polynomials

1 Approximating Integrals using Taylor Polynomials Seughee Ye Ma 8: Week 7 Nov Week 7 Summary This week, we will lear how we ca approximate itegrals usig Taylor series ad umerical methods. Topics Page Approximatig Itegrals usig Taylor Polyomials. Defiitios................................................

More information

11. FINITE FIELDS. Example 1: The following tables define addition and multiplication for a field of order 4.

11. FINITE FIELDS. Example 1: The following tables define addition and multiplication for a field of order 4. 11. FINITE FIELDS 11.1. A Field With 4 Elemets Probably the oly fiite fields which you ll kow about at this stage are the fields of itegers modulo a prime p, deoted by Z p. But there are others. Now although

More information

Machine Learning for Data Science (CS 4786)

Machine Learning for Data Science (CS 4786) Machie Learig for Data Sciece CS 4786) Lecture & 3: Pricipal Compoet Aalysis The text i black outlies high level ideas. The text i blue provides simple mathematical details to derive or get to the algorithm

More information

CS 270 Algorithms. Oliver Kullmann. Growth of Functions. Divide-and- Conquer Min-Max- Problem. Tutorial. Reading from CLRS for week 2

CS 270 Algorithms. Oliver Kullmann. Growth of Functions. Divide-and- Conquer Min-Max- Problem. Tutorial. Reading from CLRS for week 2 Geeral remarks Week 2 1 Divide ad First we cosider a importat tool for the aalysis of algorithms: Big-Oh. The we itroduce a importat algorithmic paradigm:. We coclude by presetig ad aalysig two examples.

More information

Discrete Mathematics for CS Spring 2007 Luca Trevisan Lecture 22

Discrete Mathematics for CS Spring 2007 Luca Trevisan Lecture 22 CS 70 Discrete Mathematics for CS Sprig 2007 Luca Trevisa Lecture 22 Aother Importat Distributio The Geometric Distributio Questio: A biased coi with Heads probability p is tossed repeatedly util the first

More information

x a x a Lecture 2 Series (See Chapter 1 in Boas)

x a x a Lecture 2 Series (See Chapter 1 in Boas) Lecture Series (See Chapter i Boas) A basic ad very powerful (if pedestria, recall we are lazy AD smart) way to solve ay differetial (or itegral) equatio is via a series expasio of the correspodig solutio

More information

1 Summary: Binary and Logic

1 Summary: Binary and Logic 1 Summary: Biary ad Logic Biary Usiged Represetatio : each 1-bit is a power of two, the right-most is for 2 0 : 0110101 2 = 2 5 + 2 4 + 2 2 + 2 0 = 32 + 16 + 4 + 1 = 53 10 Usiged Rage o bits is [0...2

More information

Ellipsoid Method for Linear Programming made simple

Ellipsoid Method for Linear Programming made simple Ellipsoid Method for Liear Programmig made simple Sajeev Saxea Dept. of Computer Sciece ad Egieerig, Idia Istitute of Techology, Kapur, INDIA-08 06 December 3, 07 Abstract I this paper, ellipsoid method

More information

David Vella, Skidmore College.

David Vella, Skidmore College. David Vella, Skidmore College dvella@skidmore.edu Geeratig Fuctios ad Expoetial Geeratig Fuctios Give a sequece {a } we ca associate to it two fuctios determied by power series: Its (ordiary) geeratig

More information

Algorithms and Data Structures Lecture IV

Algorithms and Data Structures Lecture IV Algorithms ad Data Structures Lecture IV Simoas Šalteis Aalborg Uiversity simas@cs.auc.dk September 5, 00 1 This Lecture Aalyzig the ruig time of recursive algorithms (such as divide-ad-coquer) Writig

More information

Mathematical Induction

Mathematical Induction Mathematical Iductio Itroductio Mathematical iductio, or just iductio, is a proof techique. Suppose that for every atural umber, P() is a statemet. We wish to show that all statemets P() are true. I a

More information

Chapter Vectors

Chapter Vectors Chapter 4. Vectors fter readig this chapter you should be able to:. defie a vector. add ad subtract vectors. fid liear combiatios of vectors ad their relatioship to a set of equatios 4. explai what it

More information