Introduction to Enumerative Combinatorics (Coursera)

Introduction to Enumerative Combinatorics (Coursera)

Enumerative combinatorics deals with finite sets and their cardinalities. In other words, a typical problem of enumerative combinatorics is to find the number of ways a certain pattern can be formed. In the first part of our course we will be dealing with elementary combinatorial objects and notions: permutations, combinations, compositions, Fibonacci and Catalan numbers etc. In the second part of the course we introduce the notion of generating functions and use it to study recurrence relations and partition numbers.

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

The course is mostly self-contained. However, some acquaintance with basic linear algebra and analysis (including Taylor series expansion) may be very helpful.

Syllabus

WEEK 1
Introduction
Permutations and binomial coefficients
In this introductory lecture we discuss fundamental combinatorial constructions: we will see how to compute the number of words of fixed length in a given alphabet, the number of permutations of a finite set and the number of subsets with a given number of elements in a finite set. The latter numbers are called binomial coefficients; we will see how they appear in various combinatorial problems in this and forthcoming lectures. As an application of combinatorial methods, we also give a combinatorial proof of Fermat's little theorem.

WEEK 2
Binomial coefficients, continued. Inclusion and exclusion formula.
In the first part of this lecture we will see more applications of binomial coefficients, in particular, their appearance in counting multisets. The second part is devoted to the principle of inclusion and exclusion: a technique which allows us to find the number of elements in the union of several sets, given the cardinalities of all of their intersections. We discuss its applications to various combinatorial problem, including the computation of the number of permutations without fixed points (the derangement problem).

WEEK 3
Linear recurrences. The Fibonacci sequence
We start with a well-known "rabbit problem", which dates back to Fibonacci. Using the Fibonacci sequence as our main example, we discuss a general method of solving linear recurrences with constant coefficients.

WEEK 4
A nonlinear recurrence: many faces of Catalan numbers
In this lecture we introduce Catalan numbers and discuss several ways to define them: via triangulations of a polygon, Dyck paths and binary trees. We also prove an explicit formula for Catalan numbers.

WEEK 5
Generating functions: a unified approach to combinatorial problems. Solving linear recurrences
We introduce the central notion of our course, the notion of a generating function. We start with studying properties of formal power series and then apply the machinery of generating functions to solving linear recurrence relations.

WEEK 6
Generating functions, continued. Generating function of the Catalan sequence
In this lecture we discuss further properties of formal power series. In particular, we prove an analogue of the binomial theorem for an arbitrary rational exponent. We apply this technique to computing the generating function of the sequence of Catalan numbers.

WEEK 7
Partitions. Euler’s generating function for partitions and pentagonal formula
In this lecture we introduce partitions, i.e. the number of ways to present a given integer as a sum of ordered integer summands. There is no closed formula for the number of partitions; however, it is possible to compute their generating function. We study the properties of this generating function, including the famous Pentagonal theorem, due to Leonhard Euler.

WEEK 8
Gaussian binomial coefficients. “Quantum” versions of combinatorial identities
Our final lecture is devoted to the so-called "q-analogues" of various combinatorial notions and identities. As a general principle, we replace identities with numbers by identities with polynomials in a certain variable, usually denoted by q, that return the original statement as q tends to 1. This approach turns out to be extremely useful in various branches of mathematics, from number theory to representation theory.

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

Related Courses

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
Fundamentals of Engineering Exam Review (Coursera) Coursera
Georgia Institute of Technology

Fundamentals of Engineering Exam Review (Coursera)

The purpose of this course is to review the material covered in the Fundamentals of Engineering (FE) exam to enable the student to pass it. It will be presented in modules corresponding to the FE topics, particularly those in Civil and Mechanical Engineering. Each module will review main concepts, illustrate them with examples, and provide extensive practice problems.

Nov 2nd 2026
5-12 Weeks
Nanotechnology and Nanosensors, Part 1 (Coursera) Coursera
Technion - Israel Institute of Technology

