Exact Arithmetic on a Computer

Size: px
Start display at page:

Download "Exact Arithmetic on a Computer"

Transcription

1 Exact Arithmetic on a Computer Symbolic Computation and Computer Algebra William J. Turner Department of Mathematics & Computer Science Wabash College Crawfordsville, IN Tuesday 21 September 2010 W. J. Turner Exact Arithmetic on a Computer 1/ 23

2 Outline 1 Introduction Symbolic Computation Symbolic Computation vs. Numerical Analysis Symbolic Algorithms 2 Fundamental Algorithms Storing Integers and Polynomials Classical Arithmetic Algorithms 3 Fast Multiplication 4 Division 5 Solving Polynomial Equations W. J. Turner Exact Arithmetic on a Computer 2/ 23

3 Symbolic Computation Superset of computer algebra Symbols or exact arithmetic Exact finite representation of mathematical structures Abstract structures (groups, rings, fields, etc.) Polynomials and power series Linear algebra Number theory Algebraic geometry Computational group theory Differential equations Automated theorem proving W. J. Turner Exact Arithmetic on a Computer 3/ 23

4 Computer Algebra Systems General Purpose Systems AXIOM, Magma, Maple, Mathematica, REDUCE, SAGE Special Purpose Systems CoCoA (Computations in Commutative Algebra) GAP (Groups, Algorithms, and Programming) NTL (Number Theory Library) Singular (polynomial computations) Theorema (automated theorem proving) W. J. Turner Exact Arithmetic on a Computer 4/ 23

5 Computer Algebra Systems General Purpose Systems AXIOM, Magma, Maple, Mathematica, REDUCE, SAGE Special Purpose Systems CoCoA (Computations in Commutative Algebra) GAP (Groups, Algorithms, and Programming) NTL (Number Theory Library) Singular (polynomial computations) Theorema (automated theorem proving) W. J. Turner Exact Arithmetic on a Computer 4/ 23

6 Long History Ancient Algorithms Euclidean Algorithm Chinese Remainder Algorithm Isaac Newton s The Universal Arithmetic (1728) Systematically discusses rules for manipulating universal mathematical expressions, that is, formulae containing symbolic indeterminates, and algorithms for solving equations built with these expressions. W. J. Turner Exact Arithmetic on a Computer 5/ 23

7 Long History Ancient Algorithms Euclidean Algorithm Chinese Remainder Algorithm Isaac Newton s The Universal Arithmetic (1728) Systematically discusses rules for manipulating universal mathematical expressions, that is, formulae containing symbolic indeterminates, and algorithms for solving equations built with these expressions. W. J. Turner Exact Arithmetic on a Computer 5/ 23

8 Symbolic Computation vs. Numerical Analysis Numerical Analysis Floating point numbers (approximate real values) Find approximation quickly Error propagation important Condition Number Stability Symbolic Computation Find exact solution quickly May never approximate Structure may not have a metric Algorithms may not be compatible Numerical algorithms may never find exact solution Symbolic algorithms may be ill-conditioned or unstable W. J. Turner Exact Arithmetic on a Computer 6/ 23

9 Symbolic Computation vs. Numerical Analysis Numerical Analysis Floating point numbers (approximate real values) Find approximation quickly Error propagation important Condition Number Stability Symbolic Computation Find exact solution quickly May never approximate Structure may not have a metric Algorithms may not be compatible Numerical algorithms may never find exact solution Symbolic algorithms may be ill-conditioned or unstable W. J. Turner Exact Arithmetic on a Computer 6/ 23

10 Symbolic Computation vs. Numerical Analysis Numerical Analysis Floating point numbers (approximate real values) Find approximation quickly Error propagation important Condition Number Stability Symbolic Computation Find exact solution quickly May never approximate Structure may not have a metric Algorithms may not be compatible Numerical algorithms may never find exact solution Symbolic algorithms may be ill-conditioned or unstable W. J. Turner Exact Arithmetic on a Computer 6/ 23

11 Infinite Mathematical Structure General Approach Computer has finite memory Cannot compute exactly over reals, rationals, integers, etc. Compute bound M on desired solution Solve via modular algorithms & reconstruct solution Chinese Remainder Algorithm Hensel Lifting Rational Number Reconstruction Selecting the Modulus Big Prime Method: m = p Small Prime Method: m = i p i Small Prime Power Method: m = p l W. J. Turner Exact Arithmetic on a Computer 7/ 23

12 Infinite Mathematical Structure General Approach Computer has finite memory Cannot compute exactly over reals, rationals, integers, etc. Compute bound M on desired solution Solve via modular algorithms & reconstruct solution Chinese Remainder Algorithm Hensel Lifting Rational Number Reconstruction Selecting the Modulus Big Prime Method: m = p Small Prime Method: m = i p i Small Prime Power Method: m = p l W. J. Turner Exact Arithmetic on a Computer 7/ 23

13 Storing Integers and Polynomials Polynomials Integers Polynomials R[x] over ring R (e.g., Z m ) a = a n x n + a n 1 x n a 1 x + a 0 R[x] store degree n and coefficients a i for i = 0, 1, 2,..., n Radix r N >1 a = a n r n + a n 1 r n a 1 r + a 0 Z 0 a i < r for i = 0, 1, 2,..., n. store size n and digits a i for i = 0, 1, 2,..., n W. J. Turner Exact Arithmetic on a Computer 8/ 23

14 Storing Integers and Polynomials Polynomials Integers Polynomials R[x] over ring R (e.g., Z m ) a = a n x n + a n 1 x n a 1 x + a 0 R[x] store degree n and coefficients a i for i = 0, 1, 2,..., n Radix r N >1 a = a n r n + a n 1 r n a 1 r + a 0 Z 0 a i < r for i = 0, 1, 2,..., n. store size n and digits a i for i = 0, 1, 2,..., n W. J. Turner Exact Arithmetic on a Computer 8/ 23

15 Classical Addition Algorithm Polynomials n a = a i x i and b = i=0 Assume n = m : c = Algorithm for i = 0, 1, 2,... n do c i a i + b i end for Complexity O(n) ring operations m b i x i R[x] i=0 n c i = a + b = i=0 n (a i + b i )x i i=0 W. J. Turner Exact Arithmetic on a Computer 9/ 23

16 Classical Addition Algorithm Polynomials n a = a i x i and b = i=0 Assume n = m : c = Algorithm for i = 0, 1, 2,... n do c i a i + b i end for Complexity O(n) ring operations m b i x i R[x] i=0 n c i = a + b = i=0 n (a i + b i )x i i=0 W. J. Turner Exact Arithmetic on a Computer 9/ 23

17 Classical Addition Algorithm Polynomials n a = a i x i and b = i=0 Assume n = m : c = Algorithm for i = 0, 1, 2,... n do c i a i + b i end for Complexity O(n) ring operations m b i x i R[x] i=0 n c i = a + b = i=0 n (a i + b i )x i i=0 W. J. Turner Exact Arithmetic on a Computer 9/ 23

18 Classical Addition Algorithm Integer Algorithm c 0 0 for i = 0, 1, 2,... n do c i a i + b i + c i if c i r then c i c i r c i+1 1 else c i+1 0 end if end for Complexity O(n) word operations W. J. Turner Exact Arithmetic on a Computer 10/ 23

