Algorithms with Numbers
About the Course
This course represents an introduction to algorithms with numbers, including linear algebra problems and arbitrary precision arithmetic, that appear virtually everywhere, from cryptography to audio processing. You will learn how to:
— implement the basic number theory algorithms like Euclidean algorithm that are basic building blocks for modern cryptography;
— work with large numbers arising in cryptography and high precision arithmetic;
— solve systems of linear equations that appear in many areas from designing electrical circuits to computer graphics;
— implement Fast Fourier Transform that is inevitable in signal processing.
Each module includes a programming assignment that will improve both your understanding of the topics and your programming skills.
Programme
 Prime numbers and Euclid’s Algorithm.
 Arbitrary Precision Arithmetic and Polynomials.
 Systems of Linear Equations.
 Matrices and Fast Fourier Transform.

Alexander Kulikov
Senior research fellow at Steklov Institute of Mathematics at St. Petersburg, Russian Academy of Sciences, founder and board member of Computer Science Center 
Victor Petrov
Senior Researcher at Chebyshev Laboratory of SPbU 
Nikolai Vavilov
Doctor of Physics and Mathematics, Professor of Mathematics at Chebyshev Laboratory of SPbU 
Aleksei Tolstsikov
Master of Physical and Mathematical Sciences, senior lecturer at the Department of Computational Mathematics, Belarusian State University