Discrete Mathematics, MSc SD
AbstractThe course is an introduction to discrete mathematics as a foundation to work within the fields of computer science, information technologies, and software development.
Mathematics and logic are our key tools for both understanding computers and for modelling the world around us. Abstractions from mathematics pervade computer science, and to truly excel at both programming computers and model aspects of the real world in computers, one must understand the core vocabulary of mathematics provided in this course.
The course aims at providing the basics of the mathematical foundations of computer science.
The course develops the necessary terminology and conceptual tools needed for later courses. This includes:
- formal reasoning, induction, set theory, relations and functions
- models of computation, such as finite state machines and grammars
- basic graph theory, language theory
- combinatorics, probability and number theory
Central terms and concepts: Logic, specifications, sets and sequences, functions, sums, induction and recursion, number theory, permutations and combinations, discrete probability, relations, graphs, trees, finite state machines, grammars and theory of computation.
Formal prerequisitesThere are no formal prerequisites. However, we expect that you remember how to do basic high school algebra (solving linear and quadratic equations; simplifying arithmetic expressions; working with fractions, exponentiations, and logarithms; inequalities). The course starts with a very quick refresher on these topics in the first week. But we recommend the Algebra 1 course on khanacademy.org if you need a more thorough refresher.
Please note that this course is not open to bachelor-students. Instead bachelor students can take the SWU Bachelor course: Foundations of Computing - Discrete Mathematics BSc.
Intended learning outcomes
After the course, the student should be able to:
- Describe and apply formal definitions
- Conduct and explain basic formal proofs
- Work with regular languages and finite state machines
- Use models of computation and specification
- Use combinatorial reasoning
- Assess probabilities of events
- Use basic modular arithmetic
Ordinary examExam type:
A: Written exam on premises, External (7-point scale)
A33: Written exam on premises on paper with restrictions