Code Verification
From Safe Systems Programming to Proven – Correct Software
Who is the material made for?
This module targets developers and designers interested in programming languages and tools for increasing their confidence in future projects.
It will enable them to judge better trade – offs between using formal verification tools that yield hard safety and security guarantees and the development effort required to use those tools.
The module assumes some programming background, though not necessarily in systems programming languages ( e.g., C/C++ or Rust). A general computer science background is beneficial.
Introduction
Ensuring that a program safely and securely does what it is supposed to do is notoriously difficult . This module introduces a continuum of languages, tools, and techniques for increasing confidence into software.