Suggested Textbooks

[HR] Logic in Computer Science, by Michael Huth and Mark Ryan. Cambridge University Press, 2004 (2nd edition).
(Provides background knowledge in propositional and first order logic.)

Articles and Lecture Notes

[Barr13] M. Barr. Bookout vs. Toyota - 2005 Camry L4 Software Analysis. Report notes, 2013.
[Beck06] B. Beckert, T. Hoare, R. Hähnle, D. R. Smith, C. Green, S. Ranise, C. Tinelli, T. Ball, S. K. Rajamani. Intelligent Systems and Formal Methods in Software Engineering. In Trends and Controversies - IEEE Intelligent Systems Magazine, 21(6):71-81, November/December 2006.
(Restricted access.)
[Beck07] B. Beckert, R. Hähnle, P. Schmitt. (Eds.) Verification of Object-Oriented Software. The KeY Approach. Lecture Notes in Computer Science, Vol. 4334. Springer, 2007. (Also available electronically to UI students here.)
[Clar96] E. Clarke and J. M. Wing. Formal Methods: State of the Art and Future Directions. Technical Report CMU-CS-96-178. Department of Computer Science, Carnegie-Mellon University, 1996.
[Halb91] N. Halbwachs, P. Caspi. P. Raymond, and D. Pilaud. The synchronous data flow programming language LUSTRE. Proceedings of the IEEE. 79(9): 1305-1320. Sep 1991.
[Halb92] N. Halbwachs, F. Lagnier, C. Ratel. Programming and verifying real-time systems by means of the synchronous data-flow language LUSTRE. IEEE Transaction on Software Engineering. 18(9): 785-793. 1992.
[Halb99] N. Halbwachs and P. Raymond. Validation of Synchronous Reactive Systems: From Formal Verification to Automatic Testing. In Proceedings of the 5th Asian Computing Science Conference on Advances in Computing Science. Lecture Notes In Computer Science. Vol. 1742. Springer, 1999.
[Halb02] N. Halbwachs and P. Raymond. A Tutorial of Lustre. Technical report, 2002.
[Haxt10] A. Haxthausen. An Introduction to Formal Methods for the Development of Safety-critical Applications. Technical report, 2010.
[Herb11] L. Herbert, R. Leino, and J. Quaresma. Using Dafny, an Automatic Program Verifier. LASER International Summer School 2011, lecture notes.
[Koen12] J. Koenig and R. Leino. Getting started with Dafny: a guide. In Marktoberdorf 2011 lecture notes. To appear, 2012.
[vLam00] A. van Lamsweerde. Formal Specification: a Roadmap. The Future of Software Engineering ACM Press, 2000.
[Lein13] R. Leino. Developing Verified Programs with Dafny. Tutorial notes, ICSE 2013.
[Medv00] N. Medvidović. Introduction to Formal Methods. Class notes for Formal Methods in Software Architectures course, 2000.
[Roth07] A. Roth and P. Schmitt. Formal Specification. Chapter 5 of [Beck07].
[Wing95] J. M. Wing. Hints to Specifiers. Technical Report CMU-CS-95-118R. Department of Computer Science, Carnegie-Mellon University, 1995.
[Wood09] Woodcock, Larsen, Bicarregui, & Fitzgerald. Formal Methods: Practice and Experience. ACM Comput. Surv. 41(4), 2009.

Copyright: Cesare Tinelli, The University of Iowa, 2014   Credits