Interleaved Programs and Rely-Guarantee Reasoning with ITL
Gerhard Schellhorn, Bogdan Andrei Tofan, Gidon Ernst, Wolfgang Reif · 2011
This paper presents a logic that extends basic ITL with explicit, interleaved programs. The calculus is based on symbolic execution, as previously described. We extend this former work here, by integrating the logic with higher-order logic, adding recursive procedures and rules to reason about fairness. Further, we show how rules for rely-guarantee reasoning can be derived and outline the application of some features to verify concurrent programs in practice. The logic is implemented in the interactive verification environment KIV.