IITM BS Discrete Mathematics (BSMA3001): Syllabus and Tips
By Editorial TeamLast reviewed
5 min readData ScienceOn this page
Discrete Mathematics (BSMA3001) is a 4 credit degree level elective in the IITM BS Data Science programme. It covers the maths under computer science: sets and functions, logic and proofs, induction, counting, relations, graphs and algebraic structures. The course page lists no prerequisites. The instructor is Prof. Meenakshi D'Souza, Professor and Head of Computer Science and Engineering at IIIT Bangalore. She also teaches Software Testing (BSCS3002).
| Code | Credits | Level | Prerequisites |
|---|---|---|---|
| BSMA3001 | 4 | Degree | None |
Not in the handbook's course table
The DS handbook's degree level table (updated 18 March 2026) does not list this course. So the handbook gives no tag and no term plan for it. The credits and prerequisites above come from the course page. The handbook does say that a 3xxx code means a level 3 course, which fits BSMA3001. Check the course list at registration to see if it is offered.
What you learn
The course page groups the 12 weeks into blocks.
- Weeks 1 to 4: sets, logic and proofs. Sets, functions, recursive functions, sequences and sums. Then propositional logic, logical equivalence, predicates and quantifiers ("for all" and "there exists"), rules of inference, normal forms, countable and uncountable sets, and Cantor's diagonal argument.
- Weeks 5 and 6: induction and recursion. Ordinary and strong induction, the well ordering principle, recursive definitions and structural induction.
- Weeks 7 to 9: counting. Basic counting rules, the pigeonhole principle, permutations and combinations, binomial coefficients, generating functions, inclusion and exclusion, and counting with repetition.
- Weeks 10 and 11: relations. Properties of relations, relations on many sets, closures, equivalence relations, partial orders, lattices and Boolean algebra.
- Week 12: graphs and algebra. Basic graph ideas and trees, then semigroups, monoids, groups, homomorphisms, normal subgroups and congruence relations.
By the end, the page says you should be able to reason with sets, use proofs to show properties of structures, apply counting methods, and prove basic facts about algebraic structures.
How it is assessed
The course page does not print its own assessment pattern. It points to the standard structure on the programme's Academics page. Read the grading document for your term.
Where it counts
- Degree level elective. The course page lists it as an elective worth 4 credits.
- BSc elective credits. The BSc level has 8 elective credits after the five core courses, and the handbook's fee table shows level 3 credits can fill them. As a 3xxx course it looks like a fit. See the BSc degree level.
- Not a level 4 course. The BS level needs stream courses at level 4 or higher. A 3xxx course does not meet that rule.
- No minor. It is not in any minor list.
Who finds it hard and how to prepare
If you have never written a proof, weeks 2 to 4 can feel like a new language. Counting (weeks 7 to 9) is tricky in another way: two questions can look alike and need different methods. Week 12 packs two large topics into one week, so it needs extra time.
- Get fluent in logic early. Build truth tables by hand. Translate English sentences into logic and back.
- Ask two questions before counting. Does order matter? Can items repeat? Write the answers down before you pick a formula.
- Write induction in three labelled parts. Base case, assumption, step. Skipping a part is the easiest way to lose marks.
- Start week 12 early. Read ahead on groups during week 11 so the last week is not a rush.
What to take before and after
- Before or instead: Mathematical Thinking covers sets, Cantor's argument, inclusion and exclusion, the pigeonhole principle and graphs. It makes this course easier, but expect overlap if you take both.
- After: Theory of Computation and Advanced Algorithms. Both are degree level electives with no listed prerequisites, and both rely on the formal reasoning this course trains.
- Compare options: see the DS electives list.
Common questions
Is Discrete Mathematics a core course?
No. The course page lists it as an elective. The five BSc core courses are Software Engineering, Software Testing, AI: Search Methods for Problem Solving, Deep Learning and Strategies for Professional Growth.
I studied graph theory in Maths 1. Is this a repeat?
Only a small part. Graphs and trees take up part of week 12. Most of the course is logic, proofs, counting and relations, which go well beyond Maths 1.
Will this course help with programming?
It helps with the thinking behind programs. Recursion, induction, relations and counting come up when you reason about algorithms and data structures. It does not teach any language or tool.
Official sources
Read next
- IITM BS Linear Models with Applications (BSMA3015): Syllabus and Tips
- IITM BS Linear Statistical Models (BSMA3012): Syllabus and Tips
- IITM BS Mathematical Thinking (BSMA2001): Syllabus and Tips
- IITM BS Statistical Computing (BSMA3014): Syllabus and Tips
- IITM BS Market Research (BSMS3002): Syllabus and Tips
- IITM BS Data Science Degree Level Electives: Full List