19 Classical Addition Algorithm Integer Algorithm c 0 0 for i = 0, 1, 2,... n do c i a i + b i + c i if c i r then c i c i r c i+1 1 else c i+1 0 end if end for Complexity O(n) word operations W. J. Turner Exact Arithmetic on a Computer 10/ 23

20 Classical Multiplication Algorithm Polynomial Algorithm Require: a = n i=0 a ix i and b = m i=0 b ix i for k = 0, 1, 2,... n + m do c k 0 for i = max{0, k m},..., min{n, k} do c k c k + a i b k i end for end for Complexity O(mn) ring operations n = m = O(n 2 ) ring operations W. J. Turner Exact Arithmetic on a Computer 11/ 23

21 Classical Multiplication Algorithm Polynomial Algorithm Require: a = n i=0 a ix i and b = m i=0 b ix i for k = 0, 1, 2,... n + m do c k 0 for i = max{0, k m},..., min{n, k} do c k c k + a i b k i end for end for Complexity O(mn) ring operations n = m = O(n 2 ) ring operations W. J. Turner Exact Arithmetic on a Computer 11/ 23

22 Classical Multiplication Algorithm Another Organization Require: a = n i=0 a ix i and b = m i=0 b ix i for i = 0, 1, 2,... n do d i a i x i b { x i just shifts a i by i places } end for return c n i=0 d i Integer Algorithm Require: a = ( 1) s n i=0 a ir i and b = ( 1) t m i=0 b ir i for i = 0, 1, 2,... n do d i a i r i b { r i just shifts a i by i places } end for return c ( 1) s+t n i=0 d i W. J. Turner Exact Arithmetic on a Computer 12/ 23

23 Classical Multiplication Algorithm Another Organization Require: a = n i=0 a ix i and b = m i=0 b ix i for i = 0, 1, 2,... n do d i a i x i b { x i just shifts a i by i places } end for return c n i=0 d i Integer Algorithm Require: a = ( 1) s n i=0 a ir i and b = ( 1) t m i=0 b ir i for i = 0, 1, 2,... n do d i a i r i b { r i just shifts a i by i places } end for return c ( 1) s+t n i=0 d i W. J. Turner Exact Arithmetic on a Computer 12/ 23

24 Classical Division with Remainder Algorithm Polynomial Synthetic Division Algorithm Require: a = n i=0 a ix i and b = m i=0 b ix i where b m is a unit and n m 0 Ensure: a = qb + r and deg r < m r a and u bm 1 for i = n m, n m 1,... 0 do if deg r = m + i then q i lc(r)u {Leading coefficient of r} r r q i x i b else q i 0 end if end for return q n m i=0 q ix i and r W. J. Turner Exact Arithmetic on a Computer 13/ 23

25 Fast Multiplication Roots of Unity Let R be a ring, n N >1, and ω R. ω is an nth root of unity if ω n = 1. ω is a primitive nth root of unity if 1 k < n = ω k 1. Discrete Fourrier Transform DFT ω : R n R n, f ( f (1), f (ω), f (ω 2 ),..., f (ω n 1 ) ) deg(f ) < n ω is primitive nth root of unity Fast Fourrier Transform (FFT) Can compute DFT recursively for n = 2 k O(n log n) ring operations W. J. Turner Exact Arithmetic on a Computer 14/ 23

26 Fast Multiplication Roots of Unity Let R be a ring, n N >1, and ω R. ω is an nth root of unity if ω n = 1. ω is a primitive nth root of unity if 1 k < n = ω k 1. Discrete Fourrier Transform DFT ω : R n R n, f ( f (1), f (ω), f (ω 2 ),..., f (ω n 1 ) ) deg(f ) < n ω is primitive nth root of unity Fast Fourrier Transform (FFT) Can compute DFT recursively for n = 2 k O(n log n) ring operations W. J. Turner Exact Arithmetic on a Computer 14/ 23

27 Fast Multiplication Roots of Unity Let R be a ring, n N >1, and ω R. ω is an nth root of unity if ω n = 1. ω is a primitive nth root of unity if 1 k < n = ω k 1. Discrete Fourrier Transform DFT ω : R n R n, f ( f (1), f (ω), f (ω 2 ),..., f (ω n 1 ) ) deg(f ) < n ω is primitive nth root of unity Fast Fourrier Transform (FFT) Can compute DFT recursively for n = 2 k O(n log n) ring operations W. J. Turner Exact Arithmetic on a Computer 14/ 23

28 Fast Multiplication DFT and Multiplication If deg(f ) + deg(g) < n, then DFT ω (f g) = DFT ω (f ) DFT ω (g). Fast Multiplication Algorithm Require: deg(f ), deg(g) < n k log 2 (2n) ω primitive 2 k th root of unity in R α DFT ω (f ) and β DFT ω (g) {via FFT} γ α β {pointwise multiplication} return DFT 1 ω (γ) = 1 n DFT ω 1(γ) Complexity O(n log n) ring operations O(n log n loglog n) ring operations if must extend ring W. J. Turner Exact Arithmetic on a Computer 15/ 23

29 Fast Multiplication DFT and Multiplication If deg(f ) + deg(g) < n, then DFT ω (f g) = DFT ω (f ) DFT ω (g). Fast Multiplication Algorithm Require: deg(f ), deg(g) < n k log 2 (2n) ω primitive 2 k th root of unity in R α DFT ω (f ) and β DFT ω (g) {via FFT} γ α β {pointwise multiplication} return DFT 1 ω (γ) = 1 n DFT ω 1(γ) Complexity O(n log n) ring operations O(n log n loglog n) ring operations if must extend ring W. J. Turner Exact Arithmetic on a Computer 15/ 23

30 Fast Multiplication DFT and Multiplication If deg(f ) + deg(g) < n, then DFT ω (f g) = DFT ω (f ) DFT ω (g). Fast Multiplication Algorithm Require: deg(f ), deg(g) < n k log 2 (2n) ω primitive 2 k th root of unity in R α DFT ω (f ) and β DFT ω (g) {via FFT} γ α β {pointwise multiplication} return DFT 1 ω (γ) = 1 n DFT ω 1(γ) Complexity O(n log n) ring operations O(n log n loglog n) ring operations if must extend ring W. J. Turner Exact Arithmetic on a Computer 15/ 23

31 Fast Division Polynomial Reversal The reversal of a polynomial a = n i=0 a ix i is ( ) 1 rev k (a) = x k a x When k = n, rev(a) = rev n (a) reverses the coefficients of a. Reversals and Division If deg(a) = n, deg(b) = m, and b(0) = 1, then deg(r) < m so rev m 1 (r) is a polynomial and rev n (a) rev n m (q) = rev m (b) rev n m (q) + x n m+1 rev m 1 (r) rev m (b) rev n m (q) (mod x n m+1 ) = rev n (a) rev m (b) 1 mod x n m+1 W. J. Turner Exact Arithmetic on a Computer 16/ 23

32 Fast Division Polynomial Reversal The reversal of a polynomial a = n i=0 a ix i is ( ) 1 rev k (a) = x k a x When k = n, rev(a) = rev n (a) reverses the coefficients of a. Reversals and Division If deg(a) = n, deg(b) = m, and b(0) = 1, then deg(r) < m so rev m 1 (r) is a polynomial and rev n (a) rev n m (q) = rev m (b) rev n m (q) + x n m+1 rev m 1 (r) rev m (b) rev n m (q) (mod x n m+1 ) = rev n (a) rev m (b) 1 mod x n m+1 W. J. Turner Exact Arithmetic on a Computer 16/ 23

