The ComFoRT Reasoning Framework

  • Sagar Chaki
  • James Ivers
  • Natasha Sharygina
  • Kurt Wallnau
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3576)


Model checking is a promising technology for verifying critical behavior of software. However, software model checking is hamstrung by scalability issues and is difficult for software engineers to use directly. The second challenge arises from the gap between model checking concepts and notations, and those used by engineers to develop large-scale systems. ComFoRT [15] addresses both of these challenges. It provides a model checker, Copper, that implements a suite of complementary complexity management techniques to address state space explosion. But ComFoRT is more than a model checker. The ComFoRT reasoning framework includes additional support for building systems in a particular component-based idiom. This addresses transition issues.


Model Check Kripke Structure Custom Code Predicate Abstraction Deadlock Detection 
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.


  1. 1.
    Achermann, F., Lumpe, M., Schneider, J., Nierstrasz, O.: Piccola – a Small Composition Language. In: Formal Methods for Distributed Processing–A Survey of Object-Oriented Approaches (2002)Google Scholar
  2. 2.
    Ball, T., Rajamani, S.: Boolean programs: A model and process for software analysis. Technical Report 2000-14, Microsoft Research (February 2000)Google Scholar
  3. 3.
    Chaki, S., Clarke, E., Groce, A., Ouaknine, J., Strichman, O., Yorav, K.: Efficient verification of sequential and concurrent C programs. FMSD 25(2) (2004)Google Scholar
  4. 4.
    Chaki, S., Sharygina, N., Sinha, N.: Verification of evolving software. In: SAVCBS 2004: Worksh. on Specification and Verification of Component-based Systems (2004)Google Scholar
  5. 5.
    Clarke, E., Chaki, S., Grumberg, O., Touili, T., Ouaknine, J., Sharygina, N., Veith, H.: An expressive verification framework for state/event systems. Technical Report CS-2004-145, CMU (2004)Google Scholar
  6. 6.
    Clarke, E., Chaki, S., Ouaknine, J., Sharygina, N.: Automated, compositional and iterative deadlock detection. In: 2nd ACM-IEEE MEMOCODE 2004 (2004)Google Scholar
  7. 7.
    Clarke, E., Chaki, S., Ouaknine, J., Sharygina, N., Sinha, N.: State/event-based software model checking. In: Boiten, E.A., Derrick, J., Smith, G.P. (eds.) IFM 2004. LNCS, vol. 2999, pp. 128–147. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  8. 8.
    Clarke, E., Chaki, S., Sharygina, N., Sinha, N.: Dynamic component substitutability analysis. In: Fitzgerald, J.S., Hayes, I.J., Tarlecki, A. (eds.) FM 2005. LNCS, vol. 3582, pp. 512–528. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  9. 9.
    Clarke, E., Kroening, D., Lerda, F.: A tool for checking ANSI-C programs. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 168–176. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  10. 10.
    Clarke, E., Kroening, D., Sharygina, N., Yorav, K.: Predicate abstraction of ANSI-C programs using SAT. Formal Methods in System Design 25(2) (2004)Google Scholar
  11. 11.
    Dwyer, M., Avrunin, G., Corbett, J.: Patterns in property specifications for finite-state verification. In: Proceedings of the 21st ICSE (1999)Google Scholar
  12. 12.
    Hatcliff, J., Deng, X., Dwyer, M.B., Jung, G., Ranganath, V.P.: Cadena: An integrated development, analysis, and verification environment for component-based systems. In: ICSE, pp. 160–173 (2003)Google Scholar
  13. 13.
    Henzinger, T.A., Jhala, R., Majumdar, R., Sutre, G.: Lazy abstraction. In: Principles of Programming Languages 2002 (2002)Google Scholar
  14. 14.
  15. 15.
    Ivers, J., Sharygina, N.: Overview of ComFoRT: A Model Checking Reasoning Framework. Technical Report CMU/SEI-2004-TN-018, SEI, CMU (2004)Google Scholar
  16. 16.
    Ivers, J., Wallnau, K.: Preserving real concurrency. In: Correctness of model-based software composition Workshop (July 2003)Google Scholar
  17. 17.
    Wallnau, K.: Vol III: A Technology for Predictable Assembly from Certifiable Components (PACC). Technical Report CMU/SEI-2003-TR-009, SEI,CMU (2003)Google Scholar
  18. 18.
    Wallnau, K., Ivers, J.: Snapshot of CCL: A Language for Predictable Assembly. Technical Report CMU/SEI-2002-TR-031, SEI, CMU (2002)Google Scholar
  19. 19.
    Ward-Dutton, N.: Containers: A sign components are growing up. Application Development Trends 46, 41–44 (2000)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Sagar Chaki
    • 1
  • James Ivers
    • 1
  • Natasha Sharygina
    • 1
  • Kurt Wallnau
    • 1
  1. 1.Software Engineering InstituteCarnegie Mellon University 

Personalised recommendations