Differences between revisions 33 and 34
Revision 33 as of 2014-05-21 07:52:44
Size: 7852
Editor: rupak
Comment:
Revision 34 as of 2014-05-21 08:05:17
Size: 7955
Editor: jkloos
Comment: Added Timed Automata survey
Deletions are marked like this. Additions are marked like this.
Line 61: Line 61:
||<: rowbgcolor="#F5FAFA"> L9 ||<:> May 21 ||<:> SMT. Timed automata and difference constraints. || || [[attachment:Projects.pdf|Project Suggestions]] || || ||<: rowbgcolor="#F5FAFA"> L9 ||<:> May 21 ||<:> SMT. Timed automata and difference constraints. || || [[attachment:Projects.pdf|Project Suggestions]] || [[attachment:Timed Automata.pdf|Alur, Parthasarathy. Decision Problems for Timed Automata : A Survey]] ||

Course: Verification of Reactive Systems

Summer 2014

Introduction

This course focuses on the theory and practice of computer-aided verification, with an emphasis on software verification.

  • Prerequisites:

    • The course requires basic knowledge of algorithms, data structures, automata theory, computational complexity, and propositional logic. For example, you should know what it means for a formula to be satisfiable, how to determinize a finite automaton, what is depth first search, and what P and NP means. If you are not familiar with these concepts, please attend the two initial lectures on background material.
  • Textbook:

    • Class notes and research papers will be handed out.
  • Grading:

    • Grades will be awarded on the basis of a final exam. Permission to take the final exam will be given based on your performance in homework assignments and a project paper.

      Note: The permission to take the exam is derived from this year's homework. Having taking the course before does not count!

  • Projects:

    • Potential project topics, both theoretical and experimental, will be announced during the first few weeks of the course. Any suggestions for designing your own project according to your interests are very welcome. Every project will require a mentor. Projects will involve either surveying a field in depth, or using state of the art model checkers to verify large systems of interest, or to extend the capabilities of existing model checkers by implementing new algorithms or proving new theorems.
  • Teamwork:

    • Students may collaborate on homeworks, but each student needs to individually write up a solution set and be prepared to present it in class on the due date. Projects must be done in groups, but each person should have a clearly identifiable responsibility.
  • Logistics of Homwork:

    • Homework exercises will be handed out every two weeks (weekday TBA). Your answers must be handed in until the day specified in the homework, at the end of the lecture. Answers can be handed in personally to any of the teaching assistants.

Schedule

#

Date

Course topic / lecture

Homework

Materials

Video

L1

April 23

Introduction to formal verification

Lecture slides
De Millo, Lipton, and Perlis. Social processes and proofs of programs.

-

April 25

L2

April 28

Preliminaries: graph algorithms, automata theory

Homework 1. Need not be turned in.

Lecture notes

L3

April 30

Preliminaries: propositional logic

Lecture notes
Problem L (Labyrinth). Solution.
Try OCaml, Learn OCaml, Real World OCaml

T1

May 2

Solutions to Homework 1.

L4

May 5

The invariant verification problem. Enumerative invariant verification. Depth first search. Spin.

Notes from an unpublished text book by Rajeev Alur and Tom Henzinger:
The Reactive modules modeling language.
Invariant verification.
SPIN web page.

L5

May 7

Peterson's protocol. Heuristics for enumerative invariant verification. Symbolic invariant verification. Symbolic reachability.

Alur and Henzinger. Symbolic graph representation.

MPG (660 MB)

T2

May 9

Q & A

L6

May 12

Symbolic model checking with SAT

Malik and Weissenbacher. Boolean satisfiability solvers: Techniques and extensions.
Nieuwenhuis, Oliveras, and Tinelli. Solving SAT and SAT modulo theories: From an abstract Davis-Putnam-Logemann-Loveland procedure to DPLL(T).

MPG (678 MB)

L7

May 14

Implementing a SAT Solver. BDDs.

Homework 2. Due May 28, 2014.

T3

May 16

Q & A

L8

May 19

BDDs.

L9

May 21

SMT. Timed automata and difference constraints.

Project Suggestions

Alur, Parthasarathy. Decision Problems for Timed Automata : A Survey

T4

May 23

Q & A

May 26

Symbolic execution.

May 28

Inductive invariants. Abstraction.

T5

May 30

Solutions to Homework 2.

June 2

June 4

June 6

June 9

June 11

June 13

June 16

June 18

June 20

June 23

June 25

June 27

June 30

July 2

July 4

July 7

July 9

July 11

July 14

July 16

July 18

July 21

July 23

July 25

Courses/VRS (last edited 2014-07-24 13:41:45 by jkloos)