Degree Level Course

Discrete Mathematics

This course introduces the mathematical foundations essential for computer science and data science. It begins with sets, functions, and sequences, establishing the language used to describe computational structures. The course then develops formal reasoning through propositional logic, predicates, and proof techniques, enabling learners to construct rigorous arguments. Induction and recursion are explored as fundamental tools for defining and analyzing discrete structures and algorithms. Building on these foundations, the course covers counting principles and combinatorics, including permutations, combinations, and the inclusion–exclusion principle, which are widely used in algorithm design and data analysis. Relations and their properties, including equivalence relations and partial orderings, are studied to understand structured data and hierarchies. Graph theory introduces basic concepts of graphs and trees, central to modeling networks and dependencies. Finally, algebraic structures such as semigroups, monoids, and groups are presented to provide a deeper understanding of symmetry and structure in computation. Overall, the course equips learners with the ability to model problems formally, reason precisely, and apply discrete mathematical techniques to real-world computational challenges.

by Meenakshi D'Souza

Course ID: BSMA3001

Course Credits: 4

Course Type: Elective

Pre-requisites: None

What you’ll learn

After completing the course, a learner will be able to do the following: – Understand and apply the various notions of sets to reason about and arrive at properties about the structure.
– Use sets and other notations to represent and reason about the various fundamental data types and structures used in Computer Science.
– Apply various proof techniques to reason about the properties of sets and other structures, conclude the properties using proofs.
– Understand and apply different counting techniques to collect information and provide summaries of the underlying data and structures.
– Understand different structures of algebraic nature and prove elementary properties about them.

Course structure & Assessments

For details of standard course structure and assessments, visit Academics page.

WEEK 1 Motivation, Sets, Functions and Sequences : Sets, operations on sets, functions, recursive functions, sequences and summations.
WEEK 2, 3 & 4 Logic and Proofs : Propositional logic, propositional equivalences, predicates and quantifiers, rules of inference, normal forms, countable and uncountable sets, Cantor’s diagonalization .
WEEK 5 & 6 Induction and Recursion : Mathematical induction, strong induction, well ordering, recursive definitions, structural induction.
WEEK 7,8 & 9 Counting and Combinatorics : The basics of counting, pigeon-hole principle, permutations and combinations, binomial coefficients, generat- ing functions, inclusion-exclusion principle, generalized permutations and combinations.
Week 10 & 11 Relations : Relations and their properties, n-ary relations, closures of relations, equivalence relations, partial orderings, lattices, Boolean Algebra.
WEEK 12 Graphs – Basic definitions and properties, trees. Algebraic Structures – The structure of algebras, semi-groups, monoids, groups, homomorphisms, normal sub-groups, congruence relations.
+ Show all weeks

About the Instructors

Meenakshi D'Souza
Associate Professor, Department of Computer Science and Engineering, IIIT Bangalore

Meenakshi D'Souza is an Associate Professor at IIIT-Bangalore and has been with the institute for the past ten years. Prior to joining IIIT-Bangalore, Meenakshi worked for Honeywell Technology Solutions, Bangalore. Meenakshi is a council member of ACM India and an Associate Editor of Sadhana, a journal of Indian Academy of Sciences.

...  more

Her research interests are in the areas of software testing and formal verification of embedded software. Meenakshi teaches courses on Theory of Computation, Software Testing (in NPTEL too), Design and Analysis of Algorithms and Graph Theory. Meenakshi is also interested in gender diversity and accessibility in STEM and IT.

  less

Other courses by the same instructor: BSCS3002 - Software Testing

support@study.iitm.ac.in
7850999966
IITM BS Degree Office, 3rd Floor,
ICSR Building, IIT Madras,
Chennai - 600036

Please use only the above methods for program queries. Response time: 3 working days. During peak periods, Google Meet links will be shared. Call wait times may be longer.