# Lecture 4: Polynomial Algorithms

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 Lecture 4: Polynomial Algorithms Piotr Sankowski Stefano Leonardi Theoretical Computer Science p. 1/39

2 Lecture Overview Introduction Point Polynomial Multiplication Fast Fourier Transform FFT Inverse Fourier Transform Polynomial Division Multipoint Polynomial Evaluation Polynomial Interpolation - p. 2/39

3 Problems The naive naive multiplication algorithm requires Θ(n 2 ) time. We will show that using Fast Fourier Transform one can obtain algorithm that for all basic operations on polynommials working just slightly slower then Θ(n). We will show how to : multiply polynomials in O(n log n) time, divide polynomials in O(n log n) time, compute interpolating polynomial in O(n log 2 n) time, compute n-values of in O(n log 3 n) time. - p. 3/39

4 Point Multiplication Let A(x) = n 1 i=0 a ix i and let B(x) = n 1 i=0 b ix i be two polynomials of degree n over field F. The polynomials can be uniquely defined by their values in n different points. Theorem 1 (Polynomial Interpolation) For any set of n pairs X = {(x 0, y 0 ), (x 1, y 1 ),..., (x n 1, y n 1 )} such that all values are x i are pairwise different, there exists exactly one polynomial C(x) of degree at most n such that C(x i ) = y i for i = 0, 1,..., n 1. - p. 4/39

