Algebra & Algorithms (Coursera)

Algebra & Algorithms (Coursera)

Algebra is one of the definitive and oldest branches of mathematics, and design of computer algorithms is one of the youngest. Despite this generation gap, the two disciplines beautifully interweave. Firstly, modern computers would be somewhat useless if they were not able to carry out arithmetic and algebraic computations efficiently, so we need to think on dedicated, sometimes rather sophisticated algorithms for these operations. Secondly, algebraic structures and theorems can help develop algorithms for things having [at first glance] nothing to do with algebra, e.g. graph algorithms.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

One of the main goals of the offered course is thus providing the learners with the examples of the above mentioned situations. We believe the course to contain much material of interest to both CS and Math oriented students. The course is supported by programming assignments.

What You Will Learn

  • Efficiently doing arithmetics on binary numbers as well as algebraic operations like polynomial multiplication, matrix multiplication and inversion.
  • Design efficient algorithms problems in graph theory related to distances and matchings based on fast matrix computations and randomization.

Syllabus

WEEK 1
Arithmetics in the Realm of Circuits
In this module we will study a mathematical model of hardware: the Boolean circuits. They provide the birds eye view of how one builds a complex logical circuit from elementary building blocks by linking them with wires. We will learn efficient ways to construct circuits for all four arithmetic operations on integers represented in binary form. Among other things we will see how to efficiently calculate all carries while adding two numbers (much faster than just computing these carries sequentially) and how Newton’s approximation method for solving equations helps with implementing integer division.

WEEK 2
Boolean Circuits for Arbitrary Functions
In this second and last module devoted to Boolean circuits we move from arithmetics to the problem of constructing efficient circuits for arbitrary Boolean functions. On the way, among other things, we will see how to estimate the number of trees via DFS traversals and how to construct efficiently a circuit that computes all functions of given small number of variables.

WEEK 3
More on Multiplication of Integers and Polynomials
Multiplication of integers is among the first things people learn to do with integers at school, later moving on to higher spheres: multiplying matrices, polynomials, permutations etc. Multiplication is one of the central things in algebra. This week we focus on classical algorithms for efficient integer multiplication first, and then move on to matrix and polynomial multiplication. On the way we will see how closely integer and polynomial multiplication are really intertwined and what polynomial interpolation has to do with multiplication.

WEEK 4
Graph Reachability and Distances via Matrix Multiplication
This module is the first one to feature application pf efficient algorithms for algebraic operations to something outside algebra. Currently we turn to distances in graphs. We also study a non-typical way of multiplying matrices motivated by applications to graph reachibiilty, namely, Boolean matrix multiplication, and consider a corresponding rather general speedup technique.

WEEK 5
More on Matrix Computations
This week we first learn how to compute determinant and invert a matrix on a parallel computer, and how working with seemingly “computationally inconvenient” infinite series helps deriving quite a efficient formulas for the determinant. The second part of this module is devoted to a more common single-threaded computational model and there we prove that essentially the complexity of inverting a matrix is the same as that of matrix multiplication.

WEEK 6
Matchings in Graphs via Matrix Determinants
In the last module of the course we learn some tools for efficient use of randomization and algebra in algorithm design and use our knowledge about the existence of fast algorithms for parallel determinant computation to find perfect matchings in bipartite graphs unbelievably quickly on parallel computers.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Initiation à la théorie des distributions (Coursera) Coursera
École Polytechnique

Initiation à la théorie des distributions (Coursera)

Une fonction discontinue peut-elle être solution d'une équation différentielle? Comment définir rigoureusement la masse de Dirac (une "fonction" d'intégrale un, nulle partout sauf en un point) et ses dérivées? Peut-on définir une notion de "dérivée d'ordre fractionnaire"? Cette initiation aux distributions répond à ces questions - et à bien d'autres.

