Characteristic formulae for liveness properties of non-terminating CakeML programs
Paper i proceeding, 2019

There are useful programs that do not terminate, and yet standard Hoare logics are not able to prove liveness properties about non-terminating programs. This paper shows how a Hoare-like programming logic framework (characteristic formulae) can be extended to enable reasoning about the I/O behaviour of programs that do not terminate. The approach is inspired by transfinite induction rather than coinduction, and does not require non-terminating loops to be productive. This work has been developed in the HOL4 theorem prover and has been integrated into the ecosystem of proof tools surrounding the CakeML programming language.

Non-termination

Liveness

Hoare logic

Program verification

Författare

Johannes Åman Pohjola

University of New South Wales (UNSW)

Henrik Rostedt

Chalmers, Data- och informationsteknik, Formella metoder

Magnus Myreen

Chalmers, Data- och informationsteknik, Formella metoder

Leibniz International Proceedings in Informatics, LIPIcs

18688969 (ISSN)

Vol. 141 32

10th International Conference on Interactive Theorem Proving, ITP 2019
Portland, USA,

Ämneskategorier

Inbäddad systemteknik

Datavetenskap (datalogi)

Datorsystem

DOI

10.4230/LIPIcs.ITP.2019.32

Mer information

Senast uppdaterat

2019-11-21