Compositional Verification in Linear-Time Temporal Logic

In the compositional verification of a concurrent system, one seeks to deduce properties of the system from properties of its constituent modules. This paper supplements our previous work on the same subject to provide a comprehensive compositional framework in linear-time temporal logic. It has been shown by many that specifying properties of a module in the assumption-guarantee style is effective in achieving compositionality. We consider two forms of temporal formulas that correspond to two interpretations of an assumption-guarantee specification and investigate how they can be applied in compositional verification. We argue by examples that the two forms complement each other and both are needed to facilitate the compositional approach. We also show how to handle assumption-guarantee specifications where the assumption contains a liveness property.

[1]  Moshe Y. Vardi On the complexity of modular model checking , 1995, Proceedings of Tenth Annual IEEE Symposium on Logic in Computer Science.

[2]  Martín Abadi,et al.  Composing specifications , 1989, TOPL.

[3]  C. A. R. Hoare,et al.  An axiomatic basis for computer programming , 1969, CACM.

[4]  Amir Pnueli,et al.  Revised Lectures from the International Symposium on Compositionality: The Significant Difference , 1997 .

[5]  Orna Kupferman,et al.  Module Checking , 1996, Inf. Comput..

[6]  Edmund M. Clarke,et al.  Compositional model checking , 1989, [1989] Proceedings. Fourth Annual Symposium on Logic in Computer Science.

[7]  Martín Abadi,et al.  Conjoining specifications , 1995, TOPL.

[8]  Orna Grumberg,et al.  Model checking and modular verification , 1994, TOPL.

[9]  Bengt Jonsson,et al.  Assumption/Guarantee Specifications in Linear-Time Temporal Logic , 1996, Theor. Comput. Sci..

[10]  Amir Pnueli The Temporal Semantics of Concurrent Programs , 1981, Theor. Comput. Sci..

[11]  Orna Kupferman,et al.  Module Checking Revisited , 1997, CAV.

[12]  Amir Pnueli,et al.  Compositionality: The Significant Difference , 1999, Lecture Notes in Computer Science.

[13]  K. Mani Chandy,et al.  Parallel program design - a foundation , 1988 .

[14]  Ernst-Rüdiger Olderog,et al.  Formal Techniques in Real-Time and Fault-Tolerant Systems , 1996, Lecture Notes in Computer Science.

[15]  Hans Henrik Løvengreen,et al.  Refinement and Composition of Transition-based Rely-Guarantee Specification with Auxiliary Variables , 1990, FSTTCS.

[16]  Zohar Manna,et al.  Temporal Verification of Reactive Systems , 1995, Springer New York.

[17]  Glynn Winskel,et al.  Seminar on Concurrency , 1984, Lecture Notes in Computer Science.

[18]  K. Mani Chandy,et al.  Proofs of Networks of Processes , 1981, IEEE Transactions on Software Engineering.

[19]  Cliff B. Jones,et al.  Tentative steps toward a development method for interfering programs , 1983, TOPL.

[20]  Zohar Manna,et al.  Temporal verification of reactive systems - safety , 1995 .

[21]  Martín Abadi,et al.  A Logical View of Composition , 1993, Theor. Comput. Sci..

[22]  Bengt Jonsson,et al.  CONCUR ’94: Concurrency Theory , 1994, Lecture Notes in Computer Science.

[23]  Adnan Aziz,et al.  Formula-Dependent Equivalence for Compositional CTL Model Checking , 1994, CAV.

[24]  Antonio Cau,et al.  On Unifying Assumption-Commitment Style Proof Rules for Concurrency , 1994, CONCUR.

[25]  Thomas A. Henzinger,et al.  Local Liveness for Compositional Modeling of Fair Reactive Systems , 1995, CAV.

[26]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[27]  Leslie Lamport,et al.  The temporal logic of actions , 1994, TOPL.

[28]  Howard Barringer,et al.  Hierarchical Development of Cncurrent Systems in a Temporal Logic Framework , 1984, Seminar on Concurrency.

[29]  Pierre Collette,et al.  Application of the Composition Principle to Unity-like Specifications , 1993, TAPSOFT.

[30]  K. Mani Chandy Parallel program design , 1989 .

[31]  Leslie Lamport,et al.  Specifying Concurrent Program Modules , 1983, TOPL.

[32]  Jean-Pierre Jouannaud,et al.  TAPSOFT'93: Theory and Practice of Software Development , 1993, Lecture Notes in Computer Science.