Mathematics for Computer Science
BASIC DATA
course listing
A - main register
course code
ITB8832
course title in Estonian
Matemaatika arvutiteaduses
course title in English
Mathematics for Computer Science
course volume CP
-
ECTS credits
6.00
to be declared
yes
fully online course
not
assessment form
Examination
teaching semester
autumn
language of instruction
Estonian
English
Study programmes that contain the course
code of the study programme version
course compulsory
IABM02/25
no
IAPM02/25
no
IVSM09/24
no
Structural units teaching the course
EV - Virumaa College
IT - Department of Software Science
Course description link
http://ois2.taltech.ee/uusois/subject/ITB8832
Timetable link
View the timetable
Version:
2023/2024  Autumn
  • 2023/2024  Autumn
  • 2021/2022  Spring
VERSION SPECIFIC DATA
course aims in Estonian
Aine eesmärk on omandada pädevust matemaatika valdkondades, mis on eriti olulised arvutiteadusele ja millel on rakendusi eri valdkondades, alates programmeerimisest kuni algoritmide analüüsini ja lõpetades võrgukujundusega.
course aims in English
The aim of this course is to acquire competence in areas of mathematics that are especially relevant to computer science and have applications in various fields, from programming to analysis of algorithms to network design.
learning outcomes in the course in Est.
Õppeaine läbinud üliõpilane:
- rakendab range arutlemise põhimõtteid ja võtteid;
- kasutab rekursiivseid andmestruktuure ja algoritme probleemide lahendamisel, mänguteoorias ja tarkvara testimisel;
- tunneb arvutite probleemide lahendamise võime olemuslikke piiranguid;
- kasutab mõisteid ja meetodeid kaasaegse krüptograafia matemaatilistest alustest;
- rakendab graafiteooria mõisteid ja tehnikaid planeerimisel ja ressurside juhtimisel.
learning outcomes in the course in Eng.
After completing this course, the student:
- applies the principles and techniques of rigorous reasoning;
- employs recursive data structures and algorithms to problem solving, game theory, and software testing;
- knows the intrinsic limitations of computers' ability to solve problems;
- employs notions and methods from the mathematical foundations of modern cryptography;
- applies the concepts and techniques of graph theory to scheduling and resource management.
brief description of the course in Estonian
Kursus “Matemaatika arvutiteaduses” järgib Massachusettsi Tehnoloogia Instituudis õpetatava samanimelise kursuse ülesehitust. See on suunatud infotehnoloogia teaduskonna magistrantidele.
Kursusel käsitletakse mitmeid teemasid loogikast, hulgateooriast, diskreetsest matemaatikast ja arvutatavuse teooriast, mis on valitud õpiku esimesest poolest. Nende seas:
1. Tõestused. Aksiomaatiline meetod. Tõestused juhtumite kaupa. Vastuväitelised tõestused. Fundeeritud järjestuse tees. Lauseloogika arvutiprogrammides. Lausealgebra. Induktsioon. Rakendus: kehtestatavus.
2. Matemaatilised andmetüübid. Hulgad ja jadad. Funktsioonid ja lõplikud suhted. Rekursiivsed andmetüübid. Rekursiivsed funktsioonid. Rakendus: mängud rekursiivsete andmetüüpidena.
3. Olekumasinad. Invariandid. Stabiilse sobitamise probleem. Peatumisprobleem. Rakendus: programmide verifitseerimine.
4. Arvuteooria. Jaguvus. Algarvud. Modulaarne aritmeetika. Rakendus: RSA avaliku võtme süsteemiga krüpteerimise algoritm.
5. Suunatud ja suunamata graafid. Osalised järjestused. Sidusus. Tasandilised graafid. Rakendus: ajakavastamine.

brief description of the course in English
The course “Mathematics for Computer Science” follows the lines of the course of the same name taught at Massachusetts Institute of Technology. It is aimed at Master students of the School of Information Technology.
The course covers a series of topics from logic, set theory, discrete mathematics, and theory of computation, chosen from the first half of the textbook. Among these:
1. Proofs. The axiomatic method. Proofs by cases. Proofs by contradiction. Well ordering principle. Propositional logic in computer programs. Propositional algebra. Induction. Application: satisfiability.
2. Mathematical data types. Sets and sequences. Functions and finitary relations. Recursive data types. Recursive functions. Application: games as a recursive data type.
3. State machines. Invariants. The stable marriage problem. The halting problem. Application: program verification.
4. Number theory. Divisibility. Prime numbers. Modular arithmetic. Application: the RSA public key encryption algorithm.
5. Directed and undirected graphs. Partial orders. Connectivity. Planar graphs. Application: scheduling.
type of assessment in Estonian
Kolm testi semestri jooksul, igaüks väärt 15 punkti; lõpueksam, väärt 60 punkti. Iseseisev rühmatöö annab kuni 10 lisapunkti. Lisateabe saamiseks vaadake laiendatud ainekava.
type of assessment in English
Three midterm tests, worth 15 points each; one final exam, worth 60 points. Optional group work gives up to 10 points of extra credit. See the extended syllabus for further details.
independent study in Estonian
32 tundi loenguid + 32 tundi harjutusi + 92 tundi iseseisvat tööd = 156 tundi.
independent study in English
32 h of lectures + 32 h of practical work + 92 h of independent work = 156 h.
study literature
Textbook:
E. Lehman, F. Thomson Leighton, and Albert R. Meyer, Mathematics for Computer Science, revision of 6 June 2018. Available under the terms of the Creative Commons Attribution-ShareAlike 3.0 license from https://courses.csail.mit.edu/6.042/spring18/mcs.pdf

Additional references:
Richard W. Hamming, Methods of Mathematics Applied to Calculus, Probability, and Statistics, Dover 2004.

Ivan Niven, Mathematics of Choice, The Mathematical Association of America 1965.

Raymond M. Smullyan, A Beginner’s Guide to Mathematical Logic, Dover 2014.

Brian S. Thomson, Judith B. Bruckner and Andrew M. Bruckner, ElementaryReal Analysis, Second Edition, 2008. Available from http://www.classicalrealanalysis.com/

Mati Abel and Ülo Kaasik, Matemaatikasõnaraamat, TEA 2002.
study forms and load
daytime study: weekly hours
4.0
session-based study work load (in a semester):
lectures
2.0
lectures
-
practices
0.0
practices
-
exercises
2.0
exercises
-
lecturer in charge
Silvio Capobianco, vanemteadur (IT - tarkvarateaduse instituut)
LECTURER SYLLABUS INFO
semester of studies
teaching lecturer / unit
language of instruction
Extended syllabus or link to Moodle or to home page
2025/2026 autumn
Silvio Capobianco, IT - Department of Software Science
English
    ITB8832 assesment criteria.pdf 
    display more
    2024/2025 autumn
    Silvio Capobianco, IT - Department of Software Science
    English
      2023/2024 autumn
      Silvio Capobianco, IT - Department of Software Science
      English
        Course description in Estonian
        Course description in English