Nanotechnology and Nanosensors, Part 1 (Coursera)

Nanotechnology and nanosensors are broad, interdisciplinary areas that encompass (bio)chemistry, physics, biology, materials science, electrical engineering and more. The present course will provide a survey on some of the fundamental principles behind nanotechnology and nanomaterials and their vital role in novel sensing properties and applications. The course will discuss interesting interdisciplinary scientific and engineering knowledge at the nanoscale to understand fundamental physical differences at the nanosensors.

Nov 2nd 2026
5-12 Weeks
Mathematics for Machine Learning: PCA (Coursera) Coursera
Imperial College London

Mathematics for Machine Learning: PCA (Coursera)

This intermediate-level course introduces the mathematical foundations to derive Principal Component Analysis (PCA), a fundamental dimensionality reduction technique. We'll cover some basic statistics of data sets, such as mean values and variances, we'll compute distances and angles between vectors using inner products and derive orthogonal projections of data onto lower-dimensional subspaces. Using all these tools, we'll then derive PCA as a method that minimizes the average squared reconstruction error between data points and their reconstruction.

Nov 2nd 2026
4 Weeks
Mathematics for Machine Learning: Multivariate Calculus (Coursera) Coursera
Imperial College London

Mathematics for Machine Learning: Multivariate Calculus (Coursera)

This course offers a brief introduction to the multivariate calculus required to build many common machine learning techniques. We start at the very beginning with a refresher on the “rise over run” formulation of a slope, before converting this to the formal definition of the gradient of a function. We then start to build up a set of tools for making calculus easier and faster. Next, we learn how to calculate vectors that point up hill on multidimensional surfaces and even put this into action using an interactive game.

Nov 2nd 2026
5-12 Weeks
Analytic Combinatorics (Coursera) Coursera
Princeton University

Analytic Combinatorics (Coursera)

Analytic Combinatorics teaches a calculus that enables precise quantitative predictions of large combinatorial structures. This course introduces the symbolic method to derive functional relations among ordinary, exponential, and multivariate generating functions, and methods in complex analysis for deriving accurate asymptotics from the GF equations. All the features of this course are available for free. It does not offer a certificate upon completion.

Nov 2nd 2026
5-12 Weeks
Introduction to Calculus (Coursera) Coursera
The University of Sydney

Introduction to Calculus (Coursera)

The focus and themes of the Introduction to Calculus course address the most important foundations for applications of mathematics in science, engineering and commerce. The course emphasises the key ideas and historical motivation for calculus, while at the same time striking a balance between theory and application, leading to a mastery of key threshold concepts in foundational mathematics.

Nov 2nd 2026
5-12 Weeks
Aléatoire : une introduction aux probabilités - Partie 1 (Coursera) Coursera
École Polytechnique

Aléatoire : une introduction aux probabilités - Partie 1 (Coursera)

Ce cours d'introduction aux probabilités a la même contenu que le cours de tronc commun de première année de l'École polytechnique donné par Sylvie Méléard. Le cours introduit graduellement la notion de variable aléatoire et culmine avec la loi des grands nombres et le théorème de la limite centrale. Les notions mathématiques nécessaires sont introduites au fil du cours et de nombreux exercices corrigés sont proposés.

Nov 2nd 2026
5-12 Weeks
English for Science, Technology, Engineering, and Mathematics (Coursera) Coursera
University of Pennsylvania

English for Science, Technology, Engineering, and Mathematics (Coursera)

Welcome to English for Science, Technology, Engineering, and Mathematics, a course created by the University of Pennsylvania, and funded by the U.S. Department of State Bureau of Educational and Cultural Affairs, Office of English Language Programs. This course is designed for non-native English speakers who are interested in improving their English skills in the sciences. In this course, you will explore some of the most innovative areas of scientific study, while expanding your vocabulary and the language skills needed to share scientific information within your community.

Nov 2nd 2026
5-12 Weeks