The Discrete Mathematics course will provide students with their first glimpse of how to think rigorously about discrete and finite phenomena. The course will begin by introducing students to the language and grammar of mathematics. It will then proceed to an axiomatic construction of the natural numbers, and introduce the fundamental mathematical notions of sets, relations, and functions. The remainder of the course will be organised around three distinct modules: number theory, permutations and counting, and graph theory.
Mathematically reasoning, in absence of certainty, is fundamental to questions of computing. Whether it is to arrive at classification tasks based on naive bayes, calculating pathways for data packets across networks, writing probabilistic algorithms and reasoning about probabilistic computing machines, or reasoning about security protocols. This course provides an introduction to fundamentals of probability and statistics, with a view towards applications in computer science.