Model checking
Top Cited Papers
- 1 November 2009
- journal article
- Published by Association for Computing Machinery (ACM) in Communications of the ACM
- Vol. 52 (11) , 74-84
- https://doi.org/10.1145/1592761.1592781
Abstract
Turing Lecture from the winners of the 2007 ACM A.M. Turing Award. In 1981, Edmund M. Clarke and E. Allen Emerson, working in the USA, and Joseph Sifakis working independently in France, authored seminal papers that founded what has become the highly successful field of model checking. This verification technology provides an algorithmic means of determining whether an abstract model---representing, for example, a hardware or software design---satisfies a formal specification expressed as a temporal logic (TL) formula. Moreover, if the property does not hold, the method identifies a counterexample execution that shows the source of the problem. The progression of model checking to the point where it can be successfully used for complex systems has required the development of sophisticated means of coping with what is known as the state explosion problem. Great strides have been made on this problem over the past 28 years by what is now a very large international research community. As a result many major hardware and software companies are beginning to use model checking in practice. Examples of its use include the verification of VLSI circuits, communication protocols, software device drivers, real-time embedded systems, and security algorithms. The work of Clarke, Emerson, and Sifakis continues to be central to the success of this research area. Their work over the years has led to the creation of new logics for specification, new verification algorithms, and surprising theoretical results. Model checking tools, created by both academic and industrial teams, have resulted in an entirely novel approach to verification and test case generation. This approach, for example, often enables engineers in the electronics industry to design complex systems with considerable assurance regarding the correctness of their initial designs. Model checking promises to have an even greater impact on the hardware and software industries in the future. --- Moshe Y. Vardi, Editor-in-ChiefKeywords
This publication has 29 references indexed in Scilit:
- Breaking up is hard to doACM Transactions on Software Engineering and Methodology, 2008
- Counterexample-guided abstraction refinement for symbolic model checkingJournal of the ACM, 2003
- SMCACM Transactions on Software Engineering and Methodology, 2000
- Property preserving abstractions for the verification of concurrent systemsFormal Methods in System Design, 1995
- Modalities for model checking: branching time logic strikes backScience of Computer Programming, 1987
- Automatic verification of finite-state concurrent systems using temporal logic specificationsACM Transactions on Programming Languages and Systems, 1986
- “Sometimes” and “not never” revisitedJournal of the ACM, 1986
- The temporal logic of branching timeActa Informatica, 1983
- Results on the propositional μ-calculusTheoretical Computer Science, 1983
- A lattice-theoretical fixpoint theorem and its applicationsPacific Journal of Mathematics, 1955