Fast reversion of formal power series
|
|
- Elizabeth Carpenter
- 6 years ago
- Views:
Transcription
1 Fast reversion of formal power series Fredrik Johansson LFANT, INRIA Bordeaux RAIM, , Banyuls-sur-mer 1 / 30
2 Reversion of power series F = exp(x) 1 = x + x 2 2! + x 3 3! + x 4 G = log(1 + x) = x x x 3 3 x 4 4! F (G(x)) = G(F (x)) = x, G = F 1 and F = G 1 Applications: Combinatorics, recurrences (example: counting binary trees) Numerical approximation of F 1 Asymptotic analysis 2 / 30
3 Operations in R[[x]]/ x n n 1 F = F (x) = f k x k, Addition k=0 Multiplication [x k ]F (x) = f k R F + G = n 1 k=0 (f k + g k )x k FG = n 1 k=0 ( k i=0 f ig k i ) x k Reciprocal If f 0 is a unit, find G such that FG = 1 Composition Reversion If g 0 = 0, F (G) = n 1 k=0 f kg k If f 0 = 0 and f 1 is a unit, find G s.t. F (G) = x 3 / 30
4 Computational complexity Counting operations in the base ring R. M(n): multiplying two length-n polynomials Classical M(n) = O(n 2 ) Karatsuba M(n) = O(n log 2 (3) ) = O(n 1.59 ) Fast Fourier Transform M(n) = O(n log 1+o(1) n) = O(n 1+o(1) ) MM(n) = O(n ω ): multiplying two n n matrices Classical MM(n) = O(n 3 ) Strassen MM(n) = O(n log 2 (7) ) = O(n 2.81 ) Coppersmith-Winograd-Le Gall MM(n) = O(n ) 4 / 30
5 Newton iteration for power series If ϕ(g k ) = 0 mod x n, then (under natural assumptions) ϕ(g k+1 ) = 0 mod x 2n, G k+1 = G k ϕ(g k) ϕ (G k ) O(M(n)) computation of 1/F : take ϕ(g) = 1 G F, giving: G k+1 = 2G k FG 2 k. 5 / 30
6 Reversion using Newton iteration Given F = f 0 + f 1 x +... with f 0 = 0 and f 1 invertible. Take ϕ(g) = F (G) x, giving: G k+1 = G k F (G) x F. (G) Brent and Kung, 1978: up to constant factors: composition reversion 6 / 30
7 Fast composition: elementary functions Assume that 1, 2,..., n 1 are invertible in R. n 2 F = (k + 1)f k+1 x k, k=0 log(1 + F ) = n 1 ( ) 1 F = f k 1 x k k k=1 F 1 + F, atan(f ) = F 1 + F 2 Newton iteration: log exp, atan tan. sin, cos, sinh, cosh, asin... using algebraic transformations. Cost: O(M(n)) = O(n 1+o(1) ). Generalization: differential equations (hypergeometric,...) 7 / 30
8 Composition of general power series Horner s rule F (G) = (... (f n 1 G + f n 2 ) G f 1 ) G + f 0 Complexity: O(nM(n)) Brent-Kung 2.1: baby-step, giant-step version of Horner s rule Complexity: O(n 1/2 M(n) + n 1/2 MM(n 1/2 )) Brent-Kung 2.2: divide-and-conquer Taylor expansion Complexity: O((n log n) 1/2 M(n)) 8 / 30
9 Brent-Kung algorithm 2.1 Example with n = 9, m = n = 3 Computing F (G) where F = f 0 + f 1 x f 8 x 8 (f 0 + f 1 G + f 2 G 2 ) + (f 3 + f 4 G + f 5 G 2 )G 3 + (f 6 + f 7 G + f 8 G 2 )G 6 (m m) (m m 2 ) matrix multiplication: f 0 f 1 f 2 1 f 3 f 4 f 5 G f 6 f 7 f 8 G 2 Final combination using Horner s rule. 9 / 30
10 Complexity of composition algorithms Horner s rule: O(nM(n)) BK 2.1: O(n 1/2 M(n) + n 1/2 MM(n 1/2 )) BK 2.2: O((n log n) 1/2 M(n)) = O(n 3/2+o(1) ) M(n) MM(n) Horner BK 2.1 BK 2.2 n 2 n 3 n 3 n 2.5 n 2.5 log 0.5 n n 1.59 n 3 n 2.59 n 2.09 n 2.09 log 0.5 n n log n n 3 n 2 log n n 2 n 1.5 log 1.5 n n log n n n 2 log n n n 1.5 log 1.5 n (n log n) (n 2 ) (n 2 log n) (n 1.5 log n) (n 1.5 log 1.5 n) BK 2.1 wins for small n, BK 2.2 wins for large n BK 2.1 wins with hypothetical O(n 2 ) matrix multiplication 10 / 30
11 The Lagrange inversion theorem The coefficients of F 1 are given by [x k ]F 1 = 1 ( x ) k k [x k 1 ]. F O(nM(n)) algorithm: compute H = x/f using Newton iteration for the reciprocal, then compute H, H 2, H 3,..., H n 1 Better than classical algorithms (O(n 3 )) Similar to Newton iteration + Horner s rule Worse than Newton iteration + BK2.1 or BK / 30
12 Fast Lagrange inversion We can extract a single coefficient in H a+b = H a H b using O(n) operations: [x k ]H a+b = k ( [x i ]H a) ([x k i ]H b) i=0 Compute H, H 2,..., H m 1, then H m, H 2m, H 3m,..., H n/m m. Choose m n need O( n) polynomial multiplications, plus O(n 2 ) coefficient operations. 12 / 30
13 Fast Lagrange inversion, first version 1: m n 2: H x/f 3: for 1 i < m do 4: H i+1 H i H 5: b i 1 i [x i 1 ]H i 6: end for 7: T H m 8: for i = m, 2m, 3m,..., lm < n do 9: b i 1 i [x i 1 ]T 10: for 1 j < m while i + j < n do 11: b i+j 1 i+j 12: end for 13: T T H m i+j 1 k=0 ([x k ]T ) ([x i+j k 1 ]H j ) 14: end for 15: return b 1 x + b 2 x b n 1 x n 1 13 / 30
14 Using matrix multiplication Example: n = 8, m = 8 1 = 3. We want the coefficients b 1, b 2,..., b 7 of 1, x,..., x 6 in the respective powers of H. h k,i = [x i ]H k h 0,2 h 0,1 h 0, A = h 3,5 h 3,4 h 3,3 h 3,2 h 3,1 h 3, h 6,6 h 6,5 h 6,4 h 6,3 h 6,2 h 6,1 h 6,0 0 0 h 1,0 h 1,1 h 1,2 h 1,3 h 1,4 h 1,5 h 1,6 B = 0 h 2,0 h 2,1 h 2,2 h 2,3 h 2,4 h 2,5 h 2,6 h 3,0 h 3,1 h 3,2 h 3,3 h 3,4 h 3,5 h 3,6 b 1 b 2 b 3 AB T = b 4 b 5 b 6 b 7 14 / 30
15 Fast Lagrange inversion, matrix version 1: m n 1 2: H x/f 3: {Assemble m m 2 matrices B and A from H, H 2,..., H m and H m, H 2m, H 3m,...} 4: for 1 i m, 1 j m 2 do 5: B i,j [x i+j m 1 ] H i 6: A i,j [x im j ] H (i 1)m 7: end for 8: C AB T 9: for 1 i < n do 10: b i C i /i (C i is the ith entry of C read rowwise) 11: end for 12: return b 1 x + b 2 x b n 1 x n 1 15 / 30
16 Comparison with BK 2.1 Let m = n. Fast Lagrange inversion for reversion: 1. 2m + O(1) polynomial multiplications 2. One (m m 2 ) times (m 2 m) matrix multiplication 3. O(n) additional operations Fast Horner s rule (BK 2.1) for composition: 1. m polynomial multiplications, each with cost M(n) 2. One (m m) times (m m 2 ) matrix multiplication 3. m polynomial multiplications and additions Both O(n 1/2 (M(n) + MM(n 1/2 ))), same constant factor. 16 / 30
17 Speedup by avoiding Newton iteration If composition costs C(n) cn r, reversion via Newton costs ( ) 2 C(n) + C(n/2) + C(n/4) +... = cn r r 2 r 1 speedup r Classical polynomial multiplication: 4 31 (8 + 2) FFT polynomial multiplication, classical matrix multiplication: 4/3 17 / 30
18 Faster matrix multiplication Brent-Kung 2.1: Fast Lagrange inversion: = = Can we exploit the structure of A when ω < 3? 18 / 30
19 Faster matrix multiplication, first algorithm Decompose each m m block of A into (m/k) (m/k) blocks. Asymptotic speedup s: s = m ω+1 ( ) m k=1 k m k+1 k ( ) 2 m ω > k 1 k=0 2k 1 2 kω = ω > 1 19 / 30
20 Faster matrix multiplication, second algorithm Write AB T = (AP)(P 1 B T ) where P is a permutation matrix that makes each m m block in A lower triangular. Recursive triangular multiplication: R(k) = 4R(k/2) + 2(k/2) ω + O(k 2 ) Speedup: s = 2 ω 1 2. Note: s > 1 when ω > log / 30
21 Matrix multiplication speedup Speedup Alg.1 Alg ω Crossover at ω = 1 + log 2 (2 + 2) s = 2 with classical matrix multiplication (ω = 3) s = 1.5 with Strassen multiplication s = with Coppersmith-Winograd-Le Gall 21 / 30
22 Using fast rectangular matrix multiplication MM(x, y, z): (x y) by (y z) matrix multiplication Huang and Pan (1998): MM(m, m, m 2 ) = O(n ) < mmm(m, m, m) = O(n ) By a transposition argument, MM(m, m 2, m) = (1 + o(1))mm(m, m, m 2 ) Open problem: can we get a speedup > 1? 22 / 30
23 Total speedup Theoretical speedup of fast Lagrange inversion over BK 2.1 by both avoiding Newton iteration and speeding up matrix multiplication. Dominant operation Complexity Newton Matrix Total Polynomial, classical O(n 5/2 ) Polynomial, Karatsuba O(n 1/2+log 2 3 ) Matrix, classical O(n 2 ) Matrix, Strassen O(n (1+log 2 7)/2 ) Matrix, Cop.-Win.-LG O(n ) Matrix, Huang-Pan O(n ) ? 1.458? (Polynomial, FFT) O(n 3/2 log 1+o(1) n) / 30
24 Implementation Composition and reversion implemented in FLINT: Z/pZ, p < 2 64 Z Q In Arb (interval coefficients): R C 24 / 30
25 Reversion over Z/pZ (p = ) n Lagrange BK 2.1 BK 2.2 Fast Lagrange (8%) (20%) (28%) Time in seconds. (Relative time spent on matrix multiplication.) 25 / 30
26 Reversion over Z/pZ (p = ) Relative time Lagrange BK 2.2 BK 2.1 Fast Lagrange n 26 / 30
27 Reversion over Z F 1 = k 1 k!x k, F 2 = x, F 3 = x + x 2 1 4x 1 + x + x 2 n BK 2.1 Fast Lagrange F 1 F 2 F 3 F 1 F 2 F Time in seconds. 27 / 30
28 Reversion over Q F 1 = exp(x) 1, F 2 = x exp(x), F 3 = 3x(1 x 2 ) 2(1 x + x 2 ) 2 n BK 2.1 Fast Lagrange F 1 F 2 F 3 F 1 F 2 F Time in seconds. 28 / 30
29 Reversion over R F 1 = exp(x) 1, F 2 = log(1 + x), F 3 = Γ(1 + x) 1 n BK 2.1 Fast Lagrange F 1 F 2 F 3 F 1 F 2 F Precision doubled until the coefficient of x n 1 is a precise interval. Time in seconds. 29 / 30
30 Conclusion and questions Reversion algorithm analogous to BK 2.1, avoiding Newton iteration Usually the fastest algorithm for reversion in practice. Is there a Newton-free analog of BK 2.2 for reversion? Can more be said about the structured matrix products? Can denominators be handled better? Numerical stability? Note: the algorithm has been published in FJ, A fast algorithm for reversion of power series, Math. Comp. 84, , Some more comments in my PhD thesis. 30 / 30
Fast reversion of power series
Fast reversion of power series Fredrik Johansson November 2011 Overview Fast power series arithmetic Fast composition and reversion (Brent and Kung, 1978) A new algorithm for reversion Implementation results
More informationCS 4424 Matrix multiplication
CS 4424 Matrix multiplication 1 Reminder: matrix multiplication Matrix-matrix product. Starting from a 1,1 a 1,n A =.. and B = a n,1 a n,n b 1,1 b 1,n.., b n,1 b n,n we get AB by multiplying A by all columns
More informationIntroduction to Algorithms
Lecture 1 Introduction to Algorithms 1.1 Overview The purpose of this lecture is to give a brief overview of the topic of Algorithms and the kind of thinking it involves: why we focus on the subjects that
More informationFast 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 informationThree Ways to Test Irreducibility
Three Ways to Test Irreducibility Richard P. Brent Australian National University joint work with Paul Zimmermann INRIA, Nancy France 12 Feb 2009 Outline Polynomials over finite fields Irreducibility criteria
More informationCSE 548: Analysis of Algorithms. Lecture 4 ( Divide-and-Conquer Algorithms: Polynomial Multiplication )
CSE 548: Analysis of Algorithms Lecture 4 ( Divide-and-Conquer Algorithms: Polynomial Multiplication ) Rezaul A. Chowdhury Department of Computer Science SUNY Stony Brook Spring 2015 Coefficient Representation
More informationFast Computation of Power Series Solutions of Systems of Differential Equations
Fast Computation of Power Series Solutions of Systems of Differential Equations Bruno.Salvy@inria.fr Algorithms Project, Inria Joint work with A. Bostan, F. Chyzak, F. Ollivier, É. Schost, A. Sedoglavic
More informationThree Ways to Test Irreducibility
Outline Three Ways to Test Irreducibility Richard P. Brent Australian National University joint work with Paul Zimmermann INRIA, Nancy France 8 Dec 2008 Polynomials over finite fields Irreducibility criteria
More informationChapter 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 informationChapter 2. Divide-and-conquer. 2.1 Strassen s algorithm
Chapter 2 Divide-and-conquer This chapter revisits the divide-and-conquer paradigms and explains how to solve recurrences, in particular, with the use of the master theorem. We first illustrate the concept
More informationMatrix Multiplication
Matrix Multiplication Matrix Multiplication Matrix multiplication. Given two n-by-n matrices A and B, compute C = AB. n c ij = a ik b kj k=1 c 11 c 12 c 1n c 21 c 22 c 2n c n1 c n2 c nn = a 11 a 12 a 1n
More informationDesign and Analysis of Algorithms
Design and Analysis of Algorithms CSE 5311 Lecture 5 Divide and Conquer: Fast Fourier Transform Junzhou Huang, Ph.D. Department of Computer Science and Engineering CSE5311 Design and Analysis of Algorithms
More informationPowers of Tensors and Fast Matrix Multiplication
Powers of Tensors and Fast Matrix Multiplication François Le Gall Department of Computer Science Graduate School of Information Science and Technology The University of Tokyo Simons Institute, 12 November
More informationDivide and Conquer: Polynomial Multiplication Version of October 1 / 7, 24201
Divide and Conquer: Polynomial Multiplication Version of October 7, 2014 Divide and Conquer: Polynomial Multiplication Version of October 1 / 7, 24201 Outline Outline: Introduction The polynomial multiplication
More informationDivide and Conquer. Andreas Klappenecker. [based on slides by Prof. Welch]
Divide and Conquer Andreas Klappenecker [based on slides by Prof. Welch] Divide and Conquer Paradigm An important general technique for designing algorithms: divide problem into subproblems recursively
More informationPolynomial evaluation and interpolation on special sets of points
Polynomial evaluation and interpolation on special sets of points Alin Bostan and Éric Schost Laboratoire STIX, École polytechnique, 91128 Palaiseau, France Abstract We give complexity estimates for the
More informationFast Convolution; Strassen s Method
Fast Convolution; Strassen s Method 1 Fast Convolution reduction to subquadratic time polynomial evaluation at complex roots of unity interpolation via evaluation at complex roots of unity 2 The Master
More informationElliptic 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 informationHow to Multiply. 5.5 Integer Multiplication. Complex Multiplication. Integer Arithmetic. Complex multiplication. (a + bi) (c + di) = x + yi.
How to ultiply Slides by Kevin Wayne. Copyright 5 Pearson-Addison Wesley. All rights reserved. integers, matrices, and polynomials Complex ultiplication Complex multiplication. a + bi) c + di) = x + yi.
More informationLimits at Infinity. Horizontal Asymptotes. Definition (Limits at Infinity) Horizontal Asymptotes
Limits at Infinity If a function f has a domain that is unbounded, that is, one of the endpoints of its domain is ±, we can determine the long term behavior of the function using a it at infinity. Definition
More information1 Solutions to selected problems
Solutions to selected problems Section., #a,c,d. a. p x = n for i = n : 0 p x = xp x + i end b. z = x, y = x for i = : n y = y + x i z = zy end c. y = (t x ), p t = a for i = : n y = y(t x i ) p t = p
More informationNUMERICAL METHODS. x n+1 = 2x n x 2 n. In particular: which of them gives faster convergence, and why? [Work to four decimal places.
NUMERICAL METHODS 1. Rearranging the equation x 3 =.5 gives the iterative formula x n+1 = g(x n ), where g(x) = (2x 2 ) 1. (a) Starting with x = 1, compute the x n up to n = 6, and describe what is happening.
More informationCSE 421 Algorithms. T(n) = at(n/b) + n c. Closest Pair Problem. Divide and Conquer Algorithms. What you really need to know about recurrences
CSE 421 Algorithms Richard Anderson Lecture 13 Divide and Conquer What you really need to know about recurrences Work per level changes geometrically with the level Geometrically increasing (x > 1) The
More informationCMPSCI611: Three Divide-and-Conquer Examples Lecture 2
CMPSCI611: Three Divide-and-Conquer Examples Lecture 2 Last lecture we presented and analyzed Mergesort, a simple divide-and-conquer algorithm. We then stated and proved the Master Theorem, which gives
More informationCS 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 informationComplexity of Matrix Multiplication and Bilinear Problems
Complexity of Matrix Multiplication and Bilinear Problems François Le Gall Graduate School of Informatics Kyoto University ADFOCS17 - Lecture 3 24 August 2017 Overview of the Lectures Fundamental techniques
More informationDivide and conquer. Philip II of Macedon
Divide and conquer Philip II of Macedon Divide and conquer 1) Divide your problem into subproblems 2) Solve the subproblems recursively, that is, run the same algorithm on the subproblems (when the subproblems
More informationMULTI-RESTRAINED STIRLING NUMBERS
MULTI-RESTRAINED STIRLING NUMBERS JI YOUNG CHOI DEPARTMENT OF MATHEMATICS SHIPPENSBURG UNIVERSITY SHIPPENSBURG, PA 17257, U.S.A. Abstract. Given positive integers n, k, and m, the (n, k)-th m- restrained
More informationOn the Exponent of the All Pairs Shortest Path Problem
On the Exponent of the All Pairs Shortest Path Problem Noga Alon Department of Mathematics Sackler Faculty of Exact Sciences Tel Aviv University Zvi Galil Department of Computer Science Sackler Faculty
More informationAddition sequences and numerical evaluation of modular forms
Addition sequences and numerical evaluation of modular forms Fredrik Johansson (INRIA Bordeaux) Joint work with Andreas Enge (INRIA Bordeaux) William Hart (TU Kaiserslautern) DK Statusseminar in Strobl,
More informationCS/COE 1501 cs.pitt.edu/~bill/1501/ Integer Multiplication
CS/COE 1501 cs.pitt.edu/~bill/1501/ Integer Multiplication Integer multiplication Say we have 5 baskets with 8 apples in each How do we determine how many apples we have? Count them all? That would take
More informationFast 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 information1.1 Administrative Stuff
601.433 / 601.633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Introduction, Karatsuba/Strassen Date: 9/4/18 1.1 Administrative Stuff Welcome to Algorithms! In this class you will learn the
More informationAnalysis of Algorithms I: Asymptotic Notation, Induction, and MergeSort
Analysis of Algorithms I: Asymptotic Notation, Induction, and MergeSort Xi Chen Columbia University We continue with two more asymptotic notation: o( ) and ω( ). Let f (n) and g(n) are functions that map
More informationChapter 1 Divide and Conquer Algorithm Theory WS 2016/17 Fabian Kuhn
Chapter 1 Divide and Conquer Algorithm Theory WS 2016/17 Fabian Kuhn Formulation of the D&C principle Divide-and-conquer method for solving a problem instance of size n: 1. Divide n c: Solve the problem
More informationHow to find good starting tensors for matrix multiplication
How to find good starting tensors for matrix multiplication Markus Bläser Saarland University Matrix multiplication z,... z,n..... z n,... z n,n = x,... x,n..... x n,... x n,n y,... y,n..... y n,... y
More informationMa/CS 6b Class 12: Graphs and Matrices
Ma/CS 6b Class 2: Graphs and Matrices 3 3 v 5 v 4 v By Adam Sheffer Non-simple Graphs In this class we allow graphs to be nonsimple. We allow parallel edges, but not loops. Incidence Matrix Consider a
More informationLinear recurrences with polynomial coefficients and application to integer factorization and Cartier-Manin operator
Linear recurrences with polynomial coefficients and application to integer factorization and Cartier-Manin operator Alin Bostan, Pierrick Gaudry, Éric Schost September 12, 2006 Abstract We study the complexity
More informationImplementation 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 informationStirling Numbers of the 1st Kind
Daniel Reiss, Colebrook Jackson, Brad Dallas Western Washington University November 28, 2012 Introduction The set of all permutations of a set N is denoted S(N), while the set of all permutations of {1,
More informationSCALED REMAINDER TREES
Draft. Aimed at Math. Comp. SCALED REMAINDER TREES DANIEL J. BERNSTEIN Abstract. It is well known that one can compute U mod p 1, U mod p 2,... in time n(lg n) 2+o(1) where n is the number of bits in U,
More informationInteger multiplication with generalized Fermat primes
Integer multiplication with generalized Fermat primes CARAMEL Team, LORIA, University of Lorraine Supervised by: Emmanuel Thomé and Jérémie Detrey Journées nationales du Calcul Formel 2015 (Cluny) November
More informationDIVIDE AND CONQUER II
DIVIDE AND CONQUER II master theorem integer multiplication matrix multiplication convolution and FFT Lecture slides by Kevin Wayne Copyright 2005 Pearson-Addison Wesley http://www.cs.princeton.edu/~wayne/kleinberg-tardos
More informationChapter 22 Fast Matrix Multiplication
Chapter 22 Fast Matrix Multiplication A simple but extremely valuable bit of equipment in matrix multiplication consists of two plain cards, with a re-entrant right angle cut out of one or both of them
More informationDiscovering Fast Matrix Multiplication Algorithms via Tensor Decomposition
Discovering Fast Matrix Multiplication Algorithms via Tensor Decomposition Grey Ballard SIAM onference on omputational Science & Engineering March, 207 ollaborators This is joint work with... Austin Benson
More informationSpeedy Maths. David McQuillan
Speedy Maths David McQuillan Basic Arithmetic What one needs to be able to do Addition and Subtraction Multiplication and Division Comparison For a number of order 2 n n ~ 100 is general multi precision
More informationSymmetric functions and the Vandermonde matrix
J ournal of Computational and Applied Mathematics 172 (2004) 49-64 Symmetric functions and the Vandermonde matrix Halil Oruç, Hakan K. Akmaz Department of Mathematics, Dokuz Eylül University Fen Edebiyat
More informationEvaluating Determinants by Row Reduction
Evaluating Determinants by Row Reduction MATH 322, Linear Algebra I J. Robert Buchanan Department of Mathematics Spring 2015 Objectives Reduce a matrix to row echelon form and evaluate its determinant.
More informationChapter 2. Recurrence Relations. Divide and Conquer. Divide and Conquer Strategy. Another Example: Merge Sort. Merge Sort Example. Merge Sort Example
Recurrence Relations Chapter 2 Divide and Conquer Equation or an inequality that describes a function by its values on smaller inputs. Recurrence relations arise when we analyze the running time of iterative
More informationSection 3: Complex numbers
Essentially: Section 3: Complex numbers C (set of complex numbers) up to different notation: the same as R 2 (euclidean plane), (i) Write the real 1 instead of the first elementary unit vector e 1 = (1,
More informationTaking Roots over High Extensions of Finite Fields
Taking Roots over High Extensions of Finite Fields Javad Doliskani jdoliskan@uwo.ca Éric Schost eschost@uwo.ca Abstract We present a new algorithm for computing m-th roots over the finite field F q, where
More information1 Solutions to selected problems
Solutions to selected problems Section., #a,c,d. a. p x = n for i = n : 0 p x = xp x + i end b. z = x, y = x for i = : n y = y + x i z = zy end c. y = (t x ), p t = a for i = : n y = y(t x i ) p t = p
More informationA design paradigm. Divide and conquer: (When) does decomposing a problem into smaller parts help? 09/09/ EECS 3101
A design paradigm Divide and conquer: (When) does decomposing a problem into smaller parts help? 09/09/17 112 Multiplying complex numbers (from Jeff Edmonds slides) INPUT: Two pairs of integers, (a,b),
More informationRings 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 informationNumerics of classical elliptic functions, elliptic integrals and modular forms
1 / 49 Numerics of classical elliptic functions, elliptic integrals and modular forms Fredrik Johansson LFANT, Inria Bordeaux & Institut de Mathématiques de Bordeaux KMPB Conference: Elliptic Integrals,
More informationDense Arithmetic over Finite Fields with CUMODP
Dense Arithmetic over Finite Fields with CUMODP Sardar Anisul Haque 1 Xin Li 2 Farnam Mansouri 1 Marc Moreno Maza 1 Wei Pan 3 Ning Xie 1 1 University of Western Ontario, Canada 2 Universidad Carlos III,
More informationGATE Engineering Mathematics SAMPLE STUDY MATERIAL. Postal Correspondence Course GATE. Engineering. Mathematics GATE ENGINEERING MATHEMATICS
SAMPLE STUDY MATERIAL Postal Correspondence Course GATE Engineering Mathematics GATE ENGINEERING MATHEMATICS ENGINEERING MATHEMATICS GATE Syllabus CIVIL ENGINEERING CE CHEMICAL ENGINEERING CH MECHANICAL
More informationToward High Performance Matrix Multiplication for Exact Computation
Toward High Performance Matrix Multiplication for Exact Computation Pascal Giorgi Joint work with Romain Lebreton (U. Waterloo) Funded by the French ANR project HPAC Séminaire CASYS - LJK, April 2014 Motivations
More informationDeterminants. Samy Tindel. Purdue University. Differential equations and linear algebra - MA 262
Determinants Samy Tindel Purdue University Differential equations and linear algebra - MA 262 Taken from Differential equations and linear algebra by Goode and Annin Samy T. Determinants Differential equations
More informationAlgorithm Design and Analysis
Algorithm Design and Analysis LECTURE 14 Divide and Conquer Fast Fourier Transform Sofya Raskhodnikova 10/7/2016 S. Raskhodnikova; based on slides by K. Wayne. 5.6 Convolution and FFT Fast Fourier Transform:
More informationInversion Modulo Zero-dimensional Regular Chains
Inversion Modulo Zero-dimensional Regular Chains Marc Moreno Maza, Éric Schost, and Paul Vrbik Department of Computer Science, Western University moreno@csd.uwo.ca eschost@csd.uwo.ca pvrbik@csd.uwo.ca
More informationCSE548, AMS542: Analysis of Algorithms, Fall 2017 Date: October 11. In-Class Midterm. ( 7:05 PM 8:20 PM : 75 Minutes )
CSE548, AMS542: Analysis of Algorithms, Fall 2017 Date: October 11 In-Class Midterm ( 7:05 PM 8:20 PM : 75 Minutes ) This exam will account for either 15% or 30% of your overall grade depending on your
More informationAn introduction to parallel algorithms
An introduction to parallel algorithms Knut Mørken Department of Informatics Centre of Mathematics for Applications University of Oslo Winter School on Parallel Computing Geilo January 20 25, 2008 1/26
More informationCPSC 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 informationFast algorithms for polynomials and matrices. Alin Bostan. Algorithms Project, INRIA
Fast algorithms for polynomials and matrices Alin Bostan Algorithms Project, INRIA JNCF 2010 This course Main objects polynomials K[x] rational fractions K(x) power series K[[x]] matrices M r (K) polynomial
More informationFast Matrix Product Algorithms: From Theory To Practice
Introduction and Definitions The τ-theorem Pan s aggregation tables and the τ-theorem Software Implementation Conclusion Fast Matrix Product Algorithms: From Theory To Practice Thomas Sibut-Pinote Inria,
More informationFast Algorithms for Polynomial Solutions of Linear Differential Equations
Fast Algorithms for Polynomial Solutions of Linear Differential Equations Alin Bostan and Bruno Salvy Projet Algorithmes, Inria Rocquencourt 78153 Le Chesnay (France) {Alin.Bostan,Bruno.Salvy}@inria.fr
More informationMATRIX DETERMINANTS. 1 Reminder Definition and components of a matrix
MATRIX DETERMINANTS Summary Uses... 1 1 Reminder Definition and components of a matrix... 1 2 The matrix determinant... 2 3 Calculation of the determinant for a matrix... 2 4 Exercise... 3 5 Definition
More informationThe tangent FFT. D. J. Bernstein University of Illinois at Chicago
The tangent FFT D. J. Bernstein University of Illinois at Chicago Advertisement SPEED: Software Performance Enhancement for Encryption and Decryption A workshop on software speeds for secret-key cryptography
More informationMathematics 136 Calculus 2 Everything You Need Or Want To Know About Partial Fractions (and maybe more!) October 19 and 21, 2016
Mathematics 36 Calculus 2 Everything You Need Or Want To Know About Partial Fractions (and maybe more!) October 9 and 2, 206 Every rational function (quotient of polynomials) can be written as a polynomial
More informationMATH Topics in Applied Mathematics Lecture 12: Evaluation of determinants. Cross product.
MATH 311-504 Topics in Applied Mathematics Lecture 12: Evaluation of determinants. Cross product. Determinant is a scalar assigned to each square matrix. Notation. The determinant of a matrix A = (a ij
More informationAlgorithms Design & Analysis. Dynamic Programming
Algorithms Design & Analysis Dynamic Programming Recap Divide-and-conquer design paradigm Today s topics Dynamic programming Design paradigm Assembly-line scheduling Matrix-chain multiplication Elements
More information1 Fields and vector spaces
1 Fields and vector spaces In this section we revise some algebraic preliminaries and establish notation. 1.1 Division rings and fields A division ring, or skew field, is a structure F with two binary
More informationSOLVED PROBLEMS ON TAYLOR AND MACLAURIN SERIES
SOLVED PROBLEMS ON TAYLOR AND MACLAURIN SERIES TAYLOR AND MACLAURIN SERIES Taylor Series of a function f at x = a is ( f k )( a) ( x a) k k! It is a Power Series centered at a. Maclaurin Series of a function
More information6.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 informationAn Introduction to Differential Algebra
An Introduction to Differential Algebra Alexander Wittig1, P. Di Lizia, R. Armellin, et al. 1 ESA Advanced Concepts Team (TEC-SF) SRL, Milan Dinamica Outline 1 Overview Five Views of Differential Algebra
More informationCPSC 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 information14. Properties of the Determinant
14. Properties of the Determinant Last time we showed that the erminant of a matrix is non-zero if and only if that matrix is invertible. We also showed that the erminant is a multiplicative function,
More informationSubquadratic Computational Complexity Schemes for Extended Binary Field Multiplication Using Optimal Normal Bases
1 Subquadratic Computational Complexity Schemes for Extended Binary Field Multiplication Using Optimal Normal Bases H. Fan and M. A. Hasan March 31, 2007 Abstract Based on a recently proposed Toeplitz
More informationFast multiplication and its applications
Algorithmic Number Theory MSRI Publications Volume 44, 2008 Fast multiplication and its applications DANIEL J. BERNSTEIN ABSTRACT. This survey explains how some useful arithmetic operations can be sped
More informationCS 577 Introduction to Algorithms: Strassen s Algorithm and the Master Theorem
CS 577 Introduction to Algorithms: Jin-Yi Cai University of Wisconsin Madison In the last class, we described InsertionSort and showed that its worst-case running time is Θ(n 2 ). Check Figure 2.2 for
More information3 Matrix Algebra. 3.1 Operations on matrices
3 Matrix Algebra A matrix is a rectangular array of numbers; it is of size m n if it has m rows and n columns. A 1 n matrix is a row vector; an m 1 matrix is a column vector. For example: 1 5 3 5 3 5 8
More informationCounting points on hyperelliptic curves
University of New South Wales 9th November 202, CARMA, University of Newcastle Elliptic curves Let p be a prime. Let X be an elliptic curve over F p. Want to compute #X (F p ), the number of F p -rational
More informationOriginal citation: Hart, William B. and Novocin, Andrew (2011) Practical divide-and-conquer algorithms for polynomial arithmetic. In: CASC'11 Proceedings of the 13th international conference on Computer
More informationOn the computational complexity of mathematical functions
On the computational complexity of mathematical functions Jean-Pierre Demailly Institut Fourier, Université de Grenoble I & Académie des Sciences, Paris (France) November 26, 2011 KVPY conference at Vijyoshi
More informationOperations On Networks Of Discrete And Generalized Conductors
Operations On Networks Of Discrete And Generalized Conductors Kevin Rosema e-mail: bigyouth@hardy.u.washington.edu 8/18/92 1 Introduction The most basic unit of transaction will be the discrete conductor.
More informationEfficient implementation of the Hardy-Ramanujan-Rademacher formula
Efficient implementation of the Hardy-Ramanujan-Rademacher formula or: Partitions in the quintillions Fredrik Johansson RISC-Linz July 10, 2013 2013 SIAM Annual Meeting San Diego, CA Supported by Austrian
More informationClass Note #14. In this class, we studied an algorithm for integer multiplication, which. 2 ) to θ(n
Class Note #14 Date: 03/01/2006 [Overall Information] In this class, we studied an algorithm for integer multiplication, which improved the running time from θ(n 2 ) to θ(n 1.59 ). We then used some of
More informationExact Arithmetic on a Computer
Exact Arithmetic on a Computer Symbolic Computation and Computer Algebra William J. Turner Department of Mathematics & Computer Science Wabash College Crawfordsville, IN 47933 Tuesday 21 September 2010
More informationDesign and Analysis of Algorithms
CSE 101, Winter 2018 Design and Analysis of Algorithms Lecture 4: Divide and Conquer (I) Class URL: http://vlsicad.ucsd.edu/courses/cse101-w18/ Divide and Conquer ( DQ ) First paradigm or framework DQ(S)
More informationFast Polynomial Factorization Over High Algebraic Extensions of Finite Fields
Fast Polynomial Factorization Over High Algebraic Extensions of Finite Fields Erich Kaltofen Department of Mathematics North Carolina State University Raleigh, North Carolina 27695-8205, USA kaltofen@eos.ncsu.edu
More informationChapter 5 Divide and Conquer
CMPT 705: Design and Analysis of Algorithms Spring 008 Chapter 5 Divide and Conquer Lecturer: Binay Bhattacharya Scribe: Chris Nell 5.1 Introduction Given a problem P with input size n, P (n), we define
More informationMath 473: Practice Problems for Test 1, Fall 2011, SOLUTIONS
Math 473: Practice Problems for Test 1, Fall 011, SOLUTIONS Show your work: 1. (a) Compute the Taylor polynomials P n (x) for f(x) = sin x and x 0 = 0. Solution: Compute f(x) = sin x, f (x) = cos x, f
More informationGroup-theoretic approach to Fast Matrix Multiplication
Jenya Kirshtein 1 Group-theoretic approach to Fast Matrix Multiplication Jenya Kirshtein Department of Mathematics University of Denver Jenya Kirshtein 2 References 1. H. Cohn, C. Umans. Group-theoretic
More informationOn the use of polynomial matrix approximant in the block Wiedemann algorithm
On the use of polynomial matrix approximant in the block Wiedemann algorithm ECOLE NORMALE SUPERIEURE DE LYON Laboratoire LIP, ENS Lyon, France Pascal Giorgi Symbolic Computation Group, School of Computer
More informationOR MSc Maths Revision Course
OR MSc Maths Revision Course Tom Byrne School of Mathematics University of Edinburgh t.m.byrne@sms.ed.ac.uk 15 September 2017 General Information Today JCMB Lecture Theatre A, 09:30-12:30 Mathematics revision
More informationALGEBRA+NUMBER THEORY +COMBINATORICS
ALGEBRA+NUMBER THEORY +COMBINATORICS COMP 321 McGill University These slides are mainly compiled from the following resources. - Professor Jaehyun Park slides CS 97SI - Top-coder tutorials. - Programming
More informationACM106a - Homework 2 Solutions
ACM06a - Homework 2 Solutions prepared by Svitlana Vyetrenko October 7, 2006. Chapter 2, problem 2.2 (solution adapted from Golub, Van Loan, pp.52-54): For the proof we will use the fact that if A C m
More informationCSE 421 Algorithms: Divide and Conquer
CSE 42 Algorithms: Divide and Conquer Larry Ruzzo Thanks to Richard Anderson, Paul Beame, Kevin Wayne for some slides Outline: General Idea algorithm design paradigms: divide and conquer Review of Merge
More informationPre-calculus 12 Curriculum Outcomes Framework (110 hours)
Curriculum Outcomes Framework (110 hours) Trigonometry (T) (35 40 hours) General Curriculum Outcome: Students will be expected to develop trigonometric reasoning. T01 Students will be expected to T01.01
More information