FI:IA011 Semantics - Course Information
IA011 Programming Language SemanticsFaculty of Informatics
- Extent and Intensity
- 2/1. 3 credit(s) (plus extra credits for completion). Recommended Type of Completion: zk (examination). Other types of completion: z (credit).
- prof. RNDr. Antonín Kučera, Ph.D. (lecturer)
Mgr. Bc. Tomáš Janík (assistant)
- Guaranteed by
- prof. RNDr. Mojmír Křetínský, CSc.
Department of Computer Science - Faculty of Informatics
Contact Person: prof. RNDr. Antonín Kučera, Ph.D.
Supplier department: Department of Computer Science - Faculty of Informatics
- Mon 12:00–14:50 A318
- Students should be familiar with basic notions of set theory and formal logic (validity and provability, correctness and completeness of deductive systems, etc.)
- Course Enrolment Limitations
- The course is also offered to the students of the fields other than those the course is directly associated with.
- fields of study / plans the course is directly associated with
- there are 19 fields of study the course is directly associated with, display
- Course objectives
- An introduction to the theory of formal semantics of programming
languages (operational, denotational, and axiomatic semantics).
Main objectives of the course can be summarized as follows: to understand basic types of formal semantics of programming languages; to be able to reason about properties of programs using formal semantics; to understand basic notions of temporal logics.
- Formal semantics of programming languages, basic paradigms (operational, denotational, and axiomatic approach).
- Structural operational semantics and its variants (small-step and big-step semantics).
- Denotational semantics. Complete partial orders, continuous functions. The fixed-point theorem and its applications, semantics of recursion. Equivalence of operational and denotational semantics.
- Axiomatic semantics. Hoare's deductive system, its correctness and completeness.
- Temporal logics; the semantics of non-terminating and parallel programs.
- Teaching methods
- Lectures, tutorials.
- Assessment methods
- Lectures: 2 hours/week. Tutorials: 1 hour/week.
- Language of instruction
- Further Comments
- Study Materials
The course is taught annually.
- Teacher's information