#
FI:IA011 Semantics - Course Information

## IA011 Programming Language Semantics

**Faculty of Informatics**

Spring 2016

**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).
**Teacher(s)**- 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 **Timetable**- Mon 12:00–14:50 A318
**Prerequisites**- 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. **Syllabus**- 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.

**Literature****Teaching methods**- Lectures, tutorials.
**Assessment methods**- Lectures: 2 hours/week. Tutorials: 1 hour/week.

Written exam. **Language of instruction**- Czech
**Further Comments**- Study Materials

The course is taught annually. **Teacher's information**- http://www.fi.muni.cz/usr/kucera/teaching.html

- Enrolment Statistics (Spring 2016, recent)
- Permalink: https://is.muni.cz/course/fi/spring2016/IA011