Summer 2019 - MATH 895 G100

Reading (4)

Class Number: 1991

Delivery Method: In Person


  • Course Times + Location:

    Location: TBA





1 The Fast Fourier Transform   
- The FFT as an affine transformation.   
- The polynomial Newton iteration.   
- Fast division using the FFT.   
- Fast multi-point evaluation using the FFT.    

2 Computational Linear Algebra   
- The Bareiss fraction-free algorithm for computing det(A) and solving Ax=b.   
- The Berkowitz division free algorithm for computing det(A - lambda I)   
- Solving Ax=b over Q using p-adic lifting + rational reconstruction.    

3 Multivariate Polynomial Interpolation   
- Browns' algorithm for multivariate polynomial GCDs.   
- The Black Box model of computation.   
- Zippel's sparse interpolation.   
- Ben-Or/Tiwari sparse interpolation.    

4 Algebraic Number Fields   
- Representation of elements in Q(alpha) and calculating norms.   
- The Trager-Kronecker algorithm for factoring polynomials in Q(alpha)[x].   
- A modular gcd algorithm for Q(alpha)[x]   
- Cyclotomic fields and solving Ax=b over Q(alpha).    

5 Polynomial Data Structures and Algorithms    
- Multivariate polynomial representations and term orderings.   
- Polynomial multiplication and division using heaps.   
- The Kronecker substitution.    

6 Course Project and Additional Topics   
- Course project selection.   
- Writing papers using LaTex.   
- Multivariate Hensel Lifting.


  • 5 Assignments, 1 per topic 60%
  • Course Project (presentation as a written report) 40%



Modern Computer Algebra by von zur Gathen and Gerhard
Algorithms for Computer Algebra by Geddes, Czapor and Labahn

Graduate Studies Notes:

Important dates and deadlines for graduate students are found here: The deadline to drop a course with a 100% refund is the end of week 2. The deadline to drop with no notation on your transcript is the end of week 3.

Registrar Notes:

SFU’s Academic Integrity web site is filled with information on what is meant by academic dishonesty, where you can find resources to help with your studies and the consequences of cheating.  Check out the site for more information and videos that help explain the issues in plain English.

Each student is responsible for his or her conduct as it affects the University community.  Academic dishonesty, in whatever form, is ultimately destructive of the values of the University. Furthermore, it is unfair and discouraging to the majority of students who pursue their studies honestly. Scholarly integrity is required of all members of the University.