Nov 2nd 2026
5-12 Weeks
Big Data Analysis with Scala and Spark (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Big Data Analysis with Scala and Spark (Coursera)

Manipulating big data distributed over a cluster using functional concepts is rampant in industry, and is arguably one of the first widespread industrial uses of functional ideas. This is evidenced by the popularity of MapReduce and Hadoop, and most recently Apache Spark, a fast, in-memory distributed collections framework written in Scala. In this course, we'll see how the data parallel paradigm can be extended to the distributed case, using Spark throughout.

Nov 9th 2026
4 Weeks
Mathematical Biostatistics Boot Camp 1 (Coursera) Coursera
Johns Hopkins University

Mathematical Biostatistics Boot Camp 1 (Coursera)

This class presents the fundamental probability and statistical concepts used in elementary data analysis. It will be taught at an introductory level for students with junior or senior college-level mathematical training including a working knowledge of calculus. A small amount of linear algebra and programming are useful for the class, but not required.

Nov 9th 2026
4 Weeks
Image and video processing: From Mars to Hollywood with a stop at the hospital (Coursera) Coursera
Duke University

Image and video processing: From Mars to Hollywood with a stop at the hospital (Coursera)

In this course, you will learn the science behind how digital images and video are made, altered, stored, and used. We will look at the vast world of digital imaging, from how computers and digital cameras form images to how digital special effects are used in Hollywood movies to how the Mars Rover was able to send photographs across millions of miles of space.

Nov 2nd 2026
5-12 Weeks
Matrix Methods (Coursera) Coursera
University of Minnesota

Matrix Methods (Coursera)

Mathematical Matrix Methods lie at the root of most methods of machine learning and data analysis of tabular data. Learn the basics of Matrix Methods, including matrix-matrix multiplication, solving linear equations, orthogonality, and best least squares approximation. Discover the Singular Value Decomposition that plays a fundamental role in dimensionality reduction, Principal Component Analysis, and noise reduction.

Nov 9th 2026
5-12 Weeks
Approximation Algorithms (Coursera) Coursera
EIT Digital

Approximation Algorithms (Coursera)

Many real-world algorithmic problems cannot be solved efficiently using traditional algorithmic tools, for example because the problems are NP-hard. The goal of this course is to become familiar with important algorithmic concepts and techniques needed to effectively deal with such problems. These techniques apply when we don't require the optimal solution to certain problems, but an approximation that is close to the optimal solution. We will see how to efficiently find such approximations.

Nov 13th 2026
4 Weeks
VLSI CAD Part II: Layout (Coursera) Coursera
University of Illinois at Urbana-Champaign

VLSI CAD Part II: Layout (Coursera)

A modern VLSI chip is a remarkably complex beast: billions of transistors, millions of logic gates deployed for computation and control, big blocks of memory, embedded blocks of pre-designed functions designed by third parties (called “intellectual property” or IP blocks). How do people manage to design these complicated chips? Answer: a sequence of computer aided design (CAD) tools takes an abstract description of the chip, and refines it step-wise to a final design.

Nov 16th 2026
5-12 Weeks
Constructivism and Mathematics, Science, and Technology Education (Coursera) Coursera
University of Illinois at Urbana-Champaign

Constructivism and Mathematics, Science, and Technology Education (Coursera)

This course is designed to help participants examine the implications of constructivism for learning and teaching in science, mathematics, and technology focused areas. Course readings, discussions, and assignments will examine constructivist views of learning, research on students' ideas and idea-based interactions, research on instructional approaches taking student ideas into account, and challenges in implementing constructivist perspectives in instruction.

Nov 9th 2026
5-12 Weeks
Digital Signal Processing 1: Basic Concepts and Algorithms (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Digital Signal Processing 1: Basic Concepts and Algorithms (Coursera)

Digital Signal Processing is the branch of engineering that, in the space of just a few decades, has enabled unprecedented levels of interpersonal communication and of on-demand entertainment. By reworking the principles of electronics, telecommunication and computer science into a unifying paradigm, DSP is a the heart of the digital revolution that brought us CDs, DVDs, MP3 players, mobile phones and countless other devices.

Nov 9th 2026
4 Weeks