33 Fast Division Polynomial Reversal The reversal of a polynomial a = n i=0 a ix i is ( ) 1 rev k (a) = x k a x When k = n, rev(a) = rev n (a) reverses the coefficients of a. Reversals and Division If deg(a) = n, deg(b) = m, and b(0) = 1, then deg(r) < m so rev m 1 (r) is a polynomial and rev n (a) rev n m (q) = rev m (b) rev n m (q) + x n m+1 rev m 1 (r) rev m (b) rev n m (q) (mod x n m+1 ) = rev n (a) rev m (b) 1 mod x n m+1 W. J. Turner Exact Arithmetic on a Computer 16/ 23

34 Newton Iteration Newton s Iteration from Calculus Require: φ(y), initial estimate y 0, and tolerance τ Ensure: φ(ȳ) < τ k 0 while φ(y k ) τ do y k+1 y k φ(y k) φ (y k ) = y k φ(y k ) ( φ (y k ) ) 1 end while return ȳ y k W. J. Turner Exact Arithmetic on a Computer 17/ 23

35 Algebra Not Analysis Formal Derivative Let R be a ring (commutative, with 1). For φ = n i=0 φ iy i D[y], where D is a ring, we define the formal derivative of φ by φ = n iφ i y i 1 i=0 Approximations Given a modulus m, measure how well b approximates a by the highest power of m such that a b (mod m). Example Let m = 2. Then 9 is a better approximation for 17 than 15 because 9 17 (mod 2 3 ) but (mod 2 3 ). W. J. Turner Exact Arithmetic on a Computer 18/ 23

36 Algebra Not Analysis Formal Derivative Let R be a ring (commutative, with 1). For φ = n i=0 φ iy i D[y], where D is a ring, we define the formal derivative of φ by φ = n iφ i y i 1 i=0 Approximations Given a modulus m, measure how well b approximates a by the highest power of m such that a b (mod m). Example Let m = 2. Then 9 is a better approximation for 17 than 15 because 9 17 (mod 2 3 ) but (mod 2 3 ). W. J. Turner Exact Arithmetic on a Computer 18/ 23

37 Algebra Not Analysis Formal Derivative Let R be a ring (commutative, with 1). For φ = n i=0 φ iy i D[y], where D is a ring, we define the formal derivative of φ by φ = n iφ i y i 1 i=0 Approximations Given a modulus m, measure how well b approximates a by the highest power of m such that a b (mod m). Example Let m = 2. Then 9 is a better approximation for 17 than 15 because 9 17 (mod 2 3 ) but (mod 2 3 ). W. J. Turner Exact Arithmetic on a Computer 18/ 23

38 Inversion Using Newton Iteration Choosing the Function Given f R[x] = D, want φ D[y] such that φ(f 1 ) = 0. Must be invertible Update φ (φ ) 1 without division The Function φ(y) = 1 y f φ (y) = 1 y 2 φ(y) ( φ (y) ) 1 = y + fy 2 y φ(y) ( φ (y) ) 1 = 2y fy 2 W. J. Turner Exact Arithmetic on a Computer 19/ 23

39 Inversion Using Newton Iteration Choosing the Function Given f R[x] = D, want φ D[y] such that φ(f 1 ) = 0. Must be invertible Update φ (φ ) 1 without division The Function φ(y) = 1 y f φ (y) = 1 y 2 φ(y) ( φ (y) ) 1 = y + fy 2 y φ(y) ( φ (y) ) 1 = 2y fy 2 W. J. Turner Exact Arithmetic on a Computer 19/ 23

40 Inversion Using Newton Iteration Choosing the Function Given f R[x] = D, want φ D[y] such that φ(f 1 ) = 0. Must be invertible Update φ (φ ) 1 without division The Function φ(y) = 1 y f φ (y) = 1 y 2 φ(y) ( φ (y) ) 1 = y + fy 2 y φ(y) ( φ (y) ) 1 = 2y fy 2 W. J. Turner Exact Arithmetic on a Computer 19/ 23

41 Inversion Using Newton Iteration Choosing the Function Given f R[x] = D, want φ D[y] such that φ(f 1 ) = 0. Must be invertible Update φ (φ ) 1 without division The Function φ(y) = 1 y f φ (y) = 1 y 2 φ(y) ( φ (y) ) 1 = y + fy 2 y φ(y) ( φ (y) ) 1 = 2y fy 2 W. J. Turner Exact Arithmetic on a Computer 19/ 23

42 Inversion Using Newton Iteration Choosing the Function Given f R[x] = D, want φ D[y] such that φ(f 1 ) = 0. Must be invertible Update φ (φ ) 1 without division The Function φ(y) = 1 y f φ (y) = 1 y 2 φ(y) ( φ (y) ) 1 = y + fy 2 y φ(y) ( φ (y) ) 1 = 2y fy 2 W. J. Turner Exact Arithmetic on a Computer 19/ 23

43 Inversion Using Newton Iteration Inversion Algorithm Require: f R[x] with f (0) = 1 and l N Ensure: g R[x] with fg 1 (mod x l ) g 0 1 r log 2 l for i = 1,..., r do g i ( 2g i 1 f gi 1) 2 rem x 2 i { truncates polynomial } end for return g r Complexity 3M(l) + l = O(M(l)) ring operations M(l) is multiplication time W. J. Turner Exact Arithmetic on a Computer 20/ 23

44 Inversion Using Newton Iteration Inversion Algorithm Require: f R[x] with f (0) = 1 and l N Ensure: g R[x] with fg 1 (mod x l ) g 0 1 r log 2 l for i = 1,..., r do g i ( 2g i 1 f gi 1) 2 rem x 2 i { truncates polynomial } end for return g r Complexity 3M(l) + l = O(M(l)) ring operations M(l) is multiplication time W. J. Turner Exact Arithmetic on a Computer 20/ 23

45 Fast Division with Remainder Fast Division Algorithm Require: a, b R[x] where b 0 is monic. Ensure: q, r R[x] such that a = qb + r and deg r < deg b if deg a < deg b then return q 0 and r a end if m deg a deg b c (rev deg b (b)) 1 mod x m+1 { Newton Iteration } q rev deg a (a) c rem x m+1 { truncates polynomial } return q rev m (q ) and r a b q Complexity 3M(m) + M(n) + O(n) ring operations deg b = n and deg a = m + n W. J. Turner Exact Arithmetic on a Computer 21/ 23

46 Fast Division with Remainder Fast Division Algorithm Require: a, b R[x] where b 0 is monic. Ensure: q, r R[x] such that a = qb + r and deg r < deg b if deg a < deg b then return q 0 and r a end if m deg a deg b c (rev deg b (b)) 1 mod x m+1 { Newton Iteration } q rev deg a (a) c rem x m+1 { truncates polynomial } return q rev m (q ) and r a b q Complexity 3M(m) + M(n) + O(n) ring operations deg b = n and deg a = m + n W. J. Turner Exact Arithmetic on a Computer 21/ 23

