Hide menu

Semantics of programming languages

2016VT

Status Running - no longer open for registrations
School Computer and Information Science (CIS)
Division TCSLAB
Owner Wlodzimierz Drabent
Homepage http://www.ida.liu.se/~wlodr/phd.semantics/

  Log in  




Course plan

No of lectures

~ 12 * 2h

Recommended for

Anybody interested in theoretical aspects of computer science and in precise reasoning about program correctness.

The course was last given

2012 HT

Goals

Introduction to formal description techniques for defining semantics
of programming languages. Introduction to program verification.
We believe this knowledge is necessary for everybody interested in program correctness, or in formal methods of software engineering.

Prerequisites

Some degree of mathematical maturity; courses on discrete mathematics,
mathematical logic, and formal languages. Some programming
experience and familiarity with a few programming languages.

Organization

Lectures.
Written assignments.
(A lab assignment under consideration.)

Contents

The core of the course:
- operational semantics (small step and big step approach)
- brief overview of denotational semantics
- axiomatic semantics, proving program correctness, and basics of
systematic construction of provably correct programs.

Literature

Main textbook:
Hanne Riis Nielson, Flemming Nielson: Semantics with Applications: An Appetizer. Springer, 2007.

Lecturers

W. Drabent

Examiner

W. Drabent

Examination

Home assignments

Credit

5 hp

Comments


Page responsible: Director of Graduate Studies