Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2006
15451
HW 4
1
15414 Bug Catching Fall 2006
Instructor: Edmund Clarke
Teaching assistant: Himanshu Jain
Assignment 2
Due date: Thursday, December 7, 2006
1
CTL and LTL
In the following argue whether the given LTL and CTL formula are equivalent or not. If
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2006
15451
HW 3
1
15414 Bug Catching Fall 2006
Instructor: Edmund Clarke
Teaching assistant: Himanshu Jain
Assignment 2
Due date: Tuesday, November 14, 2006
1
CTL
This is a problem given in Huth and Ryans book. Consider the model M in Figure 1. Check
whether
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2006
15451
HW 2
1
15414 Bug Catching Fall 2006
Instructor: Edmund Clarke
Teaching assistant: Himanshu Jain
Assignment 2
Due date: Tuesday, October 10, 2006
Problem 2 can be done in groups of two.
1
Implication graphs
We will follow the notation from the GRAS
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2006
15451
HW 1
1
15414 Bug Catching Fall 2006
Instructor: Edmund Clarke
Teaching assistant: Himanshu Jain
Assignment 1
Due date: Tuesday, September 26, 2006
We will discuss homework related doubts on Tuesday, September 12, 2006
Some Reminders:
Read the Pol
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2006
1
15414 Bug Catching Fall 2006
Handout Sep 12, 2006
1
Principle of Structural Induction
Denition 1: A (propositional) atomic formula is a propositional letter,
(true), (false).
Denition 2: The set of propositional formulas is the smallest set P such
that
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2006
15451
HW 1
1
15414 Bug Catching Fall 2006
Instructor: Edmund Clarke
Teaching assistant: Himanshu Jain
Assignment 1 Solutions
1
Tautologies
For each of the following formula report if it is a tautology or give an assignment which falsies the
formula.
[Hi
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2006
GraphBased Algorithms
for Boolean Function Manipulation12
Randal E. Bryant3
Abstract
In this paper we present a new data structure for representing Boolean functions and an associated set of
manipulation algorithms. Functions are represented by directed,
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2006
Lecture 2: CTL Model Checking
What is model checking?
State transition systems
Computation Tree Logics
The logic CTL
Typical CTL formulas
Structure of the SMV model checker
SMV examples
1
Temporal Logic Model Checking
Specication Language: A propositional
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2006
Satisability Checking of Nonclausal Formulas using
General Matings
Himanshu Jain, Constantinos Bartzis, and Edmund Clarke
School of Computer Science, Carnegie Mellon University, Pittsburgh, PA
Abstract. Most stateoftheart SAT solvers are based on DPLL
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2007
15414
HW 5
1
Instructor: Edmund M. Clarke
Teaching Assistant: Michael Carl Tschantz
Assignment 5
1
Solving Sudoku using SAT
In Sudoku puzzles, one lls numbers 1 to 9 in the empty squares of a 99 grid such that every
row and every column contains the digi
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2007
15414
HW 6
1
Instructor: Edmund M. Clarke
Teaching Assistant: Michael Carl Tschantz
Assignment 6
1
Modeling an Automaton
This problem asks you to create two SMV models. Please email your models to the TA (mtschant@
cs.cmu.edu).
Your models will be tested
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2007
15414
HW 1
1
Assignment 1
1
Truth Tables
For each of the below pairs of formulae, construct a truth table that shows if the two formulae are
equivalent or not.
(a)
(x y) y and x (y y)
(b)
(x y) z and x (y z)
2
Validity
Model the following arguments symbo
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2007
15414
HW 2
1
Instructor: Edmund M. Clarke
Teaching Assistant: Michael Carl Tschantz
Assignment 2
1
DNF
Put (x y) (z x) into disjunctive normal form.
2
CNF
Let f be the DNF formula (u v) (w x).
(a) Find a formula in conjunctive normal form that is logical
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2007
15414
HW 7
1
Instructor: Edmund M. Clarke
Teaching Assistant: Michael Carl Tschantz
Homework Author: Arie Gurnkel
Assignment 7
1
Using CBMC
For this problem we will use the CBMC program analysis tool. You can run it simply by the
following command:
/afs/
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2007
JavaPathFinder Exercises
27th Nov 2007
Preamble
In each exercise, you will be required to write Java programs based on some starter files, and run them
through JPF. You will have to report your final Java files, and the time and memory required by JPF to
Bug Catching: Automated Program Verification and Testing
CS 15414

Fall 2007
Model Checking Overview
Edmund M. Clarke, Jr.
School of Computer Science
Carnegie Mellon University
Pittsburgh, PA 15213
What is Model Checking?
Cnd C
i y rawf
ord
Unfortunately, not that kind of model!
What is Model Checking?
The Rare Glitch Project
Bad