Module 1 (6L+2T): Review of Sets, Operations, Principles of Inclusion and Exclusion. Functions, relations, Equivalence relations. Countable and uncountable sets. Review of Pigeonhole principle.

Module 2(6L+2T): Introduction to Propositional Logic, Equivalence and Implications. Truth tables, De Mor- gan’s Law, Quantifiers, Inference and Proofs. Introduction to First Order Logic, Syntax and Semantics, Soundeness and Completeness.

Module 3 (6L+2T): Mathematical Induction, Recursions, First order linear recurrence, Geometric series, Re- cursion trees and growth rates of solutions to recurrences, Master Theorem. Generating Functions.

Module 4 (6L+2T): Introduction to counting, sum and product principles, counting subsets. Binomial coeffi- cients and Pascal’s triangles. Polya’s theory of counting (optional).

Module 5 (3L+1T): Arithmetic Algorithms: Computing GCD, primality testing, RSA.

Module 6 (12L+4T): Graph Theory: Graphs, representations, connectivity, cycles, trees, Spanning tree of a graph, Algorithms to find minimum spanning trees. Eulerian Cycle and Hamiltonian paths, independence number and clique number, chromatic number, Dominating Sets, and Covering Sets. Planar Graphs. Directed Graphs and tournaments.

Module 7(3L+1T) Probabilistic tools, Tail Bounds and Applications.

Module 8 (3L+1T)(optional): Linear Algebraic tools in Combinatorics.