Goal-Directed Invariant Synthesis for Model Checking Modulo Theories

  • Silvio Ghilardi
  • Silvio Ranise
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5607)


We are interested in automatically proving safety properties of infinite state systems. We present a technique for invariant synthesis which can be incorporated in backward reachability analysis. The main theoretical result ensures that (under suitable hypotheses) our method is guaranteed to find an invariant if one exists. We also discuss heuristics that allow us to derive an implementation of the technique showing remarkable speed-ups on a significant set of safety problems in parametrised systems.


Model Check Reachable State Predicate Abstraction Broadcast Protocol Cache Coherence Protocol 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abdulla, P.A., Cerans, K., Jonsson, B., Tsay, Y.-K.: General decidability theorems for infinite-state systems. In: Proc. of LICS, pp. 313–321 (1996)Google Scholar
  2. 2.
    Abdulla, P.A., Delzanno, G., Ben Henda, N., Rezine, A.: Regular model checking without transducers (On efficient verification of parameterized systems). In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS, vol. 4424, pp. 721–736. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  3. 3.
    Abdulla, P.A., Delzanno, G., Rezine, A.: Parameterized verification of infinite-state processes with global conditions. In: Damm, W., Hermanns, H. (eds.) CAV 2007. LNCS, vol. 4590, pp. 145–157. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  4. 4.
    Beyer, D., Henzinger, T.A., Majumdar, R., Rybalchenko, A.: Invariant Synthesis for Combined Theories. In: Cook, B., Podelski, A. (eds.) VMCAI 2007. LNCS, vol. 4349, pp. 378–394. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  5. 5.
    Bradley, A.R., Manna, Z.: Property-Directed Incremental Invariant Generation. Formal Aspects of Computing (to appear, 2009)Google Scholar
  6. 6.
    Delzanno, G., Esparza, J., Podelski, A.: Constraint-based analysis of broadcast protocols. In: Flum, J., Rodríguez-Artalejo, M. (eds.) CSL 1999. LNCS, vol. 1683, pp. 50–66. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  7. 7.
    Enderton, H.B.: A Mathematical Introduction to Logic. Academic Press, New York (1972)MATHGoogle Scholar
  8. 8.
    Esparza, J., Finkel, A., Mayr, R.: On the verification of broadcast protocols. In: Proc. of LICS, pp. 352–359. IEEE Computer Society Press, Los Alamitos (1999)Google Scholar
  9. 9.
    Flanagan, C., Qadeer, S.: Predicate abstraction for software verification. In: Proc. of POPL 2002, pp. 191–202. ACM Press, New York (2002)Google Scholar
  10. 10.
    Ghilardi, S., Nicolini, E., Ranise, S., Zucchelli, D.: Towards SMT Model Checking of Array-Based Systems. In: Armando, A., Baumgartner, P., Dowek, G. (eds.) IJCAR 2008. LNCS, vol. 5195, pp. 67–82. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  11. 11.
    Ghilardi, S., Ranise, S.: Goal-directed Invariant Synthesis for Model Checking Modulo Theories. Technical Report RI325-09, Univ. di Milano (2009)Google Scholar
  12. 12.
    Ghilardi, S., Ranise, S., Valsecchi, T.: Light-Weight SMT-based Model-Checking. In: Proc. of AVOCS 2007-2008. ENTCS (2008)Google Scholar
  13. 13.
    Lahiri, S.K., Bryant, R.E.: Predicate Abstraction with Indexed Predicate. ACM Trans. on Comp. Logic 9(1) (2007)Google Scholar
  14. 14.
    Lynch, N.A.: Distributed Algorithms. Morgan Kaufmann, San Francisco (1996)MATHGoogle Scholar
  15. 15.
    Pnueli, A., Ruah, S., Zuck, L.D.: Automatic deductive verification with invisible invariants. In: Margaria, T., Yi, W. (eds.) TACAS 2001. LNCS, vol. 2031, pp. 82–97. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  16. 16.
    Ranise, S., Tinelli, C.: The SMT-LIB Standard: Version 1.2. Technical report, Dep. of Comp. Science, Iowa (2006), http://www.SMT-LIB.org/papers

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Silvio Ghilardi
    • 1
  • Silvio Ranise
    • 2
  1. 1.Dipartimento di InformaticaUniversità degli Studi di MilanoItaly
  2. 2.Dipartimento di InformaticaUniversità di VeronaItaly

Personalised recommendations