Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Verification Architecture Lecture 15: Error Conditions and Satisfiability Checking, Study notes of Computer Graphics

A set of lecture notes from a university course on verification architecture. The notes cover topics such as error conditions, satisfiability checking using sat solvers and ec checkers, cooperating decision procedures, and the theory of arrays. The lectures discuss various verification conditions, their negation, and the use of davis-putnam and nelson-oppen methods for satisfiability checking. The notes also include examples and exercises.

Typology: Study notes

Pre 2010

Uploaded on 08/19/2009

koofers-user-5q3-1
koofers-user-5q3-1 🇺🇸

10 documents

1 / 14

Toggle sidebar

Related documents


Partial preview of the text

Download Verification Architecture Lecture 15: Error Conditions and Satisfiability Checking and more Study notes Computer Graphics in PDF only on Docsity! Satisfying Error Conditions 3 Lecture 15 24 Feb 2004 290G - Lecture 15 1 Overview of Verification Architecture 24 Feb 2004 290G - Lecture 15 2 Program Specification Error Condition Verification Condition SAT solver Davis-Putnam negate conjunction of literals checkSatLitsArith EC satisfiability checker checkSatLits checkSatLitsEquality Nelson-Oppen cooperating decision procedures checkSatLitsArrays checkSatLitsArith: Difference Constraints 24 Feb 2004 290G - Lecture 15 5 • A special case of linear arithmetic • All constraints of the form: x + c <= y • c is a constant • Special variable z representing 0 • Example – x <= y – y+4 <= w – w-2 <= x – w+1 < =z x y w 0 4-2 z 1 checkSatLitsEquality 24 Feb 2004 290G - Lecture 15 6 • Consider: g(g(g(x)) = x . g(g(g(g(g(x))))) = x . g(x) ≠ x x g g g g g g g x g g g g g x g g g g g g x g g Contra- diction Overview of Verification Architecture 24 Feb 2004 290G - Lecture 15 7 Program Specification Error Condition Verification Condition SAT solver Davis-Putnam negate conjunction of literals checkSatLitsArith EC satisfiability checker checkSatLits checkSatLitsEquality Nelson-Oppen cooperating decision procedures checkSatLitsArrays Overview of Verification Architecture 24 Feb 2004 290G - Lecture 15 10 Program Specification Error Condition Verification Condition SAT solver Davis-Putnam negate conjunction of literals checkSatLitsArith EC satisfiability checker checkSatLits checkSatLitsEquality Nelson-Oppen cooperating decision procedures checkSatLitsArrays Theory of Arrays 24 Feb 2004 290G - Lecture 15 11 • Syntax and informal semantics: – If E denotes an address and µ a heap state then: – sel(µ,E) denotes the contents of memory cell – upd(µ,E,V) denotes a new heap state obtained from µ by writing V at address E • Decision procedure implements following rule – what if x = y is unknown? x = y ⇒ sel(upd(µ, x, v), y) = v x ≠ y ⇒ sel(upd(µ, x, v), y) = sel(µ, y) Theory of Arrays 24 Feb 2004 290G - Lecture 15 12 • Syntax and informal semantics: – If E denotes an address and µ a heap state then: – sel(µ,E) denotes the contents of memory cell – upd(µ,E,V) denotes a new heap state obtained from µ by writing V at address E • Decision procedure implements following rule – what if x = y is unknown? – non-convex theory: input facts entail disjunction of equalities, but do not entail any individual equality – can add SAT literal {x=y} x ≠ y - sel(upd(µ, x, v), y) = v x = y - sel(upd(µ, x, v), y) = sel(µ, y)
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved