Access the full text.
Sign up today, get DeepDyve free for 14 days.
E. Emerson, Vineet Kahlon (2002)
Model Checking Large-Scale and Parameterized Resource Allocation Systems
A. Sánchez, César Sánchez (2014)
LEAP: A Tool for the Parametrized Verification of Concurrent Datatypes
R. Keller (1976)
Formal verification of parallel programsCommun. ACM, 19
K. Baukus, Y. Lakhnech, K. Stahl (2000)
Verifying Universal Properties of Parameterized Networks
A. Sánchez, César Sánchez (2010)
Decision Procedures for the Temporal Verification of Concurrent Lists
Nikolaj Bjørner, Anca Browne, Michael Colón, B. Finkbeiner, Z. Manna, H. Sipma, Tomás Uribe (2000)
Verifying Temporal Properties of Reactive Systems: A STeP TutorialFormal Methods in System Design, 16
Aquinas Hobor, A. Appel, Francesco Nardelli (2008)
Oracle Semantics for Concurrent Separation Logic
E. Clarke, O. Grumberg (1987)
Avoiding the state explosion problem in temporal logic model checking
J. Giesl, Marc Brockschmidt, Fabian Emmes, Florian Frohn, Carsten Fuhs, Carsten Otto, Martin Plücker, Peter Schneider-Kamp, Thomas Ströder, Stephan Swiderski, René Thiemann (2014)
Proving Termination of Programs Automatically with AProVE
A. Podelski, A. Rybalchenko (2004)
Transition invariantsProceedings of the 19th Annual IEEE Symposium on Logic in Computer Science, 2004.
M. Herlihy, N. Shavit (2020)
The art of multiprocessor programming
D. Sethi, Muralidhar Talupur, Daniel Schwartz-Narbonne, S. Malik (2012)
Parameterized Model Checking of Fine Grained Concurrency
P. O'Hearn, J. Reynolds, Hongseok Yang (2001)
Local Reasoning about Programs that Alter Data Structures
K. Baukus, Y. Lakhnech, K. Stahl (2002)
Parameterized Verification of a Cache Coherence Protocol: Safety and Liveness
F. Kröger (1987)
Temporal Logic of Programs, 8
S Miyano, T Hayashi (1984)
Alternating finite automata on ω-wordsTheor. Comput. Sci., 32
E. Emerson, Vineet Kahlon (2000)
Reducing Model Checking of the Many to the Few
Clark Barrett, R. Sebastiani, S. Seshia, C. Tinelli (2021)
Handbook of Satisfiability, 336
A. Pnueli, E. Shahar (2000)
Liveness and Acceleration in Parameterized Verification
T. Bultan, R. Gerber, W. Pugh (1997)
Symbolic Model Checking of Infinite State Systems Using Presburger Arithmetic
M. Browne, E. Clarke, O. Grumberg (1989)
Reasoning about Networks with Many Identical Finite State ProcessesInf. Comput., 81
N Dershowitz, N Lindenstrauss, Y Sagiv, A Serebrenik (2001)
A general framework for automatic termination analysis of logic programs. Applicable Algebra in EngineeringCommunication and Computing, 12
K. Apt, D. Kozen (1986)
Limits for Automatic Verification of Finite-State Concurrent SystemsInf. Process. Lett., 22
Martin Vechev, Eran Yahav, G. Yorsh (2009)
Experience with Model Checking Linearizability
Aaron Bradley, Z. Manna, H. Sipma (2006)
What's Decidable About Arrays?
P. O'Hearn (2004)
Resources, Concurrency and Local ReasoningTheor. Comput. Sci., 375
Z. Manna, Anca Browne, H. Sipma, Tomás Uribe (1999)
Visual Abstractions for Temporal Verification
J. Reynolds (2002)
Separation logic: a logic for shared mutable data structuresProceedings 17th Annual IEEE Symposium on Logic in Computer Science
Pavol Cerný, Arjun Radhakrishna, D. Zufferey, Swarat Chaudhuri, R. Alur (2010)
Model Checking of Linearizability of Concurrent List Implementations
A. Banerjee, D. Naumann, S. Rosenberg (2008)
Regional Logic for Local Reasoning about Global Invariants
L. Lamport (1974)
A new solution of Dijkstra's concurrent programming problemCommunications of the ACM, 17
A. Sánchez, César Sánchez (2011)
A Theory of Skiplists with Applications to the Verification of Concurrent Datatypes
Z. Manna, H. Sipma (1999)
Verification of Parameterized Systems by Dynamic Induction on Diagrams
A. Sánchez, César Sánchez (2014)
Parametrized Verification Diagrams2014 21st International Symposium on Temporal Representation and Reasoning
Azadeh Farzan, Zachary Kincaid (2012)
Verification of parameterized concurrent programs by modular reasoning about data and control
A. Goel, S. Krstic, Rebekah Leslie, M. Tuttle (2012)
SMT-Based System Verification with DVF
Anca Browne, Z. Manna, H. Sipma (1995)
Generalized Temporal Verification Diagrams
M. Bozzano, G. Delzanno (2002)
Beyond Parameterized Verification
S. Zhang (2011)
Scalable automatic linearizability checking2011 33rd International Conference on Software Engineering (ICSE)
G. Yorsh, A. Rabinovich, Shmuel Sagiv, A. Meyer, A. Bouajjani (2006)
A logic of reachable patterns in linked data-structuresJ. Log. Algebraic Methods Program., 73
I. Suzuki (1988)
Proving Properties of a Ring of Finite-State MachinesInf. Process. Lett., 28
Shuvendu Lahiri, S. Qadeer (2008)
Back to the future: revisiting precise program verification using SMT solvers
Thomas Wies, R. Piskac, Viktor Kunčak (2009)
Combining Theories with Shared Set Operations
Z. Manna, A. Pnueli (1995)
Temporal verification of reactive systems - safety
B. Cook, Alexey Gotsman, A. Podelski, A. Rybalchenko, Moshe Vardi (2007)
Proving that programs eventually do something good
Josh Berdine, T. Lev-Ami, R. Manevich, Ganesan Ramalingam, M. Sagiv (2008)
Thread Quantification for Concurrent Shape Analysis
K. Baukus, S. Bensalem, Y. Lakhnech, K. Stahl (2000)
Abstracting WS1S Systems to Verify Parameterized Networks
S. Brookes (2004)
A Semantics for Concurrent Separation Logic
A. Bouajjani, Cezara Dragoi, C. Enea, M. Sighireanu (2009)
A Logic-Based Framework for Reasoning about Composite Data Structures
A. Sánchez, César Sánchez (2014)
Formal Verification of Skiplists with Arbitrary Many Levels
S. Miyano, Takeshi Hayashi (1984)
Alternating Finite Automata on omega-WordsTheor. Comput. Sci., 32
A. Sánchez, César Sánchez (2013)
Parametrized invariance for infinite state processesActa Informatica, 52
H. Sipma (1999)
Diagram-based verification of discrete, real-time and hybrid systems
Z. Manna, A. Pnueli (1995)
Temporal Verification of Reactive Systems
L. Groves (2008)
Verifying Michael and Scott's Lock-Free Queue Algorithm using Trace Reduction
E. Clarke, Muralidhar Talupur, H. Veith (2008)
Proving Ptolemy Right: The Environment Abstraction Framework for Model Checking Concurrent Systems
Viktor Vafeiadis, M. Herlihy, T. Hoare, M. Shapiro (2006)
Proving correctness of highly-concurrent linearisable objects
(2000)
Noname manuscript No. (will be inserted by the editor) A General Framework for Automatic Termination Analysis of Logic Programs ⋆
This paper studies the problem of verifying temporal properties (including liveness properties) of parametrized concurrent systems executed by an unbounded number of threads. To solve this problem we introduce parametrized verification diagrams (PVDs), that extend the so-called generalized verification diagrams (GVDs) adding support for parametrized verification. Even though GVDs are known to be a sound and complete proof system for non-parametrized systems, the application of GVDs to parametrized systems requires using quantification or finding a potentially different diagram for each instantiation of the parameter (number of threads). As a consequence, the use of GVDs in parametrized verification requires discharging and proving either quantified formulas or an unbounded collection of verification conditions. Parametrized verification diagrams enable the use of asinglediagram to represent the proof that all possible instances of the parametrized concurrent system satisfy the given temporal specification. Checking the proof represented by a PVD requires proving only a finite collection of quantifier-free verification conditions. The PVDs we present here assume that the parametrized systems are symmetric, which covers a large class of concurrent and distributed systems, including concurrent data types. Our second contribution is an implementation of PVDs and its integration into Leap, our prototype theorem prover. Finally, we illustrate empirically, using Leap, the practical applicability of PVDs by building and checking proofs of liveness properties of mutual exclusion protocols and concurrent data structures. To the best of our knowledge, these are the first machine-checkable proofs of liveness properties of these concurrent data types.
Annals of Mathematics and Artificial Intelligence – Springer Journals
Published: Nov 15, 2016
Read and print from thousands of top scholarly journals.
Already have an account? Log in
Bookmark this article. You can see your Bookmarks on your DeepDyve Library.
To save an article, log in first, or sign up for a DeepDyve account if you don’t already have one.
Copy and paste the desired citation format or use the link below to download a file formatted for EndNote
Access the full text.
Sign up today, get DeepDyve free for 14 days.
All DeepDyve websites use cookies to improve your online experience. They were placed on your computer when you launched this website. You can change your cookie settings through your browser.