Discrete Mathematics, MSc SD
The 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.
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-trinsskala)
A33: Written exam on premises on paper with restrictions
4 hours written exam with no aids.
There is no access to advanced electronic tools such as computers, e-Readers or tablets.
Only old-fashioned pocket calculators and standard tools for writing on paper are allowed.
Only use of ballpoint pen is allowed for the final exam hand-in.