Ranked Predicate Abstraction for Branching Time: Complete, Incremental, and Precise

  • Harald Fecher
  • Michael Huth
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4218)


Predicate abstraction frameworks are a powerful means of combating the state explosion problem in model checking as they automatically synthesize abstract models that either verify compliance with a property, give rise to a genuine counter-example or produce a spurious counter-example that drives refinement of the abstract model. Prominent tools for safety (e.g. Blast) and termination (e.g. Terminator) checking rely on this approach. This paper presents such an abstraction framework for all properties of the modal μ-calculus based on ranked predicate abstraction. We show that our framework is incremental and confluent and should therefore allow good refinement heuristics. Moreover, ranked predicate abstractions are proved to be precise (i.e. optimal as abstractions) and also complete in that all properties true in a model are also true in a finite-state, ranked predicate abstraction of that model. This completeness relates to known characterizations of relative completeness for predicate abstraction with branching time.


Model Check Ranking Function Acceptance Condition Automaton State Kripke Structure 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alur, R., Henzinger, Th.A., Kupferman, O.: Alternating-time temporal logic. Journal of the ACM 49(5), 672–713 (2002)CrossRefMathSciNetGoogle Scholar
  2. 2.
    Ball, Th., Podelski, A., Rajamani, S.K.: Boolean and Cartesian Abstraction for Model Checking C Programs. In: Margaria, T., Yi, W. (eds.) ETAPS 2001 and TACAS 2001. LNCS, vol. 2031, pp. 268–283. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  3. 3.
    Bruns, G., Godefroid, P.: Model Checking Partial State Spaces with 3-Valued Temporal Logics. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, pp. 274–287. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  4. 4.
    Clarke, E.M., Emerson, E.A.: Synthesis of synchronization skeletons for branching time temporal logic. In: Kozen, D. (ed.) Logic of Programs 1981. LNCS, vol. 131, pp. 244–263. Springer, Heidelberg (1982)CrossRefGoogle Scholar
  5. 5.
    Clarke, E.M., Grumberg, O., Long, D.E.: Model checking and abstraction. ACM TOPLAS 16(5), 1512–1542 (1994)CrossRefGoogle Scholar
  6. 6.
    Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs. In: Proc. of POPL 1977, pp. 238–252. ACM Press, New York (1977)Google Scholar
  7. 7.
    Dams, D.: Abstract interpretation and partition refinement for model checking. PhD thesis, Technische Universiteit Eindhoven, The Netherlands (1996)Google Scholar
  8. 8.
    Dams, D., Gerth, R., Grumberg, O.: Abstract interpretation of reactive systems. ACM TOPLAS 19(2), 253–291 (1997)CrossRefGoogle Scholar
  9. 9.
    Dams, D., Gerth, R., Grumberg, O.: A Heuristic for the Automatic Generation of Ranking Functions. In: Proc. of the Workshop on Advances in Verification, Chicago (July 2000)Google Scholar
  10. 10.
    Dams, D., Namjoshi, K.: The Existence of Finite Abstractions for Branching Time Model Checking. In: Proc. of LICS 2004, pp. 335–344. IEEE Computer Society Press, Los Alamitos (2004)Google Scholar
  11. 11.
    Dams, D., Namjoshi, K.S.: Automata as Abstractions. In: Cousot, R. (ed.) VMCAI 2005. LNCS, vol. 3385, pp. 216–232. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  12. 12.
    Fang, Y., Piterman, N., Pnueli, A., Zuck, L.D.: Liveness with Incomprehensible Ranking. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 482–496. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  13. 13.
    Fecher, H., Huth, M.: Complete abstractions through extensions of disjunctive modal transition systems. Technical Report No. 0604, Institut für Informatik und Praktische Mathematik der Christian-Albrechts-Universität zu Kiel, 31 pages (March 2006)Google Scholar
  14. 14.
    Godefroid, P., Huth, M., Jagadeesan, R.: Abstraction-based Model Checking using Modal Transition Systems. In: Larsen, K.G., Nielsen, M. (eds.) CONCUR 2001. LNCS, vol. 2154, pp. 426–440. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  15. 15.
    Graf, S., Saidi, H.: Construction of abstract state graphs with PVS. In: Grumberg, O. (ed.) CAV 1997. LNCS, vol. 1254, pp. 72–83. Springer, Heidelberg (1997)Google Scholar
  16. 16.
    Huth, M., Jagadeesan, R., Schmidt, D.A.: Modal transition systems: a foundation for three-valued program analysis. In: Sands, D. (ed.) ESOP 2001 and ETAPS 2001. LNCS, vol. 2028, pp. 155–169. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  17. 17.
    Kesten, Y., Pnueli, A.: Verification by Augmented Finitary Abstraction. Inf. Comput. 163(1), 203–243 (2000)MATHCrossRefMathSciNetGoogle Scholar
  18. 18.
    Kozen, D.: Results on the propositional μ-calculus. Theoretical Computer Science 27, 333–354 (1983)MATHCrossRefMathSciNetGoogle Scholar
  19. 19.
    Kupferman, O., Vardi, M.Y.: Complementation Constructions for Nondeterministic Automata on Infinite Words. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 206–221. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  20. 20.
    Larsen, K.G., Thomsen, B.: A Modal Process Logic. In: Proc. of LICS 1988, pp. 203–210. IEEE Computer Society Press, Los Alamitos (1988)Google Scholar
  21. 21.
    Larsen, K.G., Xinxin, L.: Equation Solving Using Modal Transition Systems. In: Proc. of LICS 1990, pp. 108–117. IEEE Computer Society Press, Los Alamitos (1990)Google Scholar
  22. 22.
    Namjoshi, K.: Abstraction for Branching Time Properties. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp. 288–300. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  23. 23.
    Park, D.M.R.: Concurrency and automata on infinite sequences. In: Deussen, P. (ed.) GI-TCS 1981. LNCS, vol. 104, pp. 167–183. Springer, Heidelberg (1981)CrossRefGoogle Scholar
  24. 24.
    Quielle, J.P., Sifakis, J.: Specification and verification of concurrent systems in CESAR. In: Proc. of the 5th International Symposium on Programming (1981)Google Scholar
  25. 25.
    Wilke, Th.: Alternating tree automata, parity games, and modal μ-calculus. Bull. Soc. Math. Belg. 8(2), 359–391 (2001)MATHMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Harald Fecher
    • 1
  • Michael Huth
    • 2
  1. 1.Institut für InformatikChristian-Albrechts-Universität zu KielGermany
  2. 2.Department of ComputingImperial College LondonUnited Kingdom

Personalised recommendations