47 Generalized Newton Iteration Newton Iteration Require: φ D[y], p R, l N >0, g 0 R with φ(g 0 ) 0 (mod p) and φ (g 0 ) invertible modulo p, and s 0 such that s 0 φ (g 0 ) 1 (mod p) Ensure: g R with φ(g) 0 (mod p l ) and g g 0 (mod p) r log 2 l for i = 1,..., r 1 do g i (g i 1 φ(g i 1 ) s i 1 ) mod p 2i s i ( 2s i 1 φ (g i ) si 1 2 ) mod p 2 i end for return g g r 1 φ(g r 1 ) s r 1 mod p l W. J. Turner Exact Arithmetic on a Computer 22/ 23

48 Complexity Polynomial Ring (3n + 3/2)M(l) + O(nl) when D = R[x] p = x l = 2 k deg y φ = n and deg x φ < l Integers O(nM(l log p)) word operations when R = Z 0 < g 0 < p deg φ = n φ i < p l for i = 0, 1,..., n W. J. Turner Exact Arithmetic on a Computer 23/ 23

49 Complexity Polynomial Ring (3n + 3/2)M(l) + O(nl) when D = R[x] p = x l = 2 k deg y φ = n and deg x φ < l Integers O(nM(l log p)) word operations when R = Z 0 < g 0 < p deg φ = n φ i < p l for i = 0, 1,..., n W. J. Turner Exact Arithmetic on a Computer 23/ 23

Fast Polynomial Multiplication

Fast Polynomial Multiplication Fast Polynomial Multiplication Marc Moreno Maza CS 9652, October 4, 2017 Plan Primitive roots of unity The discrete Fourier transform Convolution of polynomials The fast Fourier transform Fast convolution

More information

1. Algebra 1.5. Polynomial Rings

1. Algebra 1.5. Polynomial Rings 1. ALGEBRA 19 1. Algebra 1.5. Polynomial Rings Lemma 1.5.1 Let R and S be rings with identity element. If R > 1 and S > 1, then R S contains zero divisors. Proof. The two elements (1, 0) and (0, 1) are

More information

Section III.6. Factorization in Polynomial Rings

Section III.6. Factorization in Polynomial Rings III.6. Factorization in Polynomial Rings 1 Section III.6. Factorization in Polynomial Rings Note. We push several of the results in Section III.3 (such as divisibility, irreducibility, and unique factorization)

More information

6.S897 Algebra and Computation February 27, Lecture 6

6.S897 Algebra and Computation February 27, Lecture 6 6.S897 Algebra and Computation February 7, 01 Lecture 6 Lecturer: Madhu Sudan Scribe: Mohmammad Bavarian 1 Overview Last lecture we saw how to use FFT to multiply f, g R[x] in nearly linear time. We also

More information

Computing with polynomials: Hensel constructions

Computing with polynomials: Hensel constructions Course Polynomials: Their Power and How to Use Them, JASS 07 Computing with polynomials: Hensel constructions Lukas Bulwahn March 28, 2007 Abstract To solve GCD calculations and factorization of polynomials

More information

8 Appendix: Polynomial Rings

8 Appendix: Polynomial Rings 8 Appendix: Polynomial Rings Throughout we suppose, unless otherwise specified, that R is a commutative ring. 8.1 (Largely) a reminder about polynomials A polynomial in the indeterminate X with coefficients

More information

TOWARD HIGH-PERFORMANCE POLYNOMIAL SYSTEM SOLVERS BASED ON TRIANGULAR DECOMPOSITIONS. (Spine title: Contributions to Polynomial System Solvers)

TOWARD HIGH-PERFORMANCE POLYNOMIAL SYSTEM SOLVERS BASED ON TRIANGULAR DECOMPOSITIONS. (Spine title: Contributions to Polynomial System Solvers) TOWARD HIGH-PERFORMANCE POLYNOMIAL SYSTEM SOLVERS BASED ON TRIANGULAR DECOMPOSITIONS (Spine title: Contributions to Polynomial System Solvers) (Thesis format: Monograph) by Xin Li Graduate Program in Computer

More information

Chinese Remainder Theorem

Chinese Remainder Theorem Chinese Remainder Theorem Theorem Let R be a Euclidean domain with m 1, m 2,..., m k R. If gcd(m i, m j ) = 1 for 1 i < j k then m = m 1 m 2 m k = lcm(m 1, m 2,..., m k ) and R/m = R/m 1 R/m 2 R/m k ;

More information

MATH 431 PART 2: POLYNOMIAL RINGS AND FACTORIZATION

MATH 431 PART 2: POLYNOMIAL RINGS AND FACTORIZATION MATH 431 PART 2: POLYNOMIAL RINGS AND FACTORIZATION 1. Polynomial rings (review) Definition 1. A polynomial f(x) with coefficients in a ring R is n f(x) = a i x i = a 0 + a 1 x + a 2 x 2 + + a n x n i=0

More information

Math 120 HW 9 Solutions

Math 120 HW 9 Solutions Math 120 HW 9 Solutions June 8, 2018 Question 1 Write down a ring homomorphism (no proof required) f from R = Z[ 11] = {a + b 11 a, b Z} to S = Z/35Z. The main difficulty is to find an element x Z/35Z

More information

Chapter 3. Rings. The basic commutative rings in mathematics are the integers Z, the. Examples

Chapter 3. Rings. The basic commutative rings in mathematics are the integers Z, the. Examples Chapter 3 Rings Rings are additive abelian groups with a second operation called multiplication. The connection between the two operations is provided by the distributive law. Assuming the results of Chapter

More information

Public-key Cryptography: Theory and Practice

Public-key Cryptography: Theory and Practice Public-key Cryptography Theory and Practice Department of Computer Science and Engineering Indian Institute of Technology Kharagpur Chapter 2: Mathematical Concepts Divisibility Congruence Quadratic Residues

More information

COMPUTER ARITHMETIC. 13/05/2010 cryptography - math background pp. 1 / 162

COMPUTER ARITHMETIC. 13/05/2010 cryptography - math background pp. 1 / 162 COMPUTER ARITHMETIC 13/05/2010 cryptography - math background pp. 1 / 162 RECALL OF COMPUTER ARITHMETIC computers implement some types of arithmetic for instance, addition, subtratction, multiplication

More information

Math 547, Exam 2 Information.

Math 547, Exam 2 Information. Math 547, Exam 2 Information. 3/19/10, LC 303B, 10:10-11:00. Exam 2 will be based on: Homework and textbook sections covered by lectures 2/3-3/5. (see http://www.math.sc.edu/ boylan/sccourses/547sp10/547.html)

More information

Basic Algorithms in Number Theory

Basic Algorithms in Number Theory Basic Algorithms in Number Theory Algorithmic Complexity... 1 Basic Algorithms in Number Theory Francesco Pappalardi #2 - Discrete Logs, Modular Square Roots, Polynomials, Hensel s Lemma & Chinese Remainder

More information

In-place Arithmetic for Univariate Polynomials over an Algebraic Number Field

In-place Arithmetic for Univariate Polynomials over an Algebraic Number Field In-place Arithmetic for Univariate Polynomials over an Algebraic Number Field Seyed Mohammad Mahdi Javadi 1, Michael Monagan 2 1 School of Computing Science, Simon Fraser University, Burnaby, B.C., V5A

More information

2a 2 4ac), provided there is an element r in our

