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

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.