Dynamic Logic with Traces and Coinduction is a new program logic that has an explicit syntactic representation of both programs and their traces. This allows to prove properties involving programs as well as traces. Moreover, we use a coinductive semantics which makes it possible to reason about non-terminating programs and infinite traces, such as controllers and servers. We develop a sound sequent calculus for our logic that realizes symbolic execution of the programs under verification. The calculus has been developed with the goal of automation in mind. One of the novelties of the calculus is a coinductive invariant rule for while loops that is able to prove termination as well as non-termination.
CITATION STYLE
Bubel, R., Din, C. C., Hähnle, R., & Nakata, K. (2015). A dynamic logic with traces and coinduction. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 9323, pp. 307–322). Springer Verlag. https://doi.org/10.1007/978-3-319-24312-2_21
Mendeley helps you to discover research relevant for your work.