2a 2 4ac), provided there is an element r in our MTH 310002 Test II Review Spring 2012 Absractions versus examples The purpose of abstraction is to reduce ideas to their essentials, uncluttered by the details of a specific situation Our lectures built

More information

CS 829 Polynomial systems: geometry and algorithms Lecture 3: Euclid, resultant and 2 2 systems Éric Schost

CS 829 Polynomial systems: geometry and algorithms Lecture 3: Euclid, resultant and 2 2 systems Éric Schost CS 829 Polynomial systems: geometry and algorithms Lecture 3: Euclid, resultant and 2 2 systems Éric Schost eschost@uwo.ca Summary In this lecture, we start actual computations (as opposed to Lectures

More information

Elliptic Curves Spring 2013 Lecture #3 02/12/2013

Elliptic Curves Spring 2013 Lecture #3 02/12/2013 18.783 Elliptic Curves Spring 2013 Lecture #3 02/12/2013 3.1 Arithmetic in finite fields To make explicit computations with elliptic curves over finite fields, we need to know how to perform arithmetic

More information

Algebra. Modular arithmetic can be handled mathematically by introducing a congruence relation on the integers described in the above example.

Algebra. Modular arithmetic can be handled mathematically by introducing a congruence relation on the integers described in the above example. Coding Theory Massoud Malek Algebra Congruence Relation The definition of a congruence depends on the type of algebraic structure under consideration Particular definitions of congruence can be made for

More information

Fast and Small: Multiplying Polynomials without Extra Space

Fast and Small: Multiplying Polynomials without Extra Space Fast and Small: Multiplying Polynomials without Extra Space Daniel S. Roche Symbolic Computation Group School of Computer Science University of Waterloo CECM Day SFU, Vancouver, 24 July 2009 Preliminaries

More information

Computing over Z, Q, K[X]

Computing over Z, Q, K[X] Computing over Z, Q, K[X] Clément PERNET M2-MIA Calcul Exact Outline Introduction Chinese Remainder Theorem Rational reconstruction Problem Statement Algorithms Applications Dense CRT codes Extension to

More information

FILTERED RINGS AND MODULES. GRADINGS AND COMPLETIONS.

FILTERED RINGS AND MODULES. GRADINGS AND COMPLETIONS. FILTERED RINGS AND MODULES. GRADINGS AND COMPLETIONS. Let A be a ring, for simplicity assumed commutative. A filtering, or filtration, of an A module M means a descending sequence of submodules M = M 0

More information

FFT-based Dense Polynomial Arithmetic on Multi-cores

FFT-based Dense Polynomial Arithmetic on Multi-cores FFT-based Dense Polynomial Arithmetic on Multi-cores Yuzhen Xie Computer Science and Artificial Intelligence Laboratory, MIT and Marc Moreno Maza Ontario Research Centre for Computer Algebra, UWO ACA 2009,

More information

Commutative Rings and Fields

Commutative Rings and Fields Commutative Rings and Fields 1-22-2017 Different algebraic systems are used in linear algebra. The most important are commutative rings with identity and fields. Definition. A ring is a set R with two

More information

Space- and Time-Efficient Polynomial Multiplication

Space- and Time-Efficient Polynomial Multiplication Space- and Time-Efficient Polynomial Multiplication Daniel S. Roche Symbolic Computation Group School of Computer Science University of Waterloo ISSAC 2009 Seoul, Korea 30 July 2009 Univariate Polynomial

More information

Towards High Performance Multivariate Factorization. Michael Monagan. This is joint work with Baris Tuncer.

Towards High Performance Multivariate Factorization. Michael Monagan. This is joint work with Baris Tuncer. Towards High Performance Multivariate Factorization Michael Monagan Center for Experimental and Constructive Mathematics Simon Fraser University British Columbia This is joint work with Baris Tuncer. The

More information

CPSC 518 Introduction to Computer Algebra Asymptotically Fast Integer Multiplication

CPSC 518 Introduction to Computer Algebra Asymptotically Fast Integer Multiplication CPSC 518 Introduction to Computer Algebra Asymptotically Fast Integer Multiplication 1 Introduction We have now seen that the Fast Fourier Transform can be applied to perform polynomial multiplication

More information

a = a i 2 i a = All such series are automatically convergent with respect to the standard norm, but note that this representation is not unique: i<0

a = a i 2 i a = All such series are automatically convergent with respect to the standard norm, but note that this representation is not unique: i<0 p-adic Numbers K. Sutner v0.4 1 Modular Arithmetic rings integral domains integers gcd, extended Euclidean algorithm factorization modular numbers add Lemma 1.1 (Chinese Remainder Theorem) Let a b. Then

More information

Chapter 1 Mathematical Preliminaries and Error Analysis

Chapter 1 Mathematical Preliminaries and Error Analysis Numerical Analysis (Math 3313) 2019-2018 Chapter 1 Mathematical Preliminaries and Error Analysis Intended learning outcomes: Upon successful completion of this chapter, a student will be able to (1) list

More information

NOTES ON FINITE FIELDS

NOTES ON FINITE FIELDS NOTES ON FINITE FIELDS AARON LANDESMAN CONTENTS 1. Introduction to finite fields 2 2. Definition and constructions of fields 3 2.1. The definition of a field 3 2.2. Constructing field extensions by adjoining

More information

5.1. Data representation

5.1. Data representation 5. Computer Algebra Computer systems doing various mathematical computations are inevitable in modern science and technology. We are able to compute the orbits of planets and stars, to command nuclear

More information

Algebra Review 2. 1 Fields. A field is an extension of the concept of a group.

Algebra Review 2. 1 Fields. A field is an extension of the concept of a group. Algebra Review 2 1 Fields A field is an extension of the concept of a group. Definition 1. A field (F, +,, 0 F, 1 F ) is a set F together with two binary operations (+, ) on F such that the following conditions

More information

CS 4424 GCD, XGCD

CS 4424 GCD, XGCD CS 4424 GCD, XGCD eschost@uwo.ca GCD of polynomials First definition Let A and B be in k[x]. k[x] is the ring of polynomials with coefficients in k A Greatest Common Divisor of A and B is a polynomial

More information

An introduction to the algorithmic of p-adic numbers

An introduction to the algorithmic of p-adic numbers An introduction to the algorithmic of p-adic numbers David Lubicz 1 1 Universté de Rennes 1, Campus de Beaulieu, 35042 Rennes Cedex, France Outline Introduction 1 Introduction 2 3 4 5 6 7 8 When do we

More information

Introduction to finite fields

Introduction to finite fields Chapter 7 Introduction to finite fields This chapter provides an introduction to several kinds of abstract algebraic structures, particularly groups, fields, and polynomials. Our primary interest is in

More information

Chapter 4. Greatest common divisors of polynomials. 4.1 Polynomial remainder sequences

Chapter 4. Greatest common divisors of polynomials. 4.1 Polynomial remainder sequences Chapter 4 Greatest common divisors of polynomials 4.1 Polynomial remainder sequences If K is a field, then K[x] is a Euclidean domain, so gcd(f, g) for f, g K[x] can be computed by the Euclidean algorithm.

More information

Mathematics and Algorithms for Computer Algebra. 7: Introduction to modular and p-adic methods

Mathematics and Algorithms for Computer Algebra. 7: Introduction to modular and p-adic methods Mathematics and Algorithms for Computer Algebra Part 1 c 1992 Dr Francis J. Wright CBPF, Rio de Janeiro July 9, 2003 7: Introduction to modular and p-adic methods Modular and p-adic methods are often presented

More information

PUTTING FÜRER ALGORITHM INTO PRACTICE WITH THE BPAS LIBRARY. (Thesis format: Monograph) Linxiao Wang. Graduate Program in Computer Science

PUTTING FÜRER ALGORITHM INTO PRACTICE WITH THE BPAS LIBRARY. (Thesis format: Monograph) Linxiao Wang. Graduate Program in Computer Science PUTTING FÜRER ALGORITHM INTO PRACTICE WITH THE BPAS LIBRARY. (Thesis format: Monograph) by Linxiao Wang Graduate Program in Computer Science A thesis submitted in partial fulfillment of the requirements

More information

MA257: INTRODUCTION TO NUMBER THEORY LECTURE NOTES

MA257: INTRODUCTION TO NUMBER THEORY LECTURE NOTES MA257: INTRODUCTION TO NUMBER THEORY LECTURE NOTES 2018 57 5. p-adic Numbers 5.1. Motivating examples. We all know that 2 is irrational, so that 2 is not a square in the rational field Q, but that we can

More information

g(x) = 1 1 x = 1 + x + x2 + x 3 + is not a polynomial, since it doesn t have finite degree. g(x) is an example of a power series.

g(x) = 1 1 x = 1 + x + x2 + x 3 + is not a polynomial, since it doesn t have finite degree. g(x) is an example of a power series. 6 Polynomial Rings We introduce a class of rings called the polynomial rings, describing computation, factorization and divisibility in such rings For the case where the coefficients come from an integral

More information

Finite Fields: An introduction through exercises Jonathan Buss Spring 2014

Finite Fields: An introduction through exercises Jonathan Buss Spring 2014 Finite Fields: An introduction through exercises Jonathan Buss Spring 2014 A typical course in abstract algebra starts with groups, and then moves on to rings, vector spaces, fields, etc. This sequence

More information

Further linear algebra. Chapter II. Polynomials.

Further linear algebra. Chapter II. Polynomials. Further linear algebra. Chapter II. Polynomials. Andrei Yafaev 1 Definitions. In this chapter we consider a field k. Recall that examples of felds include Q, R, C, F p where p is prime. A polynomial is

More information

Homework 7 solutions M328K by Mark Lindberg/Marie-Amelie Lawn

Homework 7 solutions M328K by Mark Lindberg/Marie-Amelie Lawn Homework 7 solutions M328K by Mark Lindberg/Marie-Amelie Lawn Problem 1: 4.4 # 2:x 3 + 8x 2 x 1 0 (mod 1331). a) x 3 + 8x 2 x 1 0 (mod 11). This does not break down, so trial and error gives: x = 0 : f(0)

More information

Polynomial Rings. i=0

Polynomial Rings. i=0 Polynomial Rings 4-15-2018 If R is a ring, the ring of polynomials in x with coefficients in R is denoted R[x]. It consists of all formal sums a i x i. Here a i = 0 for all but finitely many values of

More information

MEMORIAL UNIVERSITY OF NEWFOUNDLAND

MEMORIAL UNIVERSITY OF NEWFOUNDLAND MEMORIAL UNIVERSITY OF NEWFOUNDLAND DEPARTMENT OF MATHEMATICS AND STATISTICS Section 5. Math 090 Fall 009 SOLUTIONS. a) Using long division of polynomials, we have x + x x x + ) x 4 4x + x + 0x x 4 6x

