Time and alternation: an automata based framework to software model checking

In this paper, we present a class of powerful canonical timed alternating automata and a formalism for describing timed linear temporal logic to software model checking. Time and alternation, these two "metaphors" have dominated automata theory research in recent years. For real-time systems, it is important to augment untimed and asynchronous models of computation with the notion of time. Nevertheless, alternation is a powerful parallelism feature that has the potential to improve and reduce the state-space explosion problem in building large software model checking systems. We show that the dual connection between timed automata-theoretical and propositional-logic frameworks support and model software specifications. This can be established through languages over infinite timed words; and has a direct impact for expressing logical aspects and properties of model checking software systems.

[1]  Carsten Fritz,et al.  Constructing Büchi Automata from Linear Temporal Logic Using Simulation Relations for Alternating Büchi Automata , 2003, CIAA.

[2]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[3]  S. Safra On The Complexity of w-Automata , 1988 .

[4]  Wang Yi,et al.  UPPAAL - Now, Next, and Future , 2000, MOVEP.

[5]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[6]  Pierre Wolper,et al.  The Complementation Problem for Büchi Automata with Appplications to Temporal Logic , 1987, Theor. Comput. Sci..

[7]  Chandrasekhar Boyapati,et al.  Efficient software model checking of soundness of type systems , 2008, OOPSLA.

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

[9]  Henny B. Sipma,et al.  Deductive verification of alternating systems , 2008, Formal Aspects of Computing.

[10]  Abdelaziz Fellah,et al.  Deterministic Timed AFA: A New Class of Timed Alternating Finite Automata , 2007 .

[11]  S. Safra,et al.  On the complexity of omega -automata , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[12]  P. Cochat,et al.  Et al , 2008, Archives de pediatrie : organe officiel de la Societe francaise de pediatrie.

[13]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[14]  Klaus Havelund,et al.  Model checking programs , 2000, Proceedings ASE 2000. Fifteenth IEEE International Conference on Automated Software Engineering.

[15]  Orna Kupferman,et al.  Avoiding Determinization , 2006, 21st Annual IEEE Symposium on Logic in Computer Science (LICS'06).

[16]  Orna Kupferman,et al.  From complementation to certification , 2005, Theor. Comput. Sci..

[17]  Roel Wieringa,et al.  Extending CTL with Actions and Real Time , 2000, J. Log. Comput..

[18]  Joseph Y. Halpern,et al.  “Sometimes” and “not never” revisited: on branching versus linear time temporal logic , 1986, JACM.

[19]  Shou-Feng Wang,et al.  𝒫𝒮-regular languages , 2011, Int. J. Comput. Math..

[20]  Thomas Wilke,et al.  Simulation relations for alternating Büchi automata , 2005, Theor. Comput. Sci..

[21]  Moshe Y. Vardi Sometimes and Not Never Re-revisited: On Branching Versus Linear Time , 1998, CONCUR.

[22]  Sheng Yu,et al.  Constructions for alternating finite automata , 1990, Int. J. Comput. Math..

[23]  Fred Kröger,et al.  Temporal Logic of Programs , 1987, EATCS Monographs on Theoretical Computer Science.

[24]  Joël Ouaknine,et al.  On the decidability of metric temporal logic , 2005, 20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05).

[25]  Patrice Godefroid,et al.  Model checking for programming languages using VeriSoft , 1997, POPL '97.