| TDDA43 |
Programming Theory, 6 ECTS credits.
/Programmeringsteori/
For:
C
D
IT
|
| |
Prel. scheduled
hours: 56
Rec. self-study hours: 104
|
| |
Area of Education: Technology
Subject area: Computer Science/Computer Engineering
|
| |
Advancement level
(A-D): C
|
|
Aim:
Getting familiar with methods of formal specification of programming languages, especially of their semantics (i.e. meaning).
Introduction to proving correctness of programs.
|
|
Prerequisites: (valid for students admitted to programmes within which the course is offered)
Discrete mathematics and logic (TATA35 and TDDB83, or equivalent). A main course on programming which includes imperative languages
(like TDDB80 Computer programming and languages or TDDB81 Programming).
Note: Admission requirements for non-programme students usually also include admission requirements for the programme and threshhold requirements for progression within the programme, or corresponding.
|
|
Supplementary courses:
TDDB44 Compiler construction, advanced programming courses like TDDA69 Data and program structures and TDDA 41 Logic programming.
|
|
Organisation:
The theory is presented during lectures and in tutorial classes.
Labs and tutorial classes provide practice.
|
|
Course contents:
Transition systems, lambda calculus, operational semantics,
denotational semantics and axiomatic semantics. Applying axiomatic semantics to proving program correctness and to construction of provably correct programs.
|
|
Course literature:
H. R. Nielson and F. Nielson. Semantics with Applications. John Wiley and Sons 1992.
Compendium compiled at the Department of Computer and Information Science.
|
|
Examination: |
|
Laboratory excercises Homework assignments |
1,5 p 2,5 p
|
| |
|
|
Course language is English.
Department offering the course: IDA.
Director of Studies: sas-sr@ida.liu.se
Examiner: Wlodek Drabent
Link to the course homepage at the department
Course Syllabus in Swedish
|