More information

Rings If R is a commutative ring, a zero divisor is a nonzero element x such that xy = 0 for some nonzero element y R.

Rings If R is a commutative ring, a zero divisor is a nonzero element x such that xy = 0 for some nonzero element y R. Rings 10-26-2008 A ring is an abelian group R with binary operation + ( addition ), together with a second binary operation ( multiplication ). Multiplication must be associative, and must distribute over

More information

Definition For a set F, a polynomial over F with variable x is of the form

Definition For a set F, a polynomial over F with variable x is of the form *6. Polynomials Definition For a set F, a polynomial over F with variable x is of the form a n x n + a n 1 x n 1 + a n 2 x n 2 +... + a 1 x + a 0, where a n, a n 1,..., a 1, a 0 F. The a i, 0 i n are the

More information

Modular Algorithms for Computing Minimal Associated Primes and Radicals of Polynomial Ideals. Masayuki Noro. Toru Aoyama

Modular Algorithms for Computing Minimal Associated Primes and Radicals of Polynomial Ideals. Masayuki Noro. Toru Aoyama Modular Algorithms for Computing Minimal Associated Primes and Radicals of Polynomial Ideals Toru Aoyama Kobe University Department of Mathematics Graduate school of Science Rikkyo University Department

More information

Integer multiplication and the truncated product problem

Integer multiplication and the truncated product problem Integer multiplication and the truncated product problem David Harvey Arithmetic Geometry, Number Theory, and Computation MIT, August 2018 University of New South Wales Political update from Australia

More information

EXTRA CREDIT FOR MATH 39

EXTRA CREDIT FOR MATH 39 EXTRA CREDIT FOR MATH 39 This is the second, theoretical, part of an extra credit homework. This homework in not compulsory. If you do it, you can get up to 6 points (3 points for each part) of extra credit

More information

Continuing discussion of CRC s, especially looking at two-bit errors

Continuing discussion of CRC s, especially looking at two-bit errors Continuing discussion of CRC s, especially looking at two-bit errors The definition of primitive binary polynomials Brute force checking for primitivity A theorem giving a better test for primitivity Fast

More information

Factoring univariate polynomials over the rationals

Factoring univariate polynomials over the rationals Factoring univariate polynomials over the rationals Tommy Hofmann TU Kaiserslautern November 21, 2017 Tommy Hofmann Factoring polynomials over the rationals November 21, 2017 1 / 31 Factoring univariate

More information

Modern Computer Algebra

Modern Computer Algebra Modern Computer Algebra JOACHIM VON ZUR GATHEN and JURGEN GERHARD Universitat Paderborn CAMBRIDGE UNIVERSITY PRESS Contents Introduction 1 1 Cyclohexane, cryptography, codes, and computer algebra 9 1.1

More information

E.J. Barbeau. Polynomials. With 36 Illustrations. Springer

E.J. Barbeau. Polynomials. With 36 Illustrations. Springer E.J. Barbeau Polynomials With 36 Illustrations Springer Contents Preface Acknowledgment of Problem Sources vii xiii 1 Fundamentals 1 /l.l The Anatomy of a Polynomial of a Single Variable 1 1.1.5 Multiplication

More information

Elementary Number Theory Review. Franz Luef

Elementary Number Theory Review. Franz Luef Elementary Number Theory Review Principle of Induction Principle of Induction Suppose we have a sequence of mathematical statements P(1), P(2),... such that (a) P(1) is true. (b) If P(k) is true, then

More information

An Approach to Hensel s Lemma

