Automated Compositional Proofs for Real-Time Systems

We present a framework for formally proving that the composition of the behaviors of the different parts of a complex, real-time system ensures a desired global specification of the overall system. The framework is based on a simple compositional rely/guarantee circular inference rule, plus a small set of conditions concerning the integration of the different parts into a whole system. The reference specification language is the TRIO metric linear temporal logic. The novelty of our approach with respect to existing compositional frameworks — most of which do not deal explicitly with real-time requirements — consists mainly in its generality and abstraction from any assumptions about the underlying computational model and from any semantic characterizations of the temporal logic language used in the specification. Moreover, the framework deals equally well with continuous and discrete time. It is supported by a tool, implemented on top of the proof-checker PVS, to perform deduction-based verification through theorem-proving of modular real-time axiom systems. As an example of application, we show the verification of a real-time version of the old-fashioned but still relevant “benchmark” of the dining philosophers problem.

[1]  Yih-Kuen Tsay Compositional Verification in Linear-Time Temporal Logic , 2000, FoSSaCS.

[2]  Natarajan Shankar,et al.  Lazy Compositional Verification , 1997, COMPOS.

[3]  Dino Mandrioli,et al.  From formal models to formally based methods: an industrial experience , 1999, TSEM.

[4]  Leslie Lamport Composition: A Way to Make Proofs Harder , 1997, COMPOS.

[5]  Thomas A. Henzinger,et al.  Reactive Modules , 1999, Formal Methods Syst. Des..

[6]  Carlo A. Furia Compositional Proofs for Real-Time Modular Systems , 2003 .

[7]  Willem P. de Roever,et al.  The Need for Compositional Proof Systems: A Survey , 1997, COMPOS.

[8]  Stephen A. Cook,et al.  Corrigendum: Soundness and Completeness of an Axiom System for Program Verification , 1981, SIAM J. Comput..

[9]  Patrick Maier Compositional Circular Assume-Guarantee Rules Cannot Be Sound and Complete , 2003, FoSSaCS.

[10]  Edsger W. Dijkstra,et al.  Hierarchical ordering of sequential processes , 1971, Acta Informatica.

[11]  Angelo Gargantini,et al.  Automated deductive requirements analysis of critical systems , 2001, TSEM.

[12]  Jozef Hooman,et al.  Concurrency Verification: Introduction to Compositional and Noncompositional Methods , 2001, Cambridge Tracts in Theoretical Computer Science.

[13]  Carlo Ghezzi,et al.  TRIO: A logic language for executable specifications of real-time systems , 1990, J. Syst. Softw..

[14]  Martín Abadi,et al.  An Abstract Account of Composition , 1995, MFCS.

[15]  Jozef Hooman Compositional Verification of Real-Time Applications , 1997, COMPOS.

[16]  簡聰富,et al.  物件導向軟體之架構(Object-Oriented Software Construction)探討 , 1989 .

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

[18]  Elliott Mendelson,et al.  Introduction to Mathematical Logic , 1979 .

[19]  Natarajan Shankar,et al.  PVS: A Prototype Verification System , 1992, CADE.

[20]  Kedar S. Namjoshi,et al.  Abstract Patterns of Compositional Reasoning , 2003, CONCUR.

[21]  Stephen A. Cook,et al.  Soundness and Completeness of an Axiom System for Program Verification , 1978, SIAM J. Comput..

[22]  Bernd Finkbeiner,et al.  Deductive Verification of Modular Systems , 1997, COMPOS.

[23]  Kedar S. Namjoshi,et al.  On the Competeness of Compositional Reasoning , 2000, CAV.

[24]  Jonathan S. Ostroff,et al.  Composition and refinement of discrete real-time systems , 1999, TSEM.