LARA

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
fv19:top [2019/06/18 22:06]
vkuncak
fv19:top [2019/08/13 17:44]
vkuncak
Line 6: Line 6:
  
 Instructors:​ [[http://​lara.epfl.ch/​~kuncak/​|Viktor Kuncak]] and [[https://​people.epfl.ch/​jad.hamza?​lang=en|Jad Hamza]] Instructors:​ [[http://​lara.epfl.ch/​~kuncak/​|Viktor Kuncak]] and [[https://​people.epfl.ch/​jad.hamza?​lang=en|Jad Hamza]]
 +
 +One of the verification tools used: [[http://​stainless.epfl.ch/​|Stainless]]
  
 ===== Introduction ===== ===== Introduction =====
Line 23: Line 25:
 developed, as opposed to after the fact. developed, as opposed to after the fact.
  
-In this course we will learn how to use formal verification tools and explain the theory and the practice behind ​building ​them.+Companies, research labs and research groups have developed 
 +proofs of correctness of operating system kernels, brake 
 +system for a metro line in Paris, compilers, databases, data 
 +structures, smartcard wallets, communication protocols, and 
 +distributed systems. 
 + 
 +In this course we will learn how to use formal verification tools and explain the theory and the practice behind them.
  
  
Line 53: Line 61:
   * Michael Huth and Mark Rayan: Logic in Computer Science - Modelling and Reasoning about Systems. Cambridge University Press 2004.   * Michael Huth and Mark Rayan: Logic in Computer Science - Modelling and Reasoning about Systems. Cambridge University Press 2004.
   * Handbook of Model Checking, https://​www.springer.com/​de/​book/​9783319105741 Springer 2018. Including Chapter Model Checking Security Protocols by David Basin.   * Handbook of Model Checking, https://​www.springer.com/​de/​book/​9783319105741 Springer 2018. Including Chapter Model Checking Security Protocols by David Basin.
-  * Tobias Nipkow, Gerwin Klein: Concrete ​Semantics ​with Isabelle/​HOL. http://​concrete-semantics.org/​concrete-semantics.pdf ​+  * Tobias Nipkow, Gerwin Klein: ​ ​[[http://​concrete-semantics.org|Concrete ​semantics]] ​with Isabelle/​HOL. http://​concrete-semantics.org/​concrete-semantics.pdf
   * Aaron Bradley and Zohar Manna: The Calculus of Computation - Decision Procedures with Applications to Verification,​ Springer 2007.   * Aaron Bradley and Zohar Manna: The Calculus of Computation - Decision Procedures with Applications to Verification,​ Springer 2007.
   * Nielson, Flemming, Nielson, Hanne R., Hankin, Chris: Principles of Program Analysis. ISBN 978-3-662-03811-6. Springer 1999.   * Nielson, Flemming, Nielson, Hanne R., Hankin, Chris: Principles of Program Analysis. ISBN 978-3-662-03811-6. Springer 1999.
Line 59: Line 67:
   * http://​logitext.mit.edu/​tutorial ​   * http://​logitext.mit.edu/​tutorial ​
  
-===== Additional Introduction and Background =====+===== Background =====
  
 +  * [[sav17:​exercises_01|Exercises on the background]]
   * Kenneth H. Rosen. Discrete Mathematics and Its Applications. E.g. 8th Edition.   * Kenneth H. Rosen. Discrete Mathematics and Its Applications. E.g. 8th Edition.
   * Formally Verified Software in the Real World. Communications of the ACM, October 2018. https://​cacm.acm.org/​magazines/​2018/​10/​231372-formally-verified-software-in-the-real-world/​fulltext ​   * Formally Verified Software in the Real World. Communications of the ACM, October 2018. https://​cacm.acm.org/​magazines/​2018/​10/​231372-formally-verified-software-in-the-real-world/​fulltext ​