An Approach to Hensel s Lemma Irish Math. Soc. Bulletin 47 (2001), 15 21 15 An Approach to Hensel s Lemma gary mcguire Abstract. Hensel s Lemma is an important tool in many ways. One application is in factoring polynomials over Z.

More information

8 Primes and Modular Arithmetic

8 Primes and Modular Arithmetic 8 Primes and Modular Arithmetic 8.1 Primes and Factors Over two millennia ago already, people all over the world were considering the properties of numbers. One of the simplest concepts is prime numbers.

More information

Optimizing and Parallelizing Brown s Modular GCD Algorithm

Optimizing and Parallelizing Brown s Modular GCD Algorithm Optimizing and Parallelizing Brown s Modular GCD Algorithm Matthew Gibson, Michael Monagan October 7, 2014 1 Introduction Consider the multivariate polynomial problem over the integers; that is, Gcd(A,

More information

Fast algorithms for polynomials and matrices Part 2: polynomial multiplication

Fast algorithms for polynomials and matrices Part 2: polynomial multiplication Fast algorithms for polynomials and matrices Part 2: polynomial multiplication by Grégoire Lecerf Computer Science Laboratory & CNRS École polytechnique 91128 Palaiseau Cedex France 1 Notation In this

More information

Groups, Rings, and Finite Fields. Andreas Klappenecker. September 12, 2002

Groups, Rings, and Finite Fields. Andreas Klappenecker. September 12, 2002 Background on Groups, Rings, and Finite Fields Andreas Klappenecker September 12, 2002 A thorough understanding of the Agrawal, Kayal, and Saxena primality test requires some tools from algebra and elementary

More information

LECTURE NOTES IN CRYPTOGRAPHY

LECTURE NOTES IN CRYPTOGRAPHY 1 LECTURE NOTES IN CRYPTOGRAPHY Thomas Johansson 2005/2006 c Thomas Johansson 2006 2 Chapter 1 Abstract algebra and Number theory Before we start the treatment of cryptography we need to review some basic

More information

Inverting integer and polynomial matrices. Jo60. Arne Storjohann University of Waterloo

Inverting integer and polynomial matrices. Jo60. Arne Storjohann University of Waterloo Inverting integer and polynomial matrices Jo60 Arne Storjohann University of Waterloo Integer Matrix Inverse Input: An n n matrix A filled with entries of size d digits. Output: The matrix inverse A 1.

More information

Profinite Groups. Hendrik Lenstra. 1. Introduction

Profinite Groups. Hendrik Lenstra. 1. Introduction Profinite Groups Hendrik Lenstra 1. Introduction We begin informally with a motivation, relating profinite groups to the p-adic numbers. Let p be a prime number, and let Z p denote the ring of p-adic integers,

More information

Towards High Performance Multivariate Factorization. Michael Monagan. This is joint work with Baris Tuncer.

Towards High Performance Multivariate Factorization. Michael Monagan. This is joint work with Baris Tuncer. Towards High Performance Multivariate Factorization Michael Monagan Center for Experimental and Constructive Mathematics Simon Fraser University British Columbia This is joint work with Baris Tuncer. To

More information

Semester Review Packet

Semester Review Packet MATH 110: College Algebra Instructor: Reyes Semester Review Packet Remarks: This semester we have made a very detailed study of four classes of functions: Polynomial functions Linear Quadratic Higher degree

More information

ax b mod m. has a solution if and only if d b. In this case, there is one solution, call it x 0, to the equation and there are d solutions x m d

ax b mod m. has a solution if and only if d b. In this case, there is one solution, call it x 0, to the equation and there are d solutions x m d 10. Linear congruences In general we are going to be interested in the problem of solving polynomial equations modulo an integer m. Following Gauss, we can work in the ring Z m and find all solutions to

More information

Polynomial Rings : Linear Algebra Notes

Polynomial Rings : Linear Algebra Notes Polynomial Rings : Linear Algebra Notes Satya Mandal September 27, 2005 1 Section 1: Basics Definition 1.1 A nonempty set R is said to be a ring if the following are satisfied: 1. R has two binary operations,

More information

Polynomials. Chapter 4

Polynomials. Chapter 4 Chapter 4 Polynomials In this Chapter we shall see that everything we did with integers in the last Chapter we can also do with polynomials. Fix a field F (e.g. F = Q, R, C or Z/(p) for a prime p). Notation

More information

CPSC 518 Introduction to Computer Algebra Schönhage and Strassen s Algorithm for Integer Multiplication

CPSC 518 Introduction to Computer Algebra Schönhage and Strassen s Algorithm for Integer Multiplication CPSC 518 Introduction to Computer Algebra Schönhage and Strassen s Algorithm for Integer Multiplication March, 2006 1 Introduction We have now seen that the Fast Fourier Transform can be applied to perform

More information

MATH 433 Applied Algebra Lecture 4: Modular arithmetic (continued). Linear congruences.

MATH 433 Applied Algebra Lecture 4: Modular arithmetic (continued). Linear congruences. MATH 433 Applied Algebra Lecture 4: Modular arithmetic (continued). Linear congruences. Congruences Let n be a postive integer. The integers a and b are called congruent modulo n if they have the same

More information

Computer Algebra: General Principles

Computer Algebra: General Principles Computer Algebra: General Principles For article on related subject see SYMBOL MANIPULATION. Computer algebra is a branch of scientific computation. There are several characteristic features that distinguish

More information

Scientific Computing: An Introductory Survey

Scientific Computing: An Introductory Survey Scientific Computing: An Introductory Survey Chapter 12 Prof. Michael T. Heath Department of Computer Science University of Illinois at Urbana-Champaign Copyright c 2002. Reproduction permitted for noncommercial,

More information

CPSC 467: Cryptography and Computer Security

CPSC 467: Cryptography and Computer Security CPSC 467: Cryptography and Computer Security Michael J. Fischer Lecture 9 September 30, 2015 CPSC 467, Lecture 9 1/47 Fast Exponentiation Algorithms Number Theory Needed for RSA Elementary Number Theory

More information

A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties:

A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties: Byte multiplication 1 Field arithmetic A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties: F is an abelian group under addition, meaning - F is closed under

More information

Implementation of the DKSS Algorithm for Multiplication of Large Numbers

Implementation of the DKSS Algorithm for Multiplication of Large Numbers Implementation of the DKSS Algorithm for Multiplication of Large Numbers Christoph Lüders Universität Bonn The International Symposium on Symbolic and Algebraic Computation, July 6 9, 2015, Bath, United

More information

1/30: Polynomials over Z/n.

1/30: Polynomials over Z/n. 1/30: Polynomials over Z/n. Last time to establish the existence of primitive roots we rely on the following key lemma: Lemma 6.1. Let s > 0 be an integer with s p 1, then we have #{α Z/pZ α s = 1} = s.

More information

The Berlekamp algorithm

The Berlekamp algorithm The Berlekamp algorithm John Kerl University of Arizona Department of Mathematics 29 Integration Workshop August 6, 29 Abstract Integer factorization is a Hard Problem. Some cryptosystems, such as RSA,

More information

Rings in Coding Theory

Rings in Coding Theory Rings in Coding Theory Steven T. Dougherty July 3, 2013 Cyclic Codes Cyclic Codes were first studied by Prange in 1957. Prange, E. Cyclic error-correcting codes in two symbols. Technical Note TN-57-103,

More information

Prime Fields 04/05/2007. Hybrid system simulator for ODE 1. Galois field. The issue. Prime fields: naïve implementation

Prime Fields 04/05/2007. Hybrid system simulator for ODE 1. Galois field. The issue. Prime fields: naïve implementation Galois field The issue Topic: finite fields with word size cardinality Field: 4 arithmetic operators to implement (+, -, *, /) We will focus on axpy: r = a x + y (operation mainly used in linear algebra

More information

Basic elements of number theory

Basic elements of number theory Cryptography Basic elements of number theory Marius Zimand 1 Divisibility, prime numbers By default all the variables, such as a, b, k, etc., denote integer numbers. Divisibility a 0 divides b if b = a

More information

Basic elements of number theory

Basic elements of number theory Cryptography Basic elements of number theory Marius Zimand By default all the variables, such as a, b, k, etc., denote integer numbers. Divisibility a 0 divides b if b = a k for some integer k. Notation

More information

Resolving zero-divisors using Hensel lifting

Resolving zero-divisors using Hensel lifting Resolving zero-divisors using Hensel lifting John Kluesner and Michael Monagan Department of Mathematics, Simon Fraser University Burnaby, British Columbia, V5A-1S6, Canada jkluesne@sfu.ca mmonagan@sfu.ca

More information

Chapter 1 Divide and Conquer Polynomial Multiplication Algorithm Theory WS 2015/16 Fabian Kuhn

Chapter 1 Divide and Conquer Polynomial Multiplication Algorithm Theory WS 2015/16 Fabian Kuhn Chapter 1 Divide and Conquer Polynomial Multiplication Algorithm Theory WS 2015/16 Fabian Kuhn Formulation of the D&C principle Divide-and-conquer method for solving a problem instance of size n: 1. Divide

More information

Introduction to Information Security

Introduction to Information Security Introduction to Information Security Lecture 5: Number Theory 007. 6. Prof. Byoungcheon Lee sultan (at) joongbu. ac. kr Information and Communications University Contents 1. Number Theory Divisibility

More information

Old and new algorithms for computing Bernoulli numbers

Old and new algorithms for computing Bernoulli numbers Old and new algorithms for computing Bernoulli numbers University of New South Wales 25th September 2012, University of Ballarat Bernoulli numbers Rational numbers B 0, B 1,... defined by: x e x 1 = n

More information

Objective Type Questions

Objective Type Questions DISTANCE EDUCATION, UNIVERSITY OF CALICUT NUMBER THEORY AND LINEARALGEBRA Objective Type Questions Shyama M.P. Assistant Professor Department of Mathematics Malabar Christian College, Calicut 7/3/2014

More information

CHAPTER I. Rings. Definition A ring R is a set with two binary operations, addition + and

CHAPTER I. Rings. Definition A ring R is a set with two binary operations, addition + and CHAPTER I Rings 1.1 Definitions and Examples Definition 1.1.1. A ring R is a set with two binary operations, addition + and multiplication satisfying the following conditions for all a, b, c in R : (i)

More information

ALGEBRA AND ALGEBRAIC COMPUTING ELEMENTS OF. John D. Lipson. Addison-Wesley Publishing Company, Inc.

ALGEBRA AND ALGEBRAIC COMPUTING ELEMENTS OF. John D. Lipson. Addison-Wesley Publishing Company, Inc. ELEMENTS OF ALGEBRA AND ALGEBRAIC COMPUTING John D. Lipson University of Toronto PRO Addison-Wesley Publishing Company, Inc. Redwood City, California Menlo Park, California Reading, Massachusetts Amsterdam

More information

Coding Theory ( Mathematical Background I)

Coding Theory ( Mathematical Background I) N.L.Manev, Lectures on Coding Theory (Maths I) p. 1/18 Coding Theory ( Mathematical Background I) Lector: Nikolai L. Manev Institute of Mathematics and Informatics, Sofia, Bulgaria N.L.Manev, Lectures

More information

Faster integer multiplication using short lattice vectors

Faster integer multiplication using short lattice vectors Faster integer multiplication using short lattice vectors David Harvey and Joris van der Hoeven ANTS XIII, University of Wisconsin, Madison, July 2018 University of New South Wales / CNRS, École Polytechnique

More information

Overview of Computer Algebra

Overview of Computer Algebra Overview of Computer Algebra http://cocoa.dima.unige.it/ J. Abbott Universität Kassel J. Abbott Computer Algebra Basics Manchester, July 2018 1 / 12 Intro Characteristics of Computer Algebra or Symbolic

More information

5 Keeping the Data Small: Modular Methods

5 Keeping the Data Small: Modular Methods 5 Keeping the Data Small: Modular Methods 5.1 Modular gcd of Polynomials in Z[x] First of all we note the following important fact: Lemma 5.1 (Gauss) For any f, g Z[x] (not both zero) we have cont(fg)

More information

Lecture Notes Math 371: Algebra (Fall 2006) by Nathanael Leedom Ackerman

Lecture Notes Math 371: Algebra (Fall 2006) by Nathanael Leedom Ackerman Lecture Notes Math 371: Algebra (Fall 2006) by Nathanael Leedom Ackerman October 31, 2006 TALK SLOWLY AND WRITE NEATLY!! 1 0.1 Symbolic Adjunction of Roots When dealing with subfields of C it is easy to

More information

An Introduction to Proof-based Mathematics Harvard/MIT ESP: Summer HSSP Isabel Vogt

An Introduction to Proof-based Mathematics Harvard/MIT ESP: Summer HSSP Isabel Vogt An Introduction to Proof-based Mathematics Harvard/MIT ESP: Summer HSSP Isabel Vogt Class Objectives Field Axioms Finite Fields Field Extensions Class 5: Fields and Field Extensions 1 1. Axioms for a field

More information

Outline. We will now investigate the structure of this important set.

Outline. We will now investigate the structure of this important set. The Reals Outline As we have seen, the set of real numbers, R, has cardinality c. This doesn't tell us very much about the reals, since there are many sets with this cardinality and cardinality doesn't

More information

RINGS: SUMMARY OF MATERIAL

RINGS: SUMMARY OF MATERIAL RINGS: SUMMARY OF MATERIAL BRIAN OSSERMAN This is a summary of terms used and main results proved in the subject of rings, from Chapters 11-13 of Artin. Definitions not included here may be considered

More information

P-adic numbers. Rich Schwartz. October 24, 2014

P-adic numbers. Rich Schwartz. October 24, 2014 P-adic numbers Rich Schwartz October 24, 2014 1 The Arithmetic of Remainders In class we have talked a fair amount about doing arithmetic with remainders and now I m going to explain what it means in a

More information

Modular Methods for Solving Nonlinear Polynomial Systems

Modular Methods for Solving Nonlinear Polynomial Systems Modular Methods for Solving Nonlinear Polynomial Systems (Thesis format: Monograph) by Raqeeb Rasheed Graduate Program in Computer Science A thesis submitted in partial fulfillment of the requirements

More information

Chapter 4 Mathematics of Cryptography

Chapter 4 Mathematics of Cryptography Chapter 4 Mathematics of Cryptography Part II: Algebraic Structures Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 4.1 Chapter 4 Objectives To review the concept

More information