Tonight my colleague Byron Cook from MSR Cambridge will be speaking at the F#unctional Londoners meetup group

Byron Cook: Proving program termination with F#

The Skills Matter eXchange 116-120 Goswell RoadLondon (map)

In recent years we have seen great progress made in the area of  automatic source-level static analysis tools. However, most of today’s program verification tools are limited to properties that guarantee the absence of bad events (safety properties). Until now no formal software analysis tool has provided fully automatic support for proving properties that ensure that good events eventually happen (liveness properties).

In this talk, Dr Byron Cook presents such a tool, which handles liveness properties of large systems written in C. Liveness properties are described in an extension of the specification language used in the SDV system. We have used the tool to automatically prove critical liveness properties of Windows device drivers and found several previously unknown liveness bugs.