This course is intended for students who have enjoyed basic combinatorics and discrete mathematics presented in MATHS 254 and COMPSCI 225.
The course covers key methods in combinatorics including advanced counting techniques such as generating functions, and proof techniques such as the probabilistic method. Many of the covered topics have real-world applications and connections to other fields, in particular computer science. We cover graph connectivity which plays an important role in algorithmic considerations for real-world problems, and duality which is one of the cornerstones of combinatorial optimisation. The syllabus also includes incidence structures such as block designs, which play a role in coding theory and experimental design.
After successfully completing this course on combinatorics, students will have a solid foundation in this field of growing importance and be familiar with its connections to other fields, as well as some important applications. Students will also be well prepared for further graduate courses on the topic, such as MATHS 715 or MATHS 782.