Branching-Time Temporal Logics with Minimal Model Quantifiers
Temporal logics are a well investigated formalism for the specification and verification of reactive systems. Using formal verification techniques, we can ensure the correctness of a system with respect to its desired behavior (specification), by verifying whether a model of the system satisfies a temporal logic formula modeling the specification.
From a practical point of view, a very challenging issue in using temporal logic in formal verification is to come out with techniques that automatically allow to select small critical parts of the system to be successively verified. Another challenging issue is to extend the expressiveness of classical temporal logics, in order to model more complex specifications.
In this paper, we address both issues by extending the classical branching-time temporal logic Ctl* with minimal model quantifiers (MCtl*). These quantifiers allow to extract, from a model, minimal submodels on which we check the specification (also given by an MCtl* formula).We show that MCtl* is strictly more expressive than Ctl*. Nevertheless, we prove that the model checking problem for MCtl. remains decidable and in particular in PSpace. Moreover, differently from Ctl*, we show that MCtl* does not have the tree model property, is not bisimulation-invariant and is sensible to unwinding. As far as the satisfiability concerns, we prove that MCtl* is highly undecidable. We further investigate the model checking and satisfiability problems for MCtl* sublogics, such as MPml, MCtl, and MCtl+, for which we obtain interesting results. Among the others, we show that MPml retains the finite model property and the decidability of the satisfiability problem.
KeywordsModel Check Minimal Model Temporal Logic Atomic Proposition Kripke Structure
Unable to display preview. Download preview PDF.
- [BMM09]Bianco, A., Mogavero, F., Murano, A.: Graded Computation Tree Logic. In: LICS 2009 (to appear, 2009)Google Scholar
- [ECJB97]Elseaidy, W.M., Cleaveland, R., Baugh Jr., J.W.: Modeling and Verifying Active Structural Control Systems. SCP 29(1-2), 99–122 (1997)Google Scholar
- [Eme90]Emerson, E.A.: Temporal and Modal Logic. In: Handbook of Theoretical Computer Science, Formal Models and Sematics (B), vol. B, pp. 995–1072 (1990)Google Scholar
- [FvD08]French, T., van Ditmarsch, H.P.: Undecidability for Arbitrary Public Announcement Logic. In: AIML, pp. 23–42 (2008)Google Scholar
- [Har84]Harel, D.: A Simple Highly Undecidable Domino Problem. In: CLC 1984(1984)Google Scholar
- [Kur94]Kurshan, R.P.: The Complexity of Verification. In: STOC 1994, pp. 365–371 (1994)Google Scholar
- [Lam80]Lamport, L.: “Sometime” is Sometimes “Not Never”: On the Temporal Logic of Programs. In: POPL 1980, pp. 174–185 (1980)Google Scholar
- [Pel96]Peled, D.: Combining Partial Order Reductions with On-the-Fly Model Checking.. FMSD 8(1), 39–64 (1996)Google Scholar
- [Pnu77]Pnueli, A.: The Temporal Logic of Programs.. In: FOCS 1977, pp. 46–57 (1977)Google Scholar
- [QS82]Queille, J.-P., Sifakis, J.: Specification and Verification of Concurrent Systems in CESAR. In: CISP 1982, pp. 337–351. Springer, Heidelberg (1982)Google Scholar
- [Wan61]Wang, H.: Proving Theorems by Pattern Recognition II. BSTJ 40, 1–41 (1961)Google Scholar