Combinatorics has its historical roots in mathematical recreations and games. Many problems that were studied in the past, for amusement or for their aesthetic appeal, are today of great importance in pure and applied science. Combinatorics is concerned with arrangements of the objects in a set into patterns satisfying specified rules. In this class, we will solve problems that answer questions such as: Is it possible to arrange...? Does there exists a....? In how many ways can...? Count the number of.... More specifically, we will study the Pigeonhole Principle, Permutations and Combinations, the Binomial and Multinomial Theorem, the Inclusion-Exclusion principle, recurrence relations and generating functions and special types of counting sequences.