Programming Theory

10 credits

Course, Master's level, 1DT034

Autumn 2023 Autumn 2023, Uppsala, 33%, On-campus, English

Autumn 2023 Autumn 2023, Uppsala, 33%, On-campus, English For exchange students

Autumn 2024 Autumn 2024, Uppsala, 33%, On-campus, English

Autumn 2024 Autumn 2024, Uppsala, 33%, On-campus, English For exchange students

About the course

The course introduces the basic principles of program analysis, verification, and the connection between mathematics and programming. The topics include propositional logic, predicate logic, equational reasoning, formal methods, formal specification languages, program verification, weakest preconditions, invariants, partial correctness, termination, total correctness, and program synthesis. The course also includes a lab package based on the Spec# which is a formal language which extends C\# with constructs such as preconditions, postconditions, and object invariants.

The lab exercises offer you the opportunity to apply the theoretical contents of the course and use the tool to carry out verification of several examples ranging from relatively simple to quite involved programs.

FOLLOW UPPSALA UNIVERSITY ON

facebook
instagram
twitter
youtube
linkedin