Proving that programs eventually do something good
- Speaker: Dr Byron Cook (Microsoft Research)
- Host: Andrei Voronkov
- 10th March 2010 at 14:15 in Lecture Theatre 1.4, Kilburn Building
Software failures can be sorted into two groups: those that cause the software to do something wrong (e.g. crashing), and those that result in the software not doing something useful (e.g. hanging). In recent years automatic tools have been developed which use mathematical proof techniques to certify that software cannot crash. Based on Alan Turing's proof of the halting problem's undecidablity, many have considered the dream of automatically proving the absence of hangs to be impossible. While not refuting Turing's original result, recent research now makes this dream a reality. This lecture will describe this recent work and its application to industrial software.