Learning Outcomes
On completion of the course the student shall be able to:
- describe and use various algebraic systems such as modular arithmetic and polynomial arithmetic
- use basic concepts such as predicate calculus, set theory, relations and graph theory, and apply this knowledge to computer science
- implement algorithms based on elementary number theory such as common divisors and factorisation
- apply induction and recursion to problem solving and programming, with emphasis on working with combinatorial problems
- relate logic and mathematics to computer science
Course Content
The course covers algebraic systems, including modular arithmetic and polynomial arithmetic. Logic and set theory is covered as is graph theory, predicate calculus, truth tables, sets and set operators, functions and relations. The course also covers elementary concepts in number theory, combinatorics, divisors, primes, division algorithms including Eulides BCD algorithm, fundamental theorems of arithmetic, induction and recursion, permutations and combinations and the binomial theorem.
The theoretical content of the course is explored through programming exercises so that the students are able to understand how computer science has a foundation in logic and mathematics.
Assessment
Test 4.5 credits
Laboratory exercises 3 credits
Forms of Study
Grades
The Swedish grades U–G.
Prerequisites
- Fundamentals of programming 7,5 credits