Contact    Jobs
Search:
Course Tutorials Exams Lecture Notes Problem Sets

Verification: Lecture Notes

  • Lecture 27, Feb 07, 2012. Induction-based model checking II: We discussed model checking based on automatic abstraction refinement, as implemented in the SLAB model checker. To prepare for the end-of-term exam, we talked about the final problem set and looked at some true/false questions.
    pdf slides

    Suggested background reading: Slicing Abstractions by Brückner/Dräger/Finkbeiner/Wehrheim.
  • Lecture 26, Feb 02, 2012. Induction-based model checking I: In the last two lectures of the course, we looked at two automatic verification methods that represent the current state-of-the-art. Both combine model checking with deduction, in particular with induction. In Lecture 26, we started with the IC3 algorithm.
    pdf slides

    Suggested background reading: IC3: Where Monolithic and Incremental Meet by Somenzi/Bradley (November 2011).
  • Lecture 25, Jan 31, 2012. Invariant generation: We finished the discussion on invariant generation and then generalized the deductive methods to reactive systems.
    pdf slides
  • Lecture 24, Jan 26, 2012. Combining decision procedures: We discussed the Nelson-Oppen Method for combining decision procedures and got started with invariant generation.
    pdf slides
  • Lecture 23, Jan 24, 2012. Congruence closure: We studied quantifier-free fragments of first-order theories and efficient methods to solve their satisfiability problem.
    pdf slides
  • Lecture 22, Jan 19, 2012. Quantifier elimination: We studied Cooper’s method for quantifier elimination over the integers.
    pdf slides
  • Lecture 21, Jan 17, 2012. First-order theories: We studied first-order theories that commonly appear in verification conditions, including the theories of equality, natural numbers, integers, rationals and reals, abstract data types, and arrays.
    pdf slides
  • Lecture 20, Jan 12, 2012. Mechanics of deductive verification II: Continuing the discussion from Lecture 19, we looked at termination proofs.
    pdf slides
  • Lecture 19, Jan 10, 2012. Mechanics of deductive verification I: Switching our perspective, we looked at the basic mechanics of deductive verification.
    pdf slides
  • Lecture 18, Dec 22, 2011. Verifying FlexRay: We developed model checking algorithms for networks of timed automata and discussed the application of timed model checking to the analysis of the FlexRay physical layer protocol. Developed by the FlexRay Consortium, a cooperation of leading companies including BMW, Bosch, Daimler, Freescale, General Motors, NXP Semiconductors, and Volkswagen, FlexRay was first employed in 2006 in the pneumatic damping system of BMW’s X5, and fully utilized in 2008 in the BMW 7 Series. The FlexRay specification was completed in 2009 and is widely expected to become the future standard for the automotive industry.
    pdf part 1 (model checking)
    pdf part 2 (FlexRay)
  • Lecture 17, Dec 15, 2011. Timed automata & midterm review: We studied timed automata as a model of real-time systems and then briefly reviewed the material covered so far — just in time for the midterm exam next week.
    pdf slides
  • Lecture 16, Dec 13, 2011. Stutter bisimulation: We investigated equivalence and preorder relations that mimick a transition by a sequence of transitions.
    pdf slides
  • Lecture 15, Dec 7, 2011. Simulation and Bisimulation: We studied the computation of simulation and bisimulation relations.
    pdf slides
  • Lecture 14, Dec 6, 2011. Implementation relations: We computed estimates for the completeness threshold of bounded model checking and then moved on to implementation relations.
    pdf slides
  • Lecture 13, Dec 1, 2011. Symbolic model checking: We developed symbolic model checking algorithms for CTL and LTL using BDDs and started to explore the bounded model checking approach based on SAT-solving.
    pdf slides

    Please note: bounded model checking is not covered in the Baier/Katoen textbook.
    Suggested background reading: Bounded Model Checking by Biere/Cimatti/Clarke/Strichman/Zhu,
    A Survey of Recent Advances in SAT-Based Formal Verification by Prasad/Biere/Gupta.
  • Lecture 12, Nov 29, 2011. Binary decision diagrams: We introduced binary decision diagrams (BDDs) as a symbolic representation for sets of states.
    pdf slides   pdf notes (thanks to Robin Wagner for the blackboard snapshots)
  • Lecture 11, Nov 24, 2011. CTL*: We discussed CTL model checking with fairness and then moved on to CTL*.
    pdf slides
  • Lecture 10, Nov 22, 2011. LTL vs. CTL: We compared the expressiveness and the model checking algorithms of the temporal logics LTL and CTL.
    pdf slides
  • Lecture 9, Nov 17, 2011. From LTL to CTL: We proved PSPACE-completeness of the LTL model checking problem and then moved on to Computation Tree Logic (CTL)
    pdf slides
  • Lecture 8, Nov 15, 2011. LTL Model checking: We developed an algorithm for model checking LTL properties, based on a translation from LTL formulas to generalized Büchi automata.
    pdf slides
  • Lecture 7, Nov 10, 2011. LTL: We studied linear-time temporal logic (LTL) and the connection between action-based and state-based fairness.
    pdf slides
  • Lecture 6, Nov 8, 2011. Model checking ω-regular properties: We reduced the problem of checking whether a transition system satisfies a given ω-regular property to the special case of persistence properties. Persistence properties can be checked efficiently using nested depth-first search.
    pdf slides
  • Lecture 5, Nov 3, 2011. Regular properties: We developed an automata-based machinery for the verification of linear-time properties.
    pdf slides
  • Lecture 4, Oct 27, 2011. Safety vs. liveness: We investigated the safety vs. liveness classification of linear-time properties in more detail.
    pdf slides
  • Lecture 3, Oct 25, 2011. Linear-time properties: We gave a formal semantics of (nano)Promela as a channel system and then moved on to linear-time properties. We defined linear-time safety and liveness.
    pdf slides
  • Lecture 2, Oct 20, 2011. Transition systems: We introduced transition systems as the fundamental computational model for model checking. We discussed the representation of various system types of interest (sequential circuits, concurrent systems, channel systems) as transition systems.
    pdf slides
  • Lecture 1, Oct 18, 2011. Introduction & course administration: We discussed the motivation for verification and the impact of automatic methods.
    pdf slides