5 Point Multiplication Let X be a fixed set of 2n points x 0,..., x 2n 1 F. For this set we can define set of values for polynomials A and B: X A = {(x 0, A(x 0 )), (x 1, A(x 1 ),..., (x 2n 1, A(x 2n 1 ))}, X B = {(x 0, B(x 0 )), (x 1, B(x 1 ),..., (x 2n 1, B(x 2n 1 ))}. Let C be the product of A and B, then we have: C(x i ) = A(x i ) B(x i ). - p. 5/39

6 Point Multiplication Because the degree of C is not higher then 2n, so by Polynomial Interpolation theorem the set of values: X A B ={(x 0, A(x 0 )B(x 0 )), (x 1, A(x 1 )B(x 1 ),......, (x 2n 1, A(x 2n 1 )B(x 2n 1 ))}, uniquely defines the polynomial A B. Given the sets X A and X B we can determine X C in O(n) time. Next using it we can find the polynomial C. - p. 6/39

7 Point Multiplication The multiplication procedure is shown on the animation ilustr_u.swf. Nevertheless in order to obtain faster algorithm than the naive one, we need to: compute n values of a polynomial faster then in Θ(n 2 ) operations, compute interpolating polynomial equally fast. - p. 7/39

8 Fast Fourier Transform In order to solve these both problems we will use Fast Furrier Transform (FFT). In the above algorithm we did not assume anything about the set X. The main idea in the construction of FFT is the choice of the right set X in order to guarentee that the many computations are repeated. - p. 8/39

9 Fast Fourier Transform Let us assume that we want to compute the value of the polynomial A(x) = n 1 k=0 a kx k and that n is even. If n is odd we add to A(x) the monomial 0x n+1 what does not change the result. We define the points X n = {x 0, x 1,..., x n 1 } in the following way: x k = e 2πki n. (1) - p. 9/39

10 Fast Fourier Transform For the polynomial A(x) we define to new polynomials A [0] (x) and A [1] (x) by choosing into them from A(x) odd and even coefficients: A [0] (x) = a 0 + a 2 x + a 4 x a n 2 x n 2 1, A [1] (x) = a 1 + a 3 x + a 5 x a n 1 x n 2 1. The polynomials A [0] (x) and A [1] (x) are of degree at most n 2. Moreover we have: A(x) = A [0] (x 2 ) + xa [1] (x 2 ). (2) - p. 10/39

11 Fast Fourier Transform The evaluation of A(x) in points x 0, x 1,..., x n 1 can be reduced to: evaluation of A [0] (x) and A [1] (x) for X = {x 2 0, x2 1,..., x2 n 1}. computation of the values of A(x) according to (2). By the definition of x i we have: ( ) x 2 k = e 2πki 2 2πki n = e n/2. - p. 11/39

12 Fast Fourier Transform Note that we have x 2 k = x 2 k+ n 2, so X = X n 2. Hence, we reduced the problem of size n computation of n values of degree n polynomial A to two problems of size n 2 computation of n 2 degree n 2 polynomials A[0] (x) and A [1] (x). values of Applying the recursion we get the FFT algorithm. - p. 12/39

13 Fast Fourier Transform if n is odd then add a n = 0 to A if n = 1 then return a 0 ω n = e 2πi n and ω = 1 a [0] = (a 0, a 2,..., a n 2 ) and a [1] = (a 1, a 3,..., a n 1 ) y [0] = FFT(a [0] ) and y [1] = FFT(a [1] ) for k = 0 to n 2 1 do y k = y [0] k + ωy [1] k y k+ n 2 = y [0] ω = ωω n return y k ωy [1] k - p. 13/39

14 Fast Fourier Transform The above algorithm starts by computing FFT of A [0] (x) and A [1] (x). Next it combines the results to compute FFT of A(x). Let us look on the run of the algorithm. Note that in the k-th step of the loop we have: ω = ω k n = e 2πik n = x k. - p. 14/39

15 Fast Fourier Transform Therefore and y k =y [0] k + x k y [1] k ( ( =A [0] e 2πik n = A [0] (e 2πik n/2 ) + xk A [1] (e 2πik n/2 ) = ) ) 2 ) ) 2 ( ( + x k A [1] e 2πik n =A [0] (x 2 k ) + x ka [1] (x 2 k ) = A(x k), y k+ n 2 =y [0] k x k y [1] k = A [0] (e 2πik 2πik n/2 ) e n = A [1] (e 2πik n/2 ) = =A [0] (e 2πi(k+n/2) n/2 ) + e 2πik+n/2 n A [1] (e 2πi(k+n/2) n/2 ) = =A [0] (x 2 k+n/2 ) + x2 k+n/2 A[1] (x 2 k+n/2 ) = A(x k+ n). 2 - p. 15/39

16 Fast Fourier Transform In the last equality we have used (2). This proves that the algorithm correctly computes FFT for A(x). The recursive equation for the running time of FFT is: T(n) = 2T( n 2 ) + Θ(n). and implies T(n) = Θ(n log n). - p. 16/39

17 Fast Fourier Transform The animation ilustr_a.swf shows the run of the FFT algorithm for polynomial A(x) = x 3 + 2x 2 + 5x + 3. The values of A(x) are computed out of the values of A [0] (x) and A [1] (x), whereas the values of these polynomials are computed out of values of A [00] (x), A [01] (x), A [10] (x) and A [11] (x). - p. 17/39

18 Inverse FFT In order to finish the presentation of the fast polynomial multiplication algorithm we need to show how to compute the interpolating polynomial for the set of points X n. We will show that the computation of FFT can be understood as matrix-vector multiplication. Next, we will show that FFT its matrix, is almost its own inverse. - p. 18/39

19 Inverse FFT The FFT is a matrix-vector multiplication (A(x 0 ), A(x 1 ),..., A(x n 1 )) T = V n (a 0, a 1,..., a n 1 ) T, where V n = V(x 0,..., x n 1 ) is a Vendermonde matrix: A(x 0 ) x0 0 x0 1 x0 2 x0 3 x0 n 1 a 0 A(x 1 ) x1 0 x1 1 x1 2 x1 3 x n 1 1 a 1 A(x 2 ) = x2 0 x2 1 x2 2 x2 3 x2 n 1 a A(x n 1 ) x 0 n 1 x1 n 1 x2 n 1 x3 n 1 xn 1 n 1 a n 1 - p. 19/39

20 Inverse FFT The elements of the matrix V(x 0,..., x n 1 ) are given as (V n ) j,k = V(x 0,..., x n 1 ) j,k = x k j. Using the definition of X n we get: V(x 0,..., x n 1 ) j,k = (e 2πij n ) k = e 2πijk n. The inverse of FFT is represented as matrix-vector multipication V 1 n (A(x 0 ), A(x 1 ),..., A(x n 1 )) T. - p. 20/39

21 Inverse FFT Lemma 1 The matrix W n defined as: (W n ) j,k = 1 n e 2πijk n, is the inverse matrix for V n. We will show that V n W n = I. Let us consider an element (j, k) in the product matrix V n W n : - p. 21/39

22 Inverse FFT (V n W n ) j,k = n 1 l=0 (V n) j,l (W n ) l,k = = n 1 l=0 e 2πijl n 1 n e 2πilk n = = n 1 l=0 1 n e 2πl(j k) n = If j = k then e 2πk(j k) n = 1 and the sum equals 1. Otherwise we get the sum of a geometric series: = 1 n 1 e 2πn(j k) n 1 e 2π(j k) n Hence V n W n = I. = 1 n 1 1(j k) 1 e 2π(j k) n = 0. - p. 22/39

23 Inverse FFT The matrix V n is defined as: (V n ) j,k = x k j = e 2πijk n, whereas the matrix W n is defined as: (W n ) j,k = 1 n e 2πijk n. Therefore in order to compute the inverse FFT we neeed to change ω m = e 2πi n to ω m = e 2πi n in the algorithm and divide the result by n. - p. 23/39

24 Polynomial Division Let A(x) be a polynomial of degree m and let B(x) be the polynomial of degree n. Without loss of generality we assume that b n 1 = 0. In this problem we would like to compute two polynomials D(x) and R(x) such that: A(x) = D(x)B(x) + R(x), (3) and degree of R(x) is smaller then n. We say that D(x) is the result and R(x) is the remainder. - p. 24/39

25 Polynomial Division The first idea is to compute the inverse of B(x) and then use FFT to multiply A(x) by it. Unfortunately the polynomials have no inverses that would be polynomials. We can extend our domain to guarantee existence of inverses. - p. 25/39

26 Polynomial Division We will make all computation in the set of formal series F[[x]] over the field F. Formal series are śimply"polynomials of infinite degree. For some elements of F[[x]] the inverses exist. These elements have form a + xa(x), where a = 0 and A(x) F[[x]]. - p. 26/39

27 Polynomial Division Question 1 What is the inverse of the series 1 + x? The inverse is equal to i=0( x) i. Question 2 What is the inverse of the series j=0(j + 1)x j? The inverse is equal to (1 x) 2. - p. 27/39

28 Polynomial Division Let us plug in x = 1 z into (3) to get: A R (z)=d R (z)b R (z) + z m n 1 R R (z) = =B R (z)d R (z) mod z m n 1, where A R (z) = z m A( 1 z ), DR (z) = z m n D( 1 z ), B R (z) = z n B( 1 z ) and RR (z) = z n 1 R( 1 z ), are polynomials with the reversed order of coefficients. From the assumption that b n 1 = 0 we know that B R is invertible. - p. 28/39

29 Polynomial Division Now we can write : D R (z) = A R (x) ( B R (z) ) 1 mod z m n 1. (4) Note that in order to compute D R (z) we need only m n 1 terms from series ( B R (z) ) 1. The higher degree terms will disappear after the modulo operation by z m n 1. - p. 29/39

30 Polynomial Division The first t terms of the inverse of A(x) = n 1 i=0 a ix i, m) can be computed in the following way: INVERSE(A(x), t): if t = 1 then return 1/a 0 A [0] (x) = INVERSE(A(x), t 2 ) return ( A [0] (x) [ A(x)A [0] (x) 1 ] A [0] (x) ) mod x t. - p. 30/39

31 Polynomial Division The computation is correct because: is a multiple of x t 2, so 1 A(x) A[0] (x) 1 A(x) (A[0] (x) [ A(x)A [0] (x) 1 ] A [0] (x)) = =A(x) ( 1 A(x) A[0] (x)) 2, is a multiple of x t or x t+1. - p. 31/39

32 Polynomial Division It we use fast polynomial multiplication to compute (A [0] (x) (A(x)A [0] (x) 1)A [0] (x)) then the working time of the algorithm will be: log n i=0 O(2i log 2 i ) = O(1) log n i=0 i2i = = O(1) (2 + 2 log n+1 (log n 2)) = = O(n log n). We are now ready to give an algorithm that divides A(x) by B(x) in O(m log m) time, where m is the degree of A(x). - p. 32/39

33 Polynomial Division The algorithm dividing A(x) by B(x). A R (z) = z m A( 1 z ) B R (z) = z n B( 1 z ) (B R (z) 1 )(z) =INVERSE(B R (z), m n 1) D R (z) = A R (x) ( B R (z) ) 1 mod z m n 1 D(x) = z m n 1 D R ( 1 x ) R(x) = A(x) D(x)B(x) return (D(x), R(x)) - p. 33/39

34 Multi-point Evaluation In this problem we are given a degree n polynomial A(x) and a set of n points x 1,..., x n and need to compute n values A(x 1 ),..., A(x n ). We will show how to reduce the problem to two smaller problems. In order to do this we will use polynomial division. - p. 34/39

35 Multi-point Evaluation Let us define for A(x) two new polynomials: n 2 1 A [0] (x) = A(x) mod (x x i ), i=0 A [1] (x) = A(x) mod n 1 (x x i ). i= n 2 from properties of division we have: A(x i ) = A [0] (x i ) for i = 0,..., n 2 1 A(x i ) = A [1] (x i ) for i = n 2,..., n 1 - p. 35/39

36 Multi-point Evaluation Polynomials A [0] (x) and A [0] (x) are of degree n 2. Using polynomial division we can compute them in O(n log n) time. This recurrence gives working time T(n) = 2T( n 2 ) + Θ(n log n). and implies T(n) = Θ(n log 2 n). - p. 36/39

37 Interpolation For the given set of pairs X = {(x 0, y 0 ), (x 1, y 1 ),..., (x n 1, y n 1 )} such that all x i are pairwise different we would like to find interpolating polynomial. wielomian interpolacyjny. We will show how to reduce the problem to two smaller problems. In order to do this we will use multi-point polynomial evaluation. Let is define P(x) as: P(x) = n 2 1 i=0 (x x i). - p. 37/39

38 Interpolation We start by recursively computing a polynomial A [0] (x) of degree n 2 interpolating the set X [0] = {(x 0, y 0 ), (x 1, y 1 ),..., (x n 2 1, y n 2 1)}. Now the polynomial A(x) can be written as: A(x) = A [0] (x) + P(x)A [1] (x), where A [1] is an unknown polynomial of degree n 2. By the construction A(x) is an interpolating polynomial for X [0]. - p. 38/39

39 Interpolation Note that we need to solve an interpolation problem to find A [1], because: A [1] (x i ) = y i A [0] (x i ) P(x i ) We only need to compute: for i = n 2,..., n 1. the values of A [0] (x) for the set of points{x n 2,...,x n 1 }. the values of P(x) for the set of points{x n 2,...,x n 1 }. We have reduced the problem to two smaller ones. This reduction give an algorithm working in O(n log 3 n). - p. 39/39

### Polynomials and the Fast Fourier Transform (FFT) Battle Plan

Polynomials and the Fast Fourier Transform (FFT) Algorithm Design and Analysis (Wee 7) 1 Polynomials Battle Plan Algorithms to add, multiply and evaluate polynomials Coefficient and point-value representation

### Quotient Rings of Polynomial Rings

Quotient Rings of Polynomial Rings 8-7-009 Let F be a field. is a field if and only if p(x) is irreducible. In this section, I ll look at quotient rings of polynomial rings. Let F be a field, and suppose

### Chapter 7. Induction and Recursion. Part 1. Mathematical Induction

Chapter 7. Induction and Recursion Part 1. Mathematical Induction The principle of mathematical induction is this: to establish an infinite sequence of propositions P 1, P 2, P 3,..., P n,... (or, simply

### Lagrange Interpolation is a method of fitting an equation to a set of points that functions well when there are few points given.

Polynomials (Ch.1) Study Guide by BS, JL, AZ, CC, SH, HL Lagrange Interpolation is a method of fitting an equation to a set of points that functions well when there are few points given. Sasha s method

### Problem Set 7 - Fall 2008 Due Tuesday, Oct. 28 at 1:00

18.781 Problem Set 7 - Fall 2008 Due Tuesday, Oct. 28 at 1:00 Throughout this assignment, f(x) always denotes a polynomial with integer coefficients. 1. (a) Show that e 32 (3) = 8, and write down a list

### PUTNAM TRAINING POLYNOMIALS. Exercises 1. Find a polynomial with integral coefficients whose zeros include 2 + 5.

PUTNAM TRAINING POLYNOMIALS (Last updated: November 17, 2015) Remark. This is a list of exercises on polynomials. Miguel A. Lerma Exercises 1. Find a polynomial with integral coefficients whose zeros include

### Polynomials can be added or subtracted simply by adding or subtracting the corresponding terms, e.g., if

1. Polynomials 1.1. Definitions A polynomial in x is an expression obtained by taking powers of x, multiplying them by constants, and adding them. It can be written in the form c 0 x n + c 1 x n 1 + c

### MATH 4330/5330, Fourier Analysis Section 11, The Discrete Fourier Transform

MATH 433/533, Fourier Analysis Section 11, The Discrete Fourier Transform Now, instead of considering functions defined on a continuous domain, like the interval [, 1) or the whole real line R, we wish

### Chapter Three. Functions. In this section, we study what is undoubtedly the most fundamental type of relation used in mathematics.

Chapter Three Functions 3.1 INTRODUCTION In this section, we study what is undoubtedly the most fundamental type of relation used in mathematics. Definition 3.1: Given sets X and Y, a function from X to

### MTH 06 LECTURE NOTES (Ojakian) Topic 2: Functions

MTH 06 LECTURE NOTES (Ojakian) Topic 2: Functions OUTLINE (References: Iyer Textbook - pages 4,6,17,18,40,79,80,81,82,103,104,109,110) 1. Definition of Function and Function Notation 2. Domain and Range

### Introduction to polynomials

Worksheet 4.5 Polynomials Section 1 Introduction to polynomials A polynomial is an expression of the form p(x) = p 0 + p 1 x + p 2 x 2 + + p n x n, (n N) where p 0, p 1,..., p n are constants and x os

### 3.7 Complex Zeros; Fundamental Theorem of Algebra

SECTION.7 Complex Zeros; Fundamental Theorem of Algebra 2.7 Complex Zeros; Fundamental Theorem of Algebra PREPARING FOR THIS SECTION Before getting started, review the following: Complex Numbers (Appendix,

### Lecture 1: Jan 14, 2015

E0 309: Topics in Complexity Theory Spring 2015 Lecture 1: Jan 14, 2015 Lecturer: Neeraj Kayal Scribe: Sumant Hegde and Abhijat Sharma 11 Introduction The theme of the course in this semester is Algebraic

### HOMEWORK 5 SOLUTIONS. n!f n (1) lim. ln x n! + xn x. 1 = G n 1 (x). (2) k + 1 n. (n 1)!

Math 7 Fall 205 HOMEWORK 5 SOLUTIONS Problem. 2008 B2 Let F 0 x = ln x. For n 0 and x > 0, let F n+ x = 0 F ntdt. Evaluate n!f n lim n ln n. By directly computing F n x for small n s, we obtain the following

### x n = 1 x n In other words, taking a negative expoenent is the same is taking the reciprocal of the positive expoenent.

Rules of Exponents: If n > 0, m > 0 are positive integers and x, y are any real numbers, then: x m x n = x m+n x m x n = xm n, if m n (x m ) n = x mn (xy) n = x n y n ( x y ) n = xn y n 1 Can we make sense

### PROBLEM SET 6: POLYNOMIALS

PROBLEM SET 6: POLYNOMIALS 1. introduction In this problem set we will consider polynomials with coefficients in K, where K is the real numbers R, the complex numbers C, the rational numbers Q or any other

### CHAPTER SIX IRREDUCIBILITY AND FACTORIZATION 1. BASIC DIVISIBILITY THEORY

January 10, 2010 CHAPTER SIX IRREDUCIBILITY AND FACTORIZATION 1. BASIC DIVISIBILITY THEORY The set of polynomials over a field F is a ring, whose structure shares with the ring of integers many characteristics.

### Inverses. Stephen Boyd. EE103 Stanford University. October 27, 2015

Inverses Stephen Boyd EE103 Stanford University October 27, 2015 Outline Left and right inverses Inverse Solving linear equations Examples Pseudo-inverse Left and right inverses 2 Left inverses a number

### MA2C03 Mathematics School of Mathematics, Trinity College Hilary Term 2016 Lecture 59 (April 1, 2016) David R. Wilkins

MA2C03 Mathematics School of Mathematics, Trinity College Hilary Term 2016 Lecture 59 (April 1, 2016) David R. Wilkins The RSA encryption scheme works as follows. In order to establish the necessary public

### 1.7. Partial Fractions. 1.7.1. Rational Functions and Partial Fractions. A rational function is a quotient of two polynomials: R(x) = P (x) Q(x).

.7. PRTIL FRCTIONS 3.7. Partial Fractions.7.. Rational Functions and Partial Fractions. rational function is a quotient of two polynomials: R(x) = P (x) Q(x). Here we discuss how to integrate rational

### Chapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm.

Chapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm. We begin by defining the ring of polynomials with coefficients in a ring R. After some preliminary results, we specialize

### Interpolating Polynomials Handout March 7, 2012

Interpolating Polynomials Handout March 7, 212 Again we work over our favorite field F (such as R, Q, C or F p ) We wish to find a polynomial y = f(x) passing through n specified data points (x 1,y 1 ),

### 4. Matrix inverses. left and right inverse. linear independence. nonsingular matrices. matrices with linearly independent columns

L. Vandenberghe EE133A (Spring 2016) 4. Matrix inverses left and right inverse linear independence nonsingular matrices matrices with linearly independent columns matrices with linearly independent rows

### College Algebra - MAT 161 Page: 1 Copyright 2009 Killoran

College Algebra - MAT 6 Page: Copyright 2009 Killoran Zeros and Roots of Polynomial Functions Finding a Root (zero or x-intercept) of a polynomial is identical to the process of factoring a polynomial.

### Lecture 11 Fast Fourier Transform (FFT)

Lecture 11 Fast Fourier Transform (FFT) Weinan E 1,2 and Tiejun Li 2 1 Department of Mathematics, Princeton University, weinan@princeton.edu 2 School of Mathematical Sciences, Peking University, tieli@pku.edu.cn

### Basics of Polynomial Theory

3 Basics of Polynomial Theory 3.1 Polynomial Equations In geodesy and geoinformatics, most observations are related to unknowns parameters through equations of algebraic (polynomial) type. In cases where

### p 2 1 (mod 6) Adding 2 to both sides gives p (mod 6)

.9. Problems P10 Try small prime numbers first. p p + 6 3 11 5 7 7 51 11 13 Among the primes in this table, only the prime 3 has the property that (p + ) is also a prime. We try to prove that no other

### Error Detection. two copies of data receiver compares copies equal then no error. probability of same bits corrupted low.

Error Detection Add redundant bits simple case two copies of data receiver compares copies equal then no error. probability of same bits corrupted low. Add k bits

### Worksheet 4.7. Polynomials. Section 1. Introduction to Polynomials. A polynomial is an expression of the form

Worksheet 4.7 Polynomials Section 1 Introduction to Polynomials A polynomial is an expression of the form p(x) = p 0 + p 1 x + p 2 x 2 + + p n x n (n N) where p 0, p 1,..., p n are constants and x is a

### NON SINGULAR MATRICES. DEFINITION. (Non singular matrix) An n n A is called non singular or invertible if there exists an n n matrix B such that

NON SINGULAR MATRICES DEFINITION. (Non singular matrix) An n n A is called non singular or invertible if there exists an n n matrix B such that AB = I n = BA. Any matrix B with the above property is called

### Limits at Infinity Limits at Infinity for Polynomials Limits at Infinity for the Exponential Function Function Dominance More on Asymptotes

Lecture 5 Limits at Infinity and Asymptotes Limits at Infinity Horizontal Asymptotes Limits at Infinity for Polynomials Limit of a Reciprocal Power The End Behavior of a Polynomial Evaluating the Limit

### SOLVING POLYNOMIAL EQUATIONS

C SOLVING POLYNOMIAL EQUATIONS We will assume in this appendix that you know how to divide polynomials using long division and synthetic division. If you need to review those techniques, refer to an algebra

### Some Notes on Taylor Polynomials and Taylor Series

Some Notes on Taylor Polynomials and Taylor Series Mark MacLean October 3, 27 UBC s courses MATH /8 and MATH introduce students to the ideas of Taylor polynomials and Taylor series in a fairly limited

### Functions and Equations

Centre for Education in Mathematics and Computing Euclid eworkshop # Functions and Equations c 014 UNIVERSITY OF WATERLOO Euclid eworkshop # TOOLKIT Parabolas The quadratic f(x) = ax + bx + c (with a,b,c

### Polynomial Factoring. Ramesh Hariharan

Polynomial Factoring Ramesh Hariharan The Problem Factoring Polynomials overs Integers Factorization is unique (why?) (x^2 + 5x +6) (x+2)(x+3) Time: Polynomial in degree A Related Problem Factoring Integers

### Math 56 Homework 4 Michael Downs

Fourier series theory. As in lecture, let be the L 2 -norm on (, 2π). (a) Find a unit-norm function orthogonal to f(x) = x on x < 2π. [Hint: do what you d do in vector-land, eg pick some simple new function

### On Polynomial Multiplication Complexity in Chebyshev Basis

On Polynomial Multiplication Complexity in Chebyshev Basis Pascal Giorgi INRIA Rocquencourt, Algorithms Project s Seminar November 29, 2010. Outline 1 Polynomial multiplication in monomial basis 2 Polynomial

### Rational Polynomial Functions

Rational Polynomial Functions Rational Polynomial Functions and Their Domains Today we discuss rational polynomial functions. A function f(x) is a rational polynomial function if it is the quotient of

### An Introduction to Galois Fields and Reed-Solomon Coding

An Introduction to Galois Fields and Reed-Solomon Coding James Westall James Martin School of Computing Clemson University Clemson, SC 29634-1906 October 4, 2010 1 Fields A field is a set of elements on

### Chapter 1 Quadratic Equations in One Unknown (I)

Tin Ka Ping Secondary School 015-016 F. Mathematics Compulsory Part Teaching Syllabus Chapter 1 Quadratic in One Unknown (I) 1 1.1 Real Number System A Integers B nal Numbers C Irrational Numbers D Real

### Continued Fractions and the Euclidean Algorithm

Continued Fractions and the Euclidean Algorithm Lecture notes prepared for MATH 326, Spring 997 Department of Mathematics and Statistics University at Albany William F Hammond Table of Contents Introduction

### PROBLEM SET # 2 SOLUTIONS

PROBLEM SET # 2 SOLUTIONS CHAPTER 2: GROUPS AND ARITHMETIC 2. Groups.. Let G be a group and e and e two identity elements. Show that e = e. (Hint: Consider e e and calculate it two ways.) Solution. Since

### Notes on Linear Recurrence Sequences

Notes on Linear Recurrence Sequences April 8, 005 As far as preparing for the final exam, I only hold you responsible for knowing sections,,, 6 and 7 Definitions and Basic Examples An example of a linear

### Section 3.2 Polynomial Functions and Their Graphs

Section 3.2 Polynomial Functions and Their Graphs EXAMPLES: P(x) = 3, Q(x) = 4x 7, R(x) = x 2 +x, S(x) = 2x 3 6x 2 10 QUESTION: Which of the following are polynomial functions? (a) f(x) = x 3 +2x+4 (b)

### ASS.PROF.DR Thamer Information Theory 4th Class in Communication. Finite Field Arithmetic. (Galois field)

Finite Field Arithmetic (Galois field) Introduction: A finite field is also often known as a Galois field, after the French mathematician Pierre Galois. A Galois field in which the elements can take q

### CS 4310 HOMEWORK SET 1

CS 4310 HOMEWORK SET 1 PAUL MILLER Section 2.1 Exercises Exercise 2.1-1. Using Figure 2.2 as a model, illustrate the operation of INSERTION-SORT on the array A = 31, 41, 59, 26, 41, 58. Solution: Assume

### Applications of Fermat s Little Theorem and Congruences

Applications of Fermat s Little Theorem and Congruences Definition: Let m be a positive integer. Then integers a and b are congruent modulo m, denoted by a b mod m, if m (a b). Example: 3 1 mod 2, 6 4

### Linear Systems. Singular and Nonsingular Matrices. Find x 1, x 2, x 3 such that the following three equations hold:

Linear Systems Example: Find x, x, x such that the following three equations hold: x + x + x = 4x + x + x = x + x + x = 6 We can write this using matrix-vector notation as 4 {{ A x x x {{ x = 6 {{ b General

### ECE 842 Report Implementation of Elliptic Curve Cryptography

ECE 842 Report Implementation of Elliptic Curve Cryptography Wei-Yang Lin December 15, 2004 Abstract The aim of this report is to illustrate the issues in implementing a practical elliptic curve cryptographic

### Lecture 2: Abhyankar s Results on the Newton Polygon

Lecture 2: Abhyankar s Results on the Newton Polygon Definition. Let P(X, Y ) = p ij X i Y j C[X, Y ]. The support of P, S(P), is the set {(i, j) N N f ij 0}. The Newton polygon of P, N(P), is the convex

### Finite Fields and Error-Correcting Codes

Lecture Notes in Mathematics Finite Fields and Error-Correcting Codes Karl-Gustav Andersson (Lund University) (version 1.013-16 September 2015) Translated from Swedish by Sigmundur Gudmundsson Contents

### Lecture 2: Analysis of Algorithms (CS )

Lecture 2: Analysis of Algorithms (CS583-002) Amarda Shehu September 03 & 10, 2014 1 Outline of Today s Class 2 Big-Oh, Big-Omega, Theta Techniques for Finding Asymptotic Relationships Some more Fun with

### The Method of Partial Fractions Math 121 Calculus II Spring 2015

Rational functions. as The Method of Partial Fractions Math 11 Calculus II Spring 015 Recall that a rational function is a quotient of two polynomials such f(x) g(x) = 3x5 + x 3 + 16x x 60. The method

### Polynomials and Vieta s Formulas

Polynomials and Vieta s Formulas Misha Lavrov ARML Practice 2/9/2014 Review problems 1 If a 0 = 0 and a n = 3a n 1 + 2, find a 100. 2 If b 0 = 0 and b n = n 2 b n 1, find b 100. Review problems 1 If a

### Some facts about polynomials modulo m (Full proof of the Fingerprinting Theorem)

Some facts about polynomials modulo m (Full proof of the Fingerprinting Theorem) In order to understand the details of the Fingerprinting Theorem on fingerprints of different texts from Chapter 19 of the

### it is easy to see that α = a

21. Polynomial rings Let us now turn out attention to determining the prime elements of a polynomial ring, where the coefficient ring is a field. We already know that such a polynomial ring is a UF. Therefore

### Elementary Number Theory

Elementary Number Theory Ahto Buldas December 3, 2016 Ahto Buldas Elementary Number Theory December 3, 2016 1 / 1 Division For any m > 0, we define Z m = {0, 1,... m 1} For any n, m Z (m > 0), there are

### FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z

FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z DANIEL BIRMAJER, JUAN B GIL, AND MICHAEL WEINER Abstract We consider polynomials with integer coefficients and discuss their factorization

### Recurrence Relations

Recurrence Relations Time complexity for Recursive Algorithms Can be more difficult to solve than for standard algorithms because we need to know complexity for the sub-recursions of decreasing size Recurrence

### (x + a) n = x n + a Z n [x]. Proof. If n is prime then the map

22. A quick primality test Prime numbers are one of the most basic objects in mathematics and one of the most basic questions is to decide which numbers are prime (a clearly related problem is to find

### a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2.

Chapter 1 LINEAR EQUATIONS 1.1 Introduction to linear equations A linear equation in n unknowns x 1, x,, x n is an equation of the form a 1 x 1 + a x + + a n x n = b, where a 1, a,..., a n, b are given

### 1.5 Elementary Matrices and a Method for Finding the Inverse

.5 Elementary Matrices and a Method for Finding the Inverse Definition A n n matrix is called an elementary matrix if it can be obtained from I n by performing a single elementary row operation Reminder:

### 1 Gaussian Elimination

Contents 1 Gaussian Elimination 1.1 Elementary Row Operations 1.2 Some matrices whose associated system of equations are easy to solve 1.3 Gaussian Elimination 1.4 Gauss-Jordan reduction and the Reduced

### MATH 289 PROBLEM SET 1: INDUCTION. 1. The induction Principle The following property of the natural numbers is intuitively clear:

MATH 89 PROBLEM SET : INDUCTION The induction Principle The following property of the natural numbers is intuitively clear: Axiom Every nonempty subset of the set of nonnegative integers Z 0 = {0,,, 3,

### 1 Algebra - Partial Fractions

1 Algebra - Partial Fractions Definition 1.1 A polynomial P (x) in x is a function that may be written in the form P (x) a n x n + a n 1 x n 1 +... + a 1 x + a 0. a n 0 and n is the degree of the polynomial,

### Vieta s Formulas and the Identity Theorem

Vieta s Formulas and the Identity Theorem This worksheet will work through the material from our class on 3/21/2013 with some examples that should help you with the homework The topic of our discussion

### Mathematics of Cryptography

CHAPTER 2 Mathematics of Cryptography Part I: Modular Arithmetic, Congruence, and Matrices Objectives This chapter is intended to prepare the reader for the next few chapters in cryptography. The chapter

### CHAPTER III - MARKOV CHAINS

CHAPTER III - MARKOV CHAINS JOSEPH G. CONLON 1. General Theory of Markov Chains We have already discussed the standard random walk on the integers Z. A Markov Chain can be viewed as a generalization of

### 8.2. Solution by Inverse Matrix Method. Introduction. Prerequisites. Learning Outcomes

Solution by Inverse Matrix Method 8.2 Introduction The power of matrix algebra is seen in the representation of a system of simultaneous linear equations as a matrix equation. Matrix algebra allows us

### Recurrences (CLRS )

Recurrences (CLRS 4.1-4.2) Last time we discussed divide-and-conquer algorithms Divide and Conquer To Solve P: 1. Divide P into smaller problems P 1,P 2,P 3...P k. 2. Conquer by solving the (smaller) subproblems

### H/wk 13, Solutions to selected problems

H/wk 13, Solutions to selected problems Ch. 4.1, Problem 5 (a) Find the number of roots of x x in Z 4, Z Z, any integral domain, Z 6. (b) Find a commutative ring in which x x has infinitely many roots.

### Linear Least Squares

Linear Least Squares Suppose we are given a set of data points {(x i,f i )}, i = 1,...,n. These could be measurements from an experiment or obtained simply by evaluating a function at some points. One

### Solving recurrences. CS 4407, Algorithms University College Cork, Gregory M. Provan

Solving recurrences The analysis of divide and conquer algorithms require us to solve a recurrence. Recurrences are a major tool for analysis of algorithms MergeSort A L G O R I T H M S A L G O R I T H

### 1. For each of the following matrices, determine whether it is in row echelon form, reduced row echelon form, or neither.

Math Exam - Practice Problem Solutions. For each of the following matrices, determine whether it is in row echelon form, reduced row echelon form, or neither. (a) 5 (c) Since each row has a leading that

### Homework Set 2 (Due in class on Thursday, Sept. 25) (late papers accepted until 1:00 Friday)

Math 202 Homework Set 2 (Due in class on Thursday, Sept. 25) (late papers accepted until 1:00 Friday) Jerry L. Kazdan The problem numbers refer to the D Angelo - West text. 1. [# 1.8] In the morning section

### Notes 11: List Decoding Folded Reed-Solomon Codes

Introduction to Coding Theory CMU: Spring 2010 Notes 11: List Decoding Folded Reed-Solomon Codes April 2010 Lecturer: Venkatesan Guruswami Scribe: Venkatesan Guruswami At the end of the previous notes,

### = 2 + 1 2 2 = 3 4, Now assume that P (k) is true for some fixed k 2. This means that

Instructions. Answer each of the questions on your own paper, and be sure to show your work so that partial credit can be adequately assessed. Credit will not be given for answers (even correct ones) without

### Operation Count; Numerical Linear Algebra

10 Operation Count; Numerical Linear Algebra 10.1 Introduction Many computations are limited simply by the sheer number of required additions, multiplications, or function evaluations. If floating-point

### Quotient Rings and Field Extensions

Chapter 5 Quotient Rings and Field Extensions In this chapter we describe a method for producing field extension of a given field. If F is a field, then a field extension is a field K that contains F.

### 36 Fields of Rational Functions

36 Fields of Rational Functions The reader might have missed the familiar quotient rule (\f(f,g)) = f g fg in Lemma 35.5. It was missing because f is not a polynomial. g We now introduce these quotients

### Introduction to the Finite Element Method (FEM)

Introduction to the Finite Element Method (FEM) ecture First and Second Order One Dimensional Shape Functions Dr. J. Dean Discretisation Consider the temperature distribution along the one-dimensional

### Steven Skiena. skiena

Lecture 3: Recurrence Relations (1997) Steven Skiena Department of Computer Science State University of New York Stony Brook, NY 11794 4400 http://www.cs.sunysb.edu/ skiena Argue the solution to T(n) =

### Lecture 8: Stream ciphers - LFSR sequences

Lecture 8: Stream ciphers - LFSR sequences Thomas Johansson T. Johansson (Lund University) 1 / 42 Introduction Symmetric encryption algorithms are divided into two main categories, block ciphers and stream

### Practice Problems for First Test

Mathematicians have tried in vain to this day to discover some order in the sequence of prime numbers, and we have reason to believe that it is a mystery into which the human mind will never penetrate.-

### SMT 2014 Algebra Test Solutions February 15, 2014

1. Alice and Bob are painting a house. If Alice and Bob do not take any breaks, they will finish painting the house in 20 hours. If, however, Bob stops painting once the house is half-finished, then the

### MA 242 LINEAR ALGEBRA C1, Solutions to Second Midterm Exam

MA 4 LINEAR ALGEBRA C, Solutions to Second Midterm Exam Prof. Nikola Popovic, November 9, 6, 9:3am - :5am Problem (5 points). Let the matrix A be given by 5 6 5 4 5 (a) Find the inverse A of A, if it exists.

### 1. LINEAR EQUATIONS. A linear equation in n unknowns x 1, x 2,, x n is an equation of the form

1. LINEAR EQUATIONS A linear equation in n unknowns x 1, x 2,, x n is an equation of the form a 1 x 1 + a 2 x 2 + + a n x n = b, where a 1, a 2,..., a n, b are given real numbers. For example, with x and

### Polynomial Invariants

Polynomial Invariants Dylan Wilson October 9, 2014 (1) Today we will be interested in the following Question 1.1. What are all the possible polynomials in two variables f(x, y) such that f(x, y) = f(y,

### DETERMINANTS. b 2. x 2

DETERMINANTS 1 Systems of two equations in two unknowns A system of two equations in two unknowns has the form a 11 x 1 + a 12 x 2 = b 1 a 21 x 1 + a 22 x 2 = b 2 This can be written more concisely in

### a 1 x + a 0 =0. (3) ax 2 + bx + c =0. (4)

ROOTS OF POLYNOMIAL EQUATIONS In this unit we discuss polynomial equations. A polynomial in x of degree n, where n 0 is an integer, is an expression of the form P n (x) =a n x n + a n 1 x n 1 + + a 1 x

### Factoring & Primality

Factoring & Primality Lecturer: Dimitris Papadopoulos In this lecture we will discuss the problem of integer factorization and primality testing, two problems that have been the focus of a great amount

### Partial Fractions. (x 1)(x 2 + 1)

Partial Fractions Adding rational functions involves finding a common denominator, rewriting each fraction so that it has that denominator, then adding. For example, 3x x 1 3x(x 1) (x + 1)(x 1) + 1(x +

### Solving simultaneous equations using the inverse matrix

Solving simultaneous equations using the inverse matrix 8. Introduction The power of matrix algebra is seen in the representation of a system of simultaneous linear equations as a matrix equation. Matrix

### Homework 5 Solutions

Homework 5 Solutions 4.2: 2: a. 321 = 256 + 64 + 1 = (01000001) 2 b. 1023 = 512 + 256 + 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = (1111111111) 2. Note that this is 1 less than the next power of 2, 1024, which

### THE FUNDAMENTAL THEOREM OF ALGEBRA VIA PROPER MAPS

THE FUNDAMENTAL THEOREM OF ALGEBRA VIA PROPER MAPS KEITH CONRAD 1. Introduction The Fundamental Theorem of Algebra says every nonconstant polynomial with complex coefficients can be factored into linear

### CS 561, Lecture 3 - Recurrences. Jared Saia University of New Mexico

CS 561, Lecture 3 - Recurrences Jared Saia University of New Mexico Recurrence Relations Oh how should I not lust after eternity and after the nuptial ring of rings, the ring of recurrence - Friedrich

### 1 Lecture: Integration of rational functions by decomposition

Lecture: Integration of rational functions by decomposition into partial fractions Recognize and integrate basic rational functions, except when the denominator is a power of an irreducible quadratic.

### x 3y 2z = 6 1.2) 2x 4y 3z = 8 3x + 6y + 8z = 5 x + 3y 2z + 5t = 4 1.5) 2x + 8y z + 9t = 9 3x + 5y 12z + 17t = 7 Linear Algebra-Lab 2

Linear Algebra-Lab 1 1) Use Gaussian elimination to solve the following systems x 1 + x 2 2x 3 + 4x 4 = 5 1.1) 2x 1 + 2x 2 3x 3 + x 4 = 3 3x 1 + 3x 2 4x 3 2x 4 = 1 x + y + 2z = 4 1.4) 2x + 3y + 6z = 10