A Rewriting-Based Model Checker for the Linear Temporal Logic of Rewriting

This paper presents a model checker for LTLR, a subset of the temporal logic of rewriting TLR* extending linear temporal logic with spatial action patterns. Both LTLR and TLR* are very expressive logics generalizing well-known state-based and action-based logics. Furthermore, the semantics of TLR* is given in terms of rewrite theories, so that the concurrent systems on which the LTLR properties are model checked can be specified at a very high level with rewrite rules. This paper answers a nontrivial challenge, namely, to be able to build a model checker to model check LTLR formulas on rewrite theories with relatively little effort by reusing [email protected]?s LTL model checker for rewrite theories. For this, the reflective features of both rewriting logic and its Maude implementation have proved extremely useful.

[1]  Narciso Martí-Oliet,et al.  Maude: specification and programming in rewriting logic , 2002, Theor. Comput. Sci..

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

[3]  Joël Ouaknine,et al.  Concurrent software verification with states, events, and deadlocks , 2005, Formal Aspects of Computing.

[4]  Ekkart Kindler,et al.  ESTL: A Temporal Logic for Events and States , 1998, ICATPN.

[5]  Robin Milner,et al.  Algebraic laws for nondeterminism and concurrency , 1985, JACM.

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

[7]  Journal of the Association for Computing Machinery , 1961, Nature.

[8]  Radha Jagadeesan,et al.  Modal Transition Systems: A Foundation for Three-Valued Program Analysis , 2001, ESOP.

[9]  MeseguerJosé Conditional rewriting logic as a unified model of concurrency , 1992 .

[10]  José Luiz Fiadeiro,et al.  Towards a Verification Logic for Rewriting Logic , 1999, WADT.

[11]  Maurice H. ter Beek,et al.  An Action/State-Based Model-Checking Approach for the Analysis of Communication Protocols for Service-Oriented Applications , 2007, FMICS.

[12]  José Meseguer,et al.  The Temporal Logic of Rewriting: A Gentle Introduction , 2008, Concurrency, Graphs and Models.

[13]  Francisco Durán,et al.  Maude's module algebra , 2007, Sci. Comput. Program..

[14]  José Luiz Fiadeiro,et al.  A Verification Logic for Rewriting Logic , 2005, J. Log. Comput..

[15]  Patrick Viry,et al.  Equational rules for rewriting logic , 2002, Theor. Comput. Sci..

[16]  M. Clavel Reflection in Rewriting Logic: Metalogical Foundations and Metaprogramming Applications , 2000 .

[17]  Narciso Martí-Oliet,et al.  All About Maude - A High-Performance Logical Framework, How to Specify, Program and Verify Systems in Rewriting Logic , 2007, All About Maude.

[18]  Dexter Kozen,et al.  RESULTS ON THE PROPOSITIONAL’p-CALCULUS , 2001 .

[19]  Stephan Merz,et al.  Model Checking , 2000 .

[20]  Jean-Pierre Jouannaud,et al.  Rewrite Systems , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[21]  Rocco De Nicola,et al.  Action versus State based Logics for Transition Systems , 1990, Semantics of Systems of Concurrent Processes.

[22]  Luca Cardelli,et al.  A spatial logic for concurrency - II , 2004, Theor. Comput. Sci..

[23]  Jayadev Misra,et al.  A discipline of multiprogramming: programming theory for distributed applications , 2001 .

[24]  José Meseguer The Temporal Logic of Rewriting , 2007 .

[25]  J. Van Leeuwen,et al.  Handbook of theoretical computer science - Part A: Algorithms and complexity; Part B: Formal models and semantics , 1990 .

[26]  Charles Pecheur,et al.  Symbolic Model Checking of Logics with Actions , 2007, MoChArt.

[27]  Roberto Bruni,et al.  Semantic foundations for generalized rewrite theories , 2006, Theor. Comput. Sci..

[28]  S. Eker,et al.  Metalevel computation in Maude , 1998, WRLA.

[29]  José Meseguer,et al.  Equational abstractions , 2008, Theor. Comput. Sci..

[30]  José Meseguer,et al.  The Maude LTL Model Checker , 2004, WRLA.

[31]  Joël Ouaknine,et al.  State/Event Software Verification for Branching-Time Specifications , 2005, IFM.

[32]  Luca Cardelli,et al.  A spatial logic for concurrency (part I) , 2003, Inf. Comput..

[33]  S. Gnesi,et al.  A MODEL CHECKING VERIFICATION ENVIRONMENT FOR UML STATECHARTS , 2005 .

[34]  Stefania Gnesi,et al.  A Model Checking Approach for Verifying COWS Specifications , 2008, FASE.

[35]  Radu Mateescu Logiques temporelles basées sur actions pour la vérification des systèmes asynchrones , 2003, Tech. Sci. Informatiques.

[36]  Jayadev Misra A discipline of multiprogramming , 1996, CSUR.

[37]  Luís Caires Behavioral and Spatial Observations in a Logic for the pi-Calculus , 2004, FoSSaCS.

[38]  Joël Ouaknine,et al.  State/Event-Based Software Model Checking , 2004, IFM.

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