Taken in AY19/20 Sem 1 under Prof Tan Ban Pin.
The first half of the module covers combinatorics (permutations & combinations, principle of inclusion and exclusion, generating functions, recurrence relations), and the second half of the module covers basic graph theory (terminology, adjacency matrices, trees, spanning trees, Kruskal’s algorithm, Dijkstra’s algorithm, chromatic number). The two halves are distinctly separated — it is almost as if two separate modules were combined.
Students with prior olympiad mathematics background are likely to find most of this module very simple. The graph theory part should be revision for anyone with a computer science background. Due to the bell curve, this probably means that students with neither computer science nor olympiad mathematics background might need to put in more effort to obtain a good grade for this module.
This module has a “clean” assessment structure — students are only graded for midterms and finals. This gives students more freedom to arrange their studying schedules to suit other modules with continual assessments. Assessments contain a mix of computational and proof-based questions of varying difficulty. A number of questions in the final exam appear in a slightly modified form in past year papers, so it is useful to work on past year papers when preparing for the exam. The more difficult proof-based questions are fresh questions that do not resemble any questions on past year papers, and they may require some creativity to solve.
Lectures contain many worked examples, which are useful for helping students to grasp concepts and formulas. Prof Tan solves these example questions in full during the lectures. The pace of the lectures is very manageable, because Prof Tan explains his solutions as he works them out in the lectures. Lectures are webcasted. Unfortunately, Prof Tan fell ill from week 5 onwards, and hence there were no physical lectures from week 5 to week 13. As a replacement for physical lectures, the webcasts for a past iteration of this module were uploaded.
Tutorials are conducted weekly. Like most mathematics modules, a selection of problems from the reference book is chosen a week before the tutorial session, and the tutor explains the solutions during the tutorial session.