CSC 2108F, Fall 2007
Tentative Reading List
This list may be changed during the semester.
Book
E. Clarke. O. Grumberg, D. Peled. Model Checking.
MIT Press 1999.
Formal Methods in General
These are not part of the course material, but I urge you to read this
as part of background knowledge.
-
J. Wing, "A Specifier's Introduction to Formal Methods",
IEEE Computer,
23(9):8-23, September 1990.
-
A. Hall, "Seven Myths of Formal Methods", IEEE Software, 23(9):11-19,
September 1990.
-
Edmund Clarke and Jeannette Wing, "Formal Methods: State of the Art
and Future Directions", ACM Computing Surveys, December 1996 (can be downloaded
from Jeannett's Web page: http://www.cs.cmu.edu/~wing)
-
Hossein Saiedian and others, "An Invitation to Formal Methods",
IEEE Computer, April 1996.
-
Tony Hoare, Jay Misra, "Verifying Compiler", July 2005.
Bounded Model Checking
- A. Biere, A. Cimatti, E. Clarke, Y. Zhu.
"Symbolic
model-checking without BDDs", in Proceedings of TACAS'99.
- M. Moskewicz, C. Madigan, Y. Zhao, L. Zhang, S. Malik. Chaff: Engineering an Efficient SAT Solver
- K. McMillan. Interpolation and SAT-based Model Checking, in
Proceedings of CAV'03.
- K. McMillan, N. Amla Automatic Abstraction
without Counterexamples, in Proceedings of TACAS'03
- J. Gu, P. Purdom, J. Franco, B. Wah. Algorithms
for the Satisfiability (SAT) Problem: A Survey, 1996.
Note: it is very long.
Shorter versions of this paper appeared as well, but we were unable to
find electronic versions of these.
Temporal logics, patterns
Counter-examples, abstraction and refinement
- Clarke, Grumberg, Jha, Lu, Veith.
Counterexample-guided
abstraction refinement. In Proceedings of CAV'00.
- There are several excellent surveys and talks on this area:
- Orna Grumberg, Abstractions and Reductions in Model Checking,
In NATO Science Series, Vol. 62, 2001, Marktoberdorf summer school.
- David Schmidt. Proving
Properties about Abstractions and Refinements, Bell Labs, Naperville,
IL, Feb. 2000 (it is a talk)
- David Schmidt [Talk].
Binary
relations for abstraction and refinement (17 November). Technical
Report 2000-3. Corrected version of the paper in Proc. Workshop on Refinement
and Abstraction, Amagasaaki, Japan, Nov. 1999, Elsevier Electronic
Notes in Theoretical Computer Science
- Yannis Kassios's presentation of some of these
results as part of a
course project in csc 2108
- D. Dams, R. Gerth, O. Grumberg, Abstract Interpretation of Reactive Systems,
ACM Transactions on Programming Languages and Systems (TOPLAS), 1997.
- A. Gurfinkel, M. Chechik. Proof-Like Counter-Examples. In Proceedings of
TACAS'03.
- M. Dwyer, J. Hatcliff, R. Joehanes, S. Laubach, C. Pasareanu,
Robby, H. Zheng, W. Visser. "Tool-supported Program Abstraction
for Finite-state Verification", in Proceedings of ICSE'01.
3-valued Model-Checking, Abstraction and Refinement
- S. Shoham, O. Grumberg. A Game-Based Framework for CTL Counter-Examples and 3-Valued Abstraction-Refinement, CAV'03.
- P. Godefroid, R. Jagadeesan, Automatic Abstraction Using Generalized
Model Checking, in CAV'02
- G. Bruns, P. Godefroid, Model Checking Partial State Spaces with 3-Valued Temporal Logics, CAV'99.
- G. Bruns, P. Godefroid, Generalized Model Checking: Reasoning about
Partial State Spaces, in Proceedings of CONCUR'00.
- A. Gurfinkel, M. Chechik, "Multi-Valued Model Checking via Classical Model Checking",
in CONCUR'03.
- M. Huth, R. Jagadeesan, D. Schmidt,
"Model transition systems: a foundation for three-valued program analysis"
in ESOP'01.
Software Model-Checking
T. Ball, A. Podelski, and S. Rajamani. (SLAM)
"Boolean and Cartesian Abstraction for Model Checking C Programs", STTT, 5(1),
2003.
T.A. Henzinger, R. Jhala, R. Majumdar, K.L. McMillan.
"Abstraction from Proofs" (BLAST), in POPL'04.
T.A. Henzinger, R. Jhala, R. Majumdar, G. Sutre.
"Lazy Abstraction" (BLAST), in POPL'02.
A. Gurfinkel, M. Chechik. "Yasm: Why Waste a Perfectly Good Abstraction?", 2005.
Automata-Based Model-checking
-
G.J. Holzmann, "The Model Checker SPIN", IEEE Transactions on Software
Engineering, 279-295, Vol. 23, No. 5, May 1997
-
W. Thomas, "Automata on Infinite Objects", Handbook on
Theoretical Computer Science, J. Van Leeuwen, ed.,
pp. 133-187, Elsevier Science, 1990.
-
D. Paun, M. Chechik, "On Closure Under Stuttering", Formal Aspects of Computing,
2003.
-
M. Vardi. Branching vs. Linear Time: Final Showdown, Version 1.0 and
Version 1.1, in Proceedings of ETAPS'01 (invited paper), 2001. Talk.
- O. Kupferman, M. Vardi, P. Wolper. "An Automata-Theoretic Approach to Branching-Time Model Checking, Journal of the ACM, Vol. 47, No. 2, pp.312-360,
2000. (If you have trouble accessing it, an older version of the paper is
available from Moshe Vardi's web page -- full version of CAV'94 paper.)
Query-Checking
- W. Chan. "Temporal-Logic Queries", In Proceedings of CAV'00,
LNCS Volume 1855, 2000
- G. Bruns and P. Godefroid. Temporal Logic Query Checking. In Proceedings of LICS'2001 (16th IEEE Symposium on Logic in Computer Science), pages 409-417, Boston, June 2001.
- A. Gurfinkel, M. Chechik, B. Devereux. Temporal Logic Query Checking: A Tool for
Model Exploration, IEEE Transactions on Software Engineering, 2003.
Games
Reasoning about Open and Modular Systems
READINGS TO BE ADDED
Vacuity Detection, Run-Time Verification
- A. Gurfinkel, M. Chechik. "How Vacuous is Vacuous", in Proceedings of TACAS'04.
- I. Beer, S. Ben-David, C. Eisner, Y. Rodeh. "Efficient Detection of Vacuity in
Temporal Model Checking", in FMSD, 18(2), 2001.
- M. Gheorghiu, A. Gurfinkel, M. Chechik. "Efficient Debugging of Environment Models", in Proceedings of FASE'07, 2007.
- MORE READINGS TO BE ADDED
Marsha Chechik
Last modified September 3, 2007