Automated assume-guarantee reasoning for omega-regular systems and specifications

SI: NFM 2010

Abstract

We develop a learning-based automated assume-guarantee (AG) reasoning framework for verifying ω-regular properties of concurrent systems. We study the applicability of non-circular (AG-NC) and circular (AG-C) AG proof rules in the context of systems with infinite behaviors. In particular, we show that AG-NC is incomplete when assumptions are restricted to strictly infinite behaviors, while AG-C remains complete. We present a general formalization, called LAG, of the learning based automated AG paradigm. We show how existing approaches for automated AG reasoning are special instances of LAG. We develop two learning algorithms for a class of systems, called ∞-regular systems, that combine finite and infinite behaviors. We show that for ∞-regular systems, both AG-NC and AG-C are sound and complete. Finally, we show how to instantiate LAG to do automated AG reasoning for ∞-regular, and ω-regular, systems using both AG-NC and AG-C as proof rules.

Keywords

Verification Compositional reasoning Assume guarantee Learning Omega-regular languages 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Alur R, Madhusudan P, Nam W (2005) Symbolic compositional verification by learning assumptions. In: Etessami K, Rajamani SK (eds) Proceedings of the 17th international conference on computer aided verification (CAV ’05), New York, July 6–10, 2005. Lecture notes in computer science, vol 3576. Springer, Edinburgh, pp 548–562Google Scholar
  2. 2.
    Angluin D: Learning regular sets from queries and counterexamples. Inform Comput 75(2), 87–106 (1987)MathSciNetMATHCrossRefGoogle Scholar
  3. 3.
    Barringer H, Giannakopoulou D, Păsăreanu CS (2003) Proof rules for automated compositional verification through learning. In: Proceedings of the second workshop on specification and verification of component based systems (SAVCBS ’03), Helsinki, September 1–2, 2003. Iowa State University, Ames, pp 14–21Google Scholar
  4. 4.
    Calbrix H, Nivat M, Podelski A (1993) Ultimately periodic words of rational ω-languages. In: Brookes SD, Main MG, Melton A, Mislove MW, Schmidt DA (eds) Proceedings of the 9th international conference on mathematical foundations of programming semantics (MFPS ’93). Lecture notes in computer science, vol 802. Springer, New Orleans, pp 554–566Google Scholar
  5. 5.
    Chaki S, Sinha N (2006) Assume-guarantee reasoning for deadlock. In: Proceedings of the 6th international conference on formal methods in computer-aided design (FMCAD ’06), San Jose, November 12–16, 2006. IEEE Computer Society, Washington, DC, pp 134–144Google Scholar
  6. 6.
    Chaki S, Strichman O (2007) Optimized L* for assume-guarantee reasoning. In: Grumberg O, Huth M (eds) Proceedings of the 13th international conference on tools and algorithms for the construction and analysis of systems (TACAS ’07), Braga, March 24–April 1, 2007. Lecture notes in computer science, vol 4424. Springer, New York, pp 276–291Google Scholar
  7. 7.
    Chaki S, Clarke EM, Sinha N, Thati P (2005) Automated assume-guarantee reasoning for simulation conformance. In: Etessami K, Rajamani SK (eds) Proceedings of the 17th international conference on computer aided verification (CAV ’05). Lecture notes in computer science, vol 3576. Springer, Edinburgh, pp 534–547Google Scholar
  8. 8.
    Clarke E, Long D, McMillan K (1989) Compositional model checking. In: Proceedings of the 4th annual IEEE symposium on logic in computer science (LICS ’89), Pacific Grove, June 5–8, 1989. IEEE Computer Society, Washington, DC, pp 353–362Google Scholar
  9. 9.
    Cobleigh JM, Giannakopoulou D, Păsăreanu CS (2003) Learning assumptions for compositional verification. In: Garavel H, Hatcliff J (eds) Proceedings of the 9th international conference on tools and algorithms for the construction and analysis of systems (TACAS ’03), Warsaw, April 7–11, 2003. Lecture notes in computer science, vol 2619. Springer, New York, pp 331–346Google Scholar
  10. 10.
    Farzan A, Chen Y, Clarke E, Tsan Y, Wang B (2008) Extending automated compositional verification to the full class of omega-regular languages. In: Ramakrishnan CR, Rehof J (eds) Proceedings of the 14th international conference on tools and algorithms for the construction and analysis of systems (TACAS ’08), Budapest. Lecture notes in computer science, vol 4963. Springer, Berlin, pp 2–17Google Scholar
  11. 11.
    Gheorghiu M, Giannakopoulou D, Păsăreanu CS (2007) Refining interface alphabets for compositional verification. In: Grumberg O, Huth M (eds) Proceedings of the 13th international conference on tools and algorithms for the construction and analysis of systems (TACAS ’07), Braga, March 24–April 1, 2007. Lecture notes in computer science, vol 4424. Springer, New York, pp 292–307Google Scholar
  12. 12.
    Gold EM: Language identification in the limit. Inform Control 10(5), 447–474 (1967)MATHCrossRefGoogle Scholar
  13. 13.
    Grumberg O, Long DE: Model checking and modular verification. ACM Trans Program Lang Syst (TOPLAS) 16(3), 843–871 (1994)CrossRefGoogle Scholar
  14. 14.
    Henzinger TA, Qadeer S, Rajamani SK (2000) Decomposing refinement proofs using assume-guarantee reasoning. In: Proceedings of the 2000 international conference on computer-aided design (ICCAD ’00), San Jose. IEEE Computer Society, Washington, DC, pp 245–252Google Scholar
  15. 15.
    Hoare CAR: Communicating sequential processes. Prentice Hall, London (1985)MATHGoogle Scholar
  16. 16.
    Jones CB (1983) Specification and design of (Parallel) programs. In: Mason REA (ed) Proceedings of the 9th IFIP World Congress, Paris, France, vol 83. Information processing, pp 321–332Google Scholar
  17. 17.
    Maler O, Pnueli A: On the learnability of infinitary regular sets. Inform Comput 118(2), 316–326 (1995)MathSciNetMATHCrossRefGoogle Scholar
  18. 18.
    Misra J, Chandy KM: Proofs of networks of processes. IEEE Trans Softw Eng (TSE) 7(4), 417–426 (1981)MathSciNetCrossRefGoogle Scholar
  19. 19.
    Pnueli A: In transition from global to modular temporal reasoning about programs. Logics Models Concurrent Syst 13, 123–144 (1985)MathSciNetGoogle Scholar
  20. 20.
    Rivest RL, Schapire RE: Inference of finite automata using homing sequences. Inform Comput 103(2), 299–347 (1993)MathSciNetMATHCrossRefGoogle Scholar
  21. 21.
    Sinha N, Clarke E (2007) SAT-based compositional verification using lazy learning. In: Damm W, Hermanns H (eds) Proceedings of the 19th international conference on computer aided verification (CAV ’07), Berlin, July 3–7, 2007. Lecture notes in computer science, vol 4590. Springer, New York, pp 39–54Google Scholar
  22. 22.
    Tsay YK, Wang BY (2008) Automated compositional reasoning of intuitionistically closed regular properties. In: Ibarra OH, Ravikumar B (eds) Proceedings of the 13th international conference on implementation and applications of automata (CIAA ’08), San Francisco, July 21–24, 2008. Lecture notes in computer science, vol 5148. Springer, New York, pp 36–45Google Scholar
  23. 23.
    Wang BY (2007) Automatic derivation of compositional rules in automated compositional reasoning. In: Caires L, Vasconcelos VT (eds) Proceedings of the 18th international conference on concurrency theory (CONCUR ’07), Lisbon, September 3–8, 2007. Lecture notes in computer science, vol 4703. Springer, New York, pp 303–316Google Scholar

Copyright information

© Springer-Verlag London Limited 2011

Authors and Affiliations

  1. 1.Software Engineering InstituteCarnegie Mellon UniversityPittsburghUSA

Personalised recommendations