Compositional Concurrent Program Verification with RGITL

  • This thesis takes up the challenge of formal specification and verification of concurrent programs with shared memory. To this end, we use the logic Rely-Guarantee Interval Temporal Logic (RGITL) that has been natively implemented in the interactive theorem prover KIV. The logic incorporates several techniques that make the verification of such concurrent programs more tractable. In particular, temporal logic makes it possible to intuitively specify both safety and liveness requirements for these programs. Moreover, compositional reasoning breaks down the verification of a property of a concurrent program into smaller proof obligations that must be shown for the constituent subprograms. We mechanically derive various rely-guarantee rules for the compositional verification of partial/total correctness and absence of deadlock of concurrent programs in RGITL. Moreover, we evaluate the practical use of the logic in the domain of highly concurrent data structure implementations: We deriveThis thesis takes up the challenge of formal specification and verification of concurrent programs with shared memory. To this end, we use the logic Rely-Guarantee Interval Temporal Logic (RGITL) that has been natively implemented in the interactive theorem prover KIV. The logic incorporates several techniques that make the verification of such concurrent programs more tractable. In particular, temporal logic makes it possible to intuitively specify both safety and liveness requirements for these programs. Moreover, compositional reasoning breaks down the verification of a property of a concurrent program into smaller proof obligations that must be shown for the constituent subprograms. We mechanically derive various rely-guarantee rules for the compositional verification of partial/total correctness and absence of deadlock of concurrent programs in RGITL. Moreover, we evaluate the practical use of the logic in the domain of highly concurrent data structure implementations: We derive novel compositional proof methods for the central safety/liveness conditions of linearizability and lock-freedom. Finally, we show the application of our methods to verify a number of intricate data structure implementations correct.show moreshow less

Download full text files

Export metadata

Statistics

Number of document requests

Additional Services

Share in Twitter Search Google Scholar
Metadaten
Author:Bogdan Tofan
URN:urn:nbn:de:bvb:384-opus4-28555
Frontdoor URLhttps://opus.bibliothek.uni-augsburg.de/opus4/2855
Advisor:Wolfgang Reif
Type:Doctoral Thesis
Language:English
Publishing Institution:Universität Augsburg
Granting Institution:Universität Augsburg, Fakultät für Angewandte Informatik
Date of final exam:2014/07/11
Release Date:2014/10/07
Tag:formal methods; concurrency; compositional reasoning; temporal logic; rely-guarantee reasoning; concurrent data structure; linearizability; lock-freedom
GND-Keyword:Nebenläufigkeit; Algebraische Spezifikation; Programmverifikation; Temporale Logik
Institutes:Fakultät für Angewandte Informatik / Institut für Software & Systems Engineering
Dewey Decimal Classification:0 Informatik, Informationswissenschaft, allgemeine Werke / 00 Informatik, Wissen, Systeme / 004 Datenverarbeitung; Informatik
Licence (German):License LogoDeutsches Urheberrecht mit Print on Demand