Programming Theory
Uppsala University
Uppsala
Start date:
End date:
Pace of study: 33 %
Published education catalogue
Education information from the published source. The education record and its time-bound offerings are kept separate.
Code: 1DT034
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 Spec#, 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.
120 credits with 30 credits in mathematics and 30 credits in computer science, including basic programming, data structures, and elementary logic. Proficiency in English equivalent to the Swedish upper secondary course English 6.
Each offering has its own dates and conditions. Closed offerings are retained as history and do not mean that a new application is open.
Uppsala University
Uppsala
Start date:
End date:
Pace of study: 33 %
Retrieved: .
Published: .
Publication version: 8e217193-f5fa-4778-b085-a4521fd03e8d
Checksum: 1b0dc54c0fc8a359f83ba9dc8f9d468479ce432de4c03bce3b8b33dd67fe3f6c
Last changed according to the source: 2026-03-09T12:14:25