The Journey. Inductive Invariants. Söllerhaus IC3 FSIS. 2 of 21
|
|
- Marilyn Burke
- 5 years ago
- Views:
Transcription
1 ..
2 The Journey Inductive Invariants. Söllerhaus FSIS 2 of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification IC3
3 Inductive Invariants Finite State Inductive Strengthening IC3 Road ahead 3 of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
4 Inductive Invariants Finite State Inductive Strengthening IC3 Road ahead 4 of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
5 Inductivity A property P is inductive if it satisfies initiation and consection: Initiation: I P Consecution: P T P Inductive invariant [MP95] Given a property P of a system, if P is inductive on S it is an invariant on S. [MP95] Zohar Manna and Amir Pnueli.. Springer, of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
6 Inductivity A property P is inductive if it satisfies initiation and consection: Initiation: I P Consecution: P T P Inductive invariant [MP95] Given a property P of a system, if P is inductive on S it is an invariant on S. Not vice versa Even if P is an invariant on S, it may not be inductive. [MP95] Zohar Manna and Amir Pnueli.. Springer, of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
7 Inductive Invariants Finite State Inductive Strengthening IC3 Road ahead 6 of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
8 Proving a property P on a system S Proving that P holds on S in general is hard. But if P would be inductive, it would be trivial. If we only had a way to make P inductive Inductive Strengthening [BM07] Try to find a formula F that is an inductive strengthening of P, i.e. Initiation: I P F Consecution: P F T P F [BM07] Aaron R. Bradley and Zohar Manna. ``Checking Safety by Inductive Generalization of Counterexamples to Induction''. In:. 2007, pp of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
9 The bad guys An F -state that has a transition to a F -state is called (CTI) and is a direct wittness for why F is not inductive. Finding CTIs A CTI can be found using a simple satisfiability query sat(f T F ). If the query is sat, there exists a CTI and we can extract the state from the model of the solver (satisfying variable assignment). 8 of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
10 Handling CTIs After finding a CTI s we check whether there exists a for s. If not, we update P that we have to prove that s is not reachable. Otherwise we can add s to the strengthening F. Minimal inductive subclause Given a clause c, a clause e is a minimal inductive subclause of c iff 1. e is inductive relative to (P F ), i.e. P F e T e, and 2. there exists no d e that is inductive relative to (P F ). 9 of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
11 Happy End? FSIS terminates if either P F becomes inductive, or I P anymore. 10 of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
12 Inductive Invariants Finite State Inductive Strengthening IC3 Road ahead 11 of 21 IC3 Tim Lange Software Modeling and Verification
13 Finding F is hard In many cases it can be pretty hard to come up with such a strengthening. Especially finding a minimal inductive subclause e that is inductive relative to P F is hard. Solution Instead of computing F directly, compute a sequence F 0,, F k, called frames, to a find an inductive strengthening within these F i. [Bra11] [Bra11] Aaron R. Bradley. ``SAT-Based Model Checking without Unrolling''. In:. 2011, pp of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
14 Frames For a frame sequence F 0,, F k to be an inductive strengthening, the following must hold: I F 0 (1) F i F i+1 (2) F i P (3) F i T F i+1 (4) 13 of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
15 Outer loop bool prove Check 0- and 1-step counterexamples Initialise frames F 0 = I, F 1 = P k = 1 to Blocking phase Propagation phase Check termination 14 of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
16 Handling CTIs Given a CTI c in the last frame F k, we check whether c is reachable from F k 1 in one step. Thinking inductive: From an F k 1 state that is not c, do we stay in not c after one step? In other words: Is c inductive relative to F k : F k c T c How to check validity Validity of the implication can be solved as unsat(f k c T c). 15 of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
17 Obligation queue Given a proof obligation c at level i, check whether c is inductive relative to F i 1. If not, we can extract a witness from the solver. If it is inductive relative to F i 1 we can block it until frame F i. Propagation phase It might be the case, that a clause c F i which is not in F i+1 is also valid in F i+1, but might not yet be in there. Therefore after the blocking phase, try to push as many clauses to the following frame as possible. Termination If for any frame F i, 0 i < k it holds that F i = F i+1 then F i T F i+1 F i T F i 16 of 21 IC3 Tim Lange tim.lange@cs.rwth-aachen.de Software Modeling and Verification
18 17 of 21 IC3 Tim Lange Software Modeling and Verification
19 Inductive Invariants Finite State Inductive Strengthening IC3 Road ahead 18 of 21 IC3 Tim Lange Software Modeling and Verification
20 Optimizations of bit-level IC3 [HBS13; EMB11; Sud13] Applying IC3 to software model checking bit-vector encoding [WK13] ART-based [CG12] Horn-clause based [HB12] Predicate Abstraction [BBW14] Implicit Abstraction [Cim+14] [HBS13] Zyad Hassan, Aaron R. Bradley, and Fabio Somenzi. ``Better generalization in IC3''. In:. 2013, pp [EMB11] Niklas Eén, Alan Mishchenko, and Robert K. Brayton. ``Efficient implementation of property directed reachability''. In:. 2011, pp [Sud13] Martin Suda. ``Triggered Clause Pushing for IC3''. In: abs/ (2013) [WK13] Tobias Welp and Andreas Kuehlmann. ``QF BV model checking with property directed reachability''. In:. 2013, pp [CG12] Alessandro Cimatti and Alberto Griggio. ``Software Model Checking via IC3''. In:. 2012, pp [HB12] Kryštof Hoder and Nikolaj Bjørner. ``Generalized Property Directed Reachability''. In:. 2012, pp isbn: [BBW14] Johannes Birgmeier, Aaron R. Bradley, and Georg Weissenbacher. ``Counterexample to Induction-Guided Abstraction-Refinement (CTIGAR)''.. In:. 2014, pp [Cim+14] Alessandro Cimatti et al. ``IC3 Modulo Theories via Implicit Predicate Abstraction''. In:. 2014, pp of 21 IC3 Tim Lange Software Modeling and Verification
21 Optimizations of bit-level IC3 [HBS13; EMB11; Sud13] Applying IC3 to software model checking bit-vector encoding [WK13] ART-based [CG12] Horn-clause based [HB12] Predicate Abstraction [BBW14] Implicit Abstraction [Cim+14] [HBS13] Zyad Hassan, Aaron R. Bradley, and Fabio Somenzi. ``Better generalization in IC3''. In:. 2013, pp [EMB11] Niklas Eén, Alan Mishchenko, and Robert K. Brayton. ``Efficient implementation of property directed reachability''. In:. 2011, pp [Sud13] Martin Suda. ``Triggered Clause Pushing for IC3''. In: abs/ (2013) [WK13] Tobias Welp and Andreas Kuehlmann. ``QF BV model checking with property directed reachability''. In:. 2013, pp [CG12] Alessandro Cimatti and Alberto Griggio. ``Software Model Checking via IC3''. In:. 2012, pp [HB12] Kryštof Hoder and Nikolaj Bjørner. ``Generalized Property Directed Reachability''. In:. 2012, pp isbn: [BBW14] Johannes Birgmeier, Aaron R. Bradley, and Georg Weissenbacher. ``Counterexample to Induction-Guided Abstraction-Refinement (CTIGAR)''.. In:. 2014, pp [Cim+14] Alessandro Cimatti et al. ``IC3 Modulo Theories via Implicit Predicate Abstraction''. In:. 2014, pp of 21 IC3 Tim Lange Software Modeling and Verification
22 .
23 Johannes Birgmeier, Aaron R. Bradley, and Georg Weissenbacher. ``Counterexample to Induction-Guided Abstraction-Refinement (CTIGAR)''. In:. 2014, pp Aaron R. Bradley and Zohar Manna. ``Checking Safety by Inductive Generalization of Counterexamples to Induction''. In:. 2007, pp Aaron R. Bradley. ``SAT-Based Model Checking without Unrolling''. In:. 2011, pp Alessandro Cimatti and Alberto Griggio. ``Software Model Checking via IC3''. In:. 2012, pp Alessandro Cimatti et al. ``IC3 Modulo Theories via Implicit Predicate Abstraction''. In:. 2014, pp Niklas Eén, Alan Mishchenko, and Robert K. Brayton. ``Efficient implementation of property directed reachability''. In:. 2011, pp Kryštof Hoder and Nikolaj Bjørner. ``Generalized Property Directed Reachability''. In:. 2012, pp isbn: Zyad Hassan, Aaron R. Bradley, and Fabio Somenzi. ``Better generalization in IC3''. In:. 2013, pp Zohar Manna and Amir Pnueli.. Springer, Martin Suda. ``Triggered Clause Pushing for IC3''. In: abs/ (2013). Tobias Welp and Andreas Kuehlmann. ``QF BV model checking with property directed reachability''. In:. 2013, pp of 21 IC3 Tim Lange Software Modeling and Verification
SAT-Based Verification with IC3: Foundations and Demands
SAT-Based Verification with IC3: Foundations and Demands Aaron R. Bradley ECEE, CU Boulder & Summit Middle School SAT-Based Verification with IC3:Foundations and Demands 1/55 Induction Foundation of verification
More informationIC3 and Beyond: Incremental, Inductive Verification
IC3 and Beyond: Incremental, Inductive Verification Aaron R. Bradley ECEE, CU Boulder & Summit Middle School IC3 and Beyond: Incremental, Inductive Verification 1/62 Induction Foundation of verification
More informationUnderstanding IC3. Aaron R. Bradley. ECEE, CU Boulder & Summit Middle School. Understanding IC3 1/55
Understanding IC3 Aaron R. Bradley ECEE, CU Boulder & Summit Middle School Understanding IC3 1/55 Further Reading This presentation is based on Bradley, A. R. Understanding IC3. In SAT, June 2012. http://theory.stanford.edu/~arbrad
More informationAn Incremental Approach to Model Checking Progress Properties
An Incremental Approach to Model Checking Progress Properties Aaron Bradley Fabio Somenzi Zyad Hassan Yan Zhang Department of Electrical, Computer, and Energy Engineering University of Colorado at Boulder
More informationSolving Constrained Horn Clauses by Property Directed Reachability
Solving Constrained Horn Clauses by Property Directed Reachability Arie Gurfinkel HCVS 2017: 4 th Workshop on Horn Clauses for Verification and Synthesis Automated Verification Deductive Verification A
More informationUnderstanding IC3. Aaron R. Bradley. ECEE Department, University of Colorado at Boulder
Understanding IC3 Aaron R. Bradley ECEE Department, University of Colorado at Boulder Email: bradleya@colorado.edu Abstract. The recently introduced model checking algorithm IC3 has proved to be among
More informationPushing to the Top FMCAD 15. Arie Gurfinkel Alexander Ivrii
Pushing to the Top FMCAD 15 Arie Gurfinkel Alexander Ivrii Safety Verification Consider a verification problem (Init, Tr, Bad) The problem is UNSAFE if and only if there exists a path from an Init-state
More informationor simply: IC3 A Simplified Description
Incremental Construction of Inductive Clauses for Indubitable Correctness or simply: IC3 A Simplified Description Based on SAT-Based Model Checking without Unrolling Aaron Bradley, VMCAI 2011 Efficient
More informationIC3 Software Model Checking on Control Flow Automata
IC3 Software Model Checking on Control Flow Automata Tim Lange RWTH Aachen University, Germany tim.lange@cs.rwth-aachen.de Martin R. Neuhäußer Siemens AG, Germany martin.neuhaeusser@siemens.com Thomas
More informationProperty-Directed k-induction
Property-Directed k-induction Dejan Jovanović SRI International dejan.jovanovic@sri.com Bruno Dutertre SRI International bruno.dutertre@sri.com Abstract IC3 and k-induction are commonly used in automated
More informationIC3, PDR, and Friends
IC3, PDR, and Friends Arie Gurfinkel Department of Electrical and Computer Engineering University of Waterloo arie.gurfinkel@uwaterloo.ca Abstract. We describe the IC3/PDR algorithms and their various
More informationIC3: Where Monolithic and Incremental Meet
IC3: Where Monolithic and Incremental Meet Fabio Somenzi Dept. of Electrical, Computer, and Energy Engineering University of Colorado at Boulder Email: fabio@colorado.edu Aaron R. Bradley Summit Charter
More informationIC3 Modulo Theories via Implicit Predicate Abstraction
IC3 Modulo Theories via Implicit Predicate Abstraction Alessandro Cimatti, Alberto Griggio, Sergio Mover, and Stefano Tonetta Fondazione Bruno Kessler {cimatti,griggio,mover,tonettas}@fbk.eu Abstract.
More informationFMCAD 2013 Parameter Synthesis with IC3
FMCAD 2013 Parameter Synthesis with IC3 A. Cimatti, A. Griggio, S. Mover, S. Tonetta FBK, Trento, Italy Motivations and Contributions Parametric descriptions of systems arise in many domains E.g. software,
More informationTrading-off incrementality and dynamic restart of multiple solvers in IC3
Trading-off incrementality and dynamic restart of multiple solvers in IC3 G. Cabodi (*), A. Mishchenko (**), M. Palena (*) (*) Dip. di Automatica ed Informatica Politecnico di Torino - Torino, Italy (**)
More informationIncremental, Inductive Model Checking
University of Colorado, Boulder CU Scholar Electrical, Computer & Energy Engineering Graduate Theses & Dissertations Electrical, Computer & Energy Engineering Spring 4-1-2014 Incremental, Inductive Model
More informationProperty Checking By Logic Relaxation
Property Checking By Logic Relaxation Eugene Goldberg eu.goldberg@gmail.com arxiv:1601.02742v1 [cs.lo] 12 Jan 2016 Abstract We introduce a new framework for Property Checking (PC) of sequential circuits.
More informationGeneralized Property Directed Reachability
Generalized Property Directed Reachability Kryštof Hoder (1) and Nikolaj Bjørner (2) (1) The University of Manchester (2) Microsoft Research, Redmond Abstract. The IC3 algorithm was recently introduced
More informationAn Incremental Approach to Model Checking Progress Properties
An Incremental Approach to Model Checking Progress Properties Aaron R. Bradley, Fabio Somenzi, Zyad Hassan, Yan Zhang Dept. of Electrical, Computer, and Energy Engineering University of Colorado at Boulder
More informationIncremental, Inductive CTL Model Checking
Incremental, Inductive CTL Model Checking Zyad Hassan, Aaron R. Bradley, and Fabio Somenzi ECEE Department, University of Colorado at Boulder Email: {zyad.hassan,bradleya,fabio}@colorado.edu Abstract.
More informationarxiv: v1 [cs.lo] 29 May 2014
Under consideration for publication in Theory and Practice of Logic Programming 1 arxiv:1405.7739v1 [cs.lo] 29 May 2014 (Quantified) Horn Constraint Solving for Program Verification and Synthesis Andrey
More informationProperty Directed Abstract Interpretation
Property Directed Abstract Interpretation Noam Rinetzky 1 and Sharon Shoham 2 1 Tel Aviv University, Israel 2 The Academic College of Tel Aviv Yaffo, Israel Abstract. Recently, Bradley proposed the PDR/IC3
More informationSAT-based Model Checking: Interpolation, IC3, and Beyond
SAT-based Model Checking: Interpolation, IC3, and Beyond Orna GRUMBERG a, Sharon SHOHAM b and Yakir VIZEL a a Computer Science Department, Technion, Haifa, Israel b School of Computer Science, Academic
More informationScalable and Accurate Verification of Data Flow Systems. Cesare Tinelli The University of Iowa
Scalable and Accurate Verification of Data Flow Systems Cesare Tinelli The University of Iowa Overview AFOSR Supported Research Collaborations NYU (project partner) Chalmers University (research collaborator)
More informationCS156: The Calculus of Computation
CS156: The Calculus of Computation Zohar Manna Winter 2010 It is reasonable to hope that the relationship between computation and mathematical logic will be as fruitful in the next century as that between
More informationProperty Checking Without Invariant Generation
Property Checking Without Invariant Generation Eugene Goldberg eu.goldberg@gmail.com arxiv:1602.05829v1 [cs.lo] 18 Feb 2016 Abstract We introduce ProveProp, a procedure for proving safety properties. ProveProp
More informationSAT Modulo Monotonic Theories
SAT Modulo Monotonic Theories Sam Bayless, Noah Bayless, Holger H. Hoos, Alan J. Hu University of British Columbia Point Grey Secondary School Sam Bayless (UBC) SAT Modulo Monotonic Theories / 0 Procedural
More informationHardware Model Checking Competition Armin Biere, Tom van Dijk, Keijo Heljanko FMCAD th International Conference on
Hardware Model Checking Competition 2017 Armin Biere, Tom van Dijk, Keijo Heljanko RiSE FMCAD 17 17th International Conference on Formal Methods in Computer-Aided Design Vienna, Austria October 5, 2017
More informationLazy Annotation Revisited
Lazy Annotation Revisited MSR-TR-2014-65 Kenneth L. McMillan Micrsoft Research Abstract Lazy Annotation is a method of software model checking that performs a backtracking search for a symbolic counterexample.
More informationTermination Analysis of Loops
Termination Analysis of Loops Zohar Manna with Aaron R. Bradley Computer Science Department Stanford University 1 Example: GCD Algorithm gcd(y 1, y 2 ) = gcd(y 1 y 2, y 2 ) if y 1 > y 2 gcd(y 1, y 2 y
More informationInformation Flow Analysis via Path Condition Refinement
Information Flow Analysis via Path Condition Refinement Mana Taghdiri, Gregor Snelting, Carsten Sinz Karlsruhe Institute of Technology, Germany FAST September 16, 2010 KIT University of the State of Baden-Wuerttemberg
More informationCS256/Winter 2009 Lecture #6. Zohar Manna
CS256/Winter 2009 Lecture #6 Zohar Manna Chapter 1 Invariance: Proof Methods For assertion q and SPL program P show P Õ ¼ q (i.e., q is P-invariant) 6-1 Proving Invariances Definitions Recall: the variables
More informationLecture Notes on SAT Solvers & DPLL
15-414: Bug Catching: Automated Program Verification Lecture Notes on SAT Solvers & DPLL Matt Fredrikson André Platzer Carnegie Mellon University Lecture 10 1 Introduction In this lecture we will switch
More informationSelfless Interpolation for Infinite-State Model Checking
Selfless Interpolation for Infinite-State Model Checking Tanja Schindler 1 and Dejan Jovanović 2 1 University of Freiburg 2 SRI International Abstract. We present a new method for interpolation in satisfiability
More informationNotes. Corneliu Popeea. May 3, 2013
Notes Corneliu Popeea May 3, 2013 1 Propositional logic Syntax We rely on a set of atomic propositions, AP, containing atoms like p, q. A propositional logic formula φ Formula is then defined by the following
More informationThe Calculus of Computation: Decision Procedures with Applications to Verification. Part I: FOUNDATIONS. by Aaron Bradley Zohar Manna
The Calculus of Computation: Decision Procedures with Applications to Verification Part I: FOUNDATIONS by Aaron Bradley Zohar Manna 1. Propositional Logic(PL) Springer 2007 1-1 1-2 Propositional Logic(PL)
More informationTHEORY OF SYSTEMS MODELING AND ANALYSIS. Henny Sipma Stanford University. Master class Washington University at St Louis November 16, 2006
THEORY OF SYSTEMS MODELING AND ANALYSIS Henny Sipma Stanford University Master class Washington University at St Louis November 16, 2006 1 1 COURSE OUTLINE 8:37-10:00 Introduction -- Computational model
More informationInterpolation and Symbol Elimination in Vampire
Interpolation and Symbol Elimination in Vampire Kryštof Hoder 1, Laura Kovács 2, and Andrei Voronkov 1 1 University of Manchester 2 TU Vienna Abstract. It has recently been shown that proofs in which some
More informationCIS 842: Specification and Verification of Reactive Systems. Lecture Specifications: Specification Patterns
CIS 842: Specification and Verification of Reactive Systems Lecture Specifications: Specification Patterns Copyright 2001-2002, Matt Dwyer, John Hatcliff, Robby. The syllabus and all lectures for this
More informationSolving Constrained Horn Clauses using Interpolation
Solving Constrained Horn Clauses using Interpolation MSR-TR-2013-6 Kenneth L. McMillan Micrsoft Research Andrey Rybalchenko Technische Universität München Abstract We present an interpolation-based method
More informationPropositional Calculus
Propositional Calculus Dr. Neil T. Dantam CSCI-498/598 RPM, Colorado School of Mines Spring 2018 Dantam (Mines CSCI, RPM) Propositional Calculus Spring 2018 1 / 64 Calculus? Definition: Calculus A well
More informationThe Polyranking Principle
The Polyranking Principle Aaron R. Bradley, Zohar Manna, and Henny B. Sipma Computer Science Department Stanford University Stanford, CA 94305-9045 {arbrad,zm,sipma}@theory.stanford.edu Abstract. Although
More informationVerification Constraint Problems with Strengthening
Verification Constraint Problems with Strengthening Aaron R. Bradley and Zohar Manna Computer Science Department Stanford University Stanford, CA 94305-9045 {arbrad,manna}@cs.stanford.edu Abstract. The
More informationAn Introduction to Z3
An Introduction to Z3 Huixing Fang National Trusted Embedded Software Engineering Technology Research Center April 12, 2017 Outline 1 SMT 2 Z3 Huixing Fang (ECNU) An Introduction to Z3 April 12, 2017 2
More informationIncremental Formal Verification of Hardware
Incremental Formal Verification of Hardware Hana Chockler, Alexander Ivrii, Arie Matsliah, Shiri Moran, Ziv Nevo IBM Research Haifa E-mail:{hanac,alexi,ariem,shirim,nevo}@il.ibm.com Abstract Formal verification
More informationInterpolation. Seminar Slides. Betim Musa. 27 th June Albert-Ludwigs-Universität Freiburg
Interpolation Seminar Slides Albert-Ludwigs-Universität Freiburg Betim Musa 27 th June 2015 Motivation program add(int a, int b) { var x,i : int; l 0 assume(b 0); l 1 x := a; l 2 i := 0; while(i < b) {
More informationarxiv: v3 [cs.lo] 11 Jul 2016
Equivalence Checking By Logic Relaxation Eugene Goldberg eu.goldberg@gmail.com arxiv:1511.01368v3 [cs.lo] 11 Jul 2016 Abstract. We introduce a new framework for Equivalence Checking (EC) of Boolean circuits
More informationStatic Program Analysis
Static Program Analysis Lecture 16: Abstract Interpretation VI (Counterexample-Guided Abstraction Refinement) Thomas Noll Lehrstuhl für Informatik 2 (Software Modeling and Verification) noll@cs.rwth-aachen.de
More informationLecture 2: Symbolic Model Checking With SAT
Lecture 2: Symbolic Model Checking With SAT Edmund M. Clarke, Jr. School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 (Joint work over several years with: A. Biere, A. Cimatti, Y.
More informationLecture 11 Safety, Liveness, and Regular Expression Logics
Lecture 11 Safety, Liveness, and Regular Expression Logics Safety and Liveness Regular Expressions w-regular Expressions Programs, Computations, and Properties Guarantee, Response, and Persistance Properties.
More informationHoare Logic: Part II
Hoare Logic: Part II COMP2600 Formal Methods for Software Engineering Jinbo Huang Australian National University COMP 2600 Hoare Logic II 1 Factorial {n 0} fact := 1; i := n; while (i >0) do fact := fact
More informationCS156: The Calculus of Computation Zohar Manna Autumn 2008
Page 3 of 52 Page 4 of 52 CS156: The Calculus of Computation Zohar Manna Autumn 2008 Lecturer: Zohar Manna (manna@cs.stanford.edu) Office Hours: MW 12:30-1:00 at Gates 481 TAs: Boyu Wang (wangboyu@stanford.edu)
More informationCOMP3151/9151 Foundations of Concurrency Lecture 4
1 COMP3151/9151 Foundations of Concurrency Lecture 4 and Kai Engelhardt CSE, UNSW (and data61) Revision: 1.5 of Date: 2017/08/14 00:35:24 UTC (Credits: parts may be borrowed from M. Ben-Ari, G Andrews,
More informationBounded Model Checking with SAT/SMT. Edmund M. Clarke School of Computer Science Carnegie Mellon University 1/39
Bounded Model Checking with SAT/SMT Edmund M. Clarke School of Computer Science Carnegie Mellon University 1/39 Recap: Symbolic Model Checking with BDDs Method used by most industrial strength model checkers:
More informationSatisfiability Modulo Theories (SMT)
CS510 Software Engineering Satisfiability Modulo Theories (SMT) Slides modified from those by Aarti Gupta Textbook: The Calculus of Computation by A. Bradley and Z. Manna 1 Satisfiability Modulo Theory
More informationConstraint-Based Static Analysis of Programs
Constraint-Based Static Analysis of Programs Joint work with Michael Colon, Sriram Sankaranarayanan, Aaron Bradley and Zohar Manna Henny Sipma Stanford University Master Class Seminar at Washington University
More informationInvariant Checking of NRA Transition Systems via Incremental Reduction to LRA with EUF
Invariant Checking of NRA Transition Systems via Incremental Reduction to LRA with EUF Alessandro Cimatti 1, Alberto Griggio 1, Ahmed Irfan 1,2, Marco Roveri 1, and Roberto Sebastiani 2 1 Fondazione Bruno
More informationSequential Equivalence Checking of Hard Instances with Targeted Inductive Invariants and Efficient Filtering Strategies
Sequential Equivalence Checking of Hard Instances with Targeted Inductive Invariants and Efficient Filtering Strategies Huy Nguyen and Michael S. Hsiao Bradley Department of Electrical and Computer Engineering
More informationSoftware Verification using Predicate Abstraction and Iterative Refinement: Part 1
using Predicate Abstraction and Iterative Refinement: Part 1 15-414 Bug Catching: Automated Program Verification and Testing Sagar Chaki November 28, 2011 Outline Overview of Model Checking Creating Models
More informationAbstractions and Decision Procedures for Effective Software Model Checking
Abstractions and Decision Procedures for Effective Software Model Checking Prof. Natasha Sharygina The University of Lugano, Carnegie Mellon University Microsoft Summer School, Moscow, July 2011 Lecture
More informationProperty Directed Equivalence via Abstract Simulation. Grigory Fedyukovich, Arie Gurfinkel, and Natasha Sharygina
Property Directed Equivalence via Abstract Simulation Grigory Fedyukovich, Arie Gurfinkel, and Natasha Sharygina CAV, Jul 23, 2016 Motivation / Goals Little Leaks Add Up to Big Bills software safety must
More informationSMT Unsat Core Minimization
SMT Unsat Core Minimization O F E R G U T H M A N N, O F E R S T R I C H M A N, A N N A T R O S TA N E T S K I F M C A D 2 0 1 6 1 Satisfiability Modulo Theories Satisfiability Modulo Theories (SMT): decides
More informationModel Checking with Multi-Threaded IC3 Portfolios
Model Checking with Multi-Threaded IC3 Portfolios Sagar Chaki and Derrick Karimi Software Engineering Institute, Carnegie Mellon University {chaki,dhkarimi}@sei.cmu.edu Abstract. Three variants of multi-threaded
More informationIvy: Safety Verification by Interactive Generalization
Ivy: Safety Verification by Interactive Generalization Oded Padon Verification Day 1-June-2016 [PLDI 16] Oded Padon, Kenneth McMillan, Aurojit Panda, Mooly Sagiv, Sharon Shoham. Ivy: Safety Verification
More informationTutorial 1: Modern SMT Solvers and Verification
University of Illinois at Urbana-Champaign Tutorial 1: Modern SMT Solvers and Verification Sayan Mitra Electrical & Computer Engineering Coordinated Science Laboratory University of Illinois at Urbana
More informationUSING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING. Liudmila Cheremisinova, Dmitry Novikov
International Book Series "Information Science and Computing" 203 USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING Liudmila Cheremisinova, Dmitry Novikov Abstract. The problem of checking whether a
More informationController Synthesis with UPPAAL-TIGA. Alexandre David Kim G. Larsen, Didier Lime, Franck Cassez, Jean-François Raskin
Controller Synthesis with UPPAAL-TIGA Alexandre David Kim G. Larsen, Didier Lime, Franck Cassez, Jean-François Raskin Overview Timed Games. Algorithm (CONCUR 05). Strategies. Code generation. Architecture
More informationSAT in Formal Hardware Verification
SAT in Formal Hardware Verification Armin Biere Institute for Formal Models and Verification Johannes Kepler University Linz, Austria Invited Talk SAT 05 St. Andrews, Scotland 20. June 2005 Overview Hardware
More informationIn this episode of The Verification Corner, Rustan Leino talks about Loop Invariants. He gives a brief summary of the theoretical foundations and
In this episode of The Verification Corner, Rustan Leino talks about Loop Invariants. He gives a brief summary of the theoretical foundations and shows how a program can sometimes be systematically constructed
More informationEFFICIENT PREDICATE ABSTRACTION OF PROGRAM SUMMARIES
EFFICIENT PREDICATE ABSTRACTION OF PROGRAM SUMMARIES Arie Gurfinkel, Sagar Chaki and Samir Sapra Carnegie Mellon Uni In NFM11 Presented by Nimrod Partush OUTLINE Introduction Predicate Abstraction CEGAR
More informationConstraint Solving for Program Verification: Theory and Practice by Example
Constraint Solving for Program Verification: Theory and Practice by Example Andrey Rybalchenko Technische Universität München Abstract. Program verification relies on the construction of auxiliary assertions
More informationLinear Ranking with Reachability
Linear Ranking with Reachability Aaron R. Bradley, Zohar Manna, and Henny B. Sipma Computer Science Department Stanford University Stanford, CA 94305-9045 {arbrad,zm,sipma}@theory.stanford.edu Abstract.
More informationTowards Lightweight Integration of SMT Solvers
Towards Lightweight Integration of SMT Solvers Andrei Lapets Boston University Boston, USA lapets@bu.edu Saber Mirzaei Boston University Boston, USA smirzaei@bu.edu 1 Introduction A large variety of SMT
More informationCompressing BMC Encodings with QBF
Compressing BMC Encodings with QBF Toni Jussila 1 Armin Biere 2 Institute for Formal Models and Verification Johannes Kepler University, Linz, Austria Abstract Symbolic model checking is PSPACE complete.
More informationRevising UNITY Programs: Possibilities and Limitations 1
Revising UNITY Programs: Possibilities and Limitations 1 Ali Ebnenasir, Sandeep S. Kulkarni, and Borzoo Bonakdarpour Software Engineering and Network Systems Laboratory Department of Computer Science and
More informationPredicate Abstraction: A Tutorial
Predicate Abstraction: A Tutorial Predicate Abstraction Daniel Kroening May 28 2012 Outline Introduction Existential Abstraction Predicate Abstraction for Software Counterexample-Guided Abstraction Refinement
More informationRewriting for Satisfiability Modulo Theories
1 Dipartimento di Informatica Università degli Studi di Verona Verona, Italy July 10, 2010 1 Joint work with Chris Lynch (Department of Mathematics and Computer Science, Clarkson University, NY, USA) and
More informationBounded Model Checking
Vol. 58 of Advances in Computers, 2003. Academic Press (pre-print). Bounded Model Checking Armin Biere 1 Alessandro Cimatti 2 Edmund M. Clarke 3 Ofer Strichman 3 Yunshan Zhu 4 1 Institute of Computer Systems,
More informationLemma Localization: A Practical Method for Downsizing SMT-Interpolants
Lemma Localization: A Practical Method for Downsizing SMT-Interpolants Florian Pigorsch, and Christoph Scholl University of Freiburg, Department of Computer Science, 7911 Freiburg im Breisgau, Germany
More informationCompositional Safety Verification with Max-SMT
Compositional Safety Verification with Max-SMT Marc Brockschmidt, Daniel Larraz, Albert Oliveras, Enric Rodríguez-Carbonell and Albert Rubio Microsoft Research, Cambridge Universitat Politècnica de Catalunya
More informationA Liveness Checking Algorithm that Counts
A Liveness Checking Algorithm that Counts Koen Claessen Chalmers University of Technology koen@chalmers.se Niklas Sörensson Mentor Graphics Corporation niklas sorensson@mentor.com Abstract We present a
More informationSymbolic Counterexample Generation for Large Discrete-Time Markov Chains
Symbolic Counterexample Generation for Large Discrete-Time Markov Chains Nils Jansen a,, Ralf Wimmer b, Erika Ábraháma, Barna Zajzon a, Joost-Pieter Katoen a, Bernd Becker b, Johann Schuster c a RWTH Aachen
More informationSymbolic Computation and Theorem Proving in Program Analysis
Symbolic Computation and Theorem Proving in Program Analysis Laura Kovács Chalmers Outline Part 1: Weakest Precondition for Program Analysis and Verification Part 2: Polynomial Invariant Generation (TACAS
More informationA Concurrency Problem with Exponential DPLL(T ) Proofs
A Concurrency Problem with Exponential DPLL(T ) Proofs Liana Hadarean 1 Alex Horn 1 Tim King 2 1 University of Oxford 2 Verimag June 5, 2015 2 / 27 Outline SAT/SMT-based Verification Techniques for Concurrency
More informationRanking Verification Counterexamples: An Invariant guided approach
Ranking Verification Counterexamples: An Invariant guided approach Ansuman Banerjee Indian Statistical Institute Joint work with Pallab Dasgupta, Srobona Mitra and Harish Kumar Complex Systems Everywhere
More informationApplications of Craig Interpolants in Model Checking
Applications of Craig Interpolants in Model Checking K. L. McMillan Cadence Berkeley Labs Abstract. A Craig interpolant for a mutually inconsistent pair of formulas (A, B) is a formula that is (1) implied
More informationThe TLA + proof system
The TLA + proof system Stephan Merz Kaustuv Chaudhuri, Damien Doligez, Leslie Lamport INRIA Nancy & INRIA-MSR Joint Centre, France Amir Pnueli Memorial Symposium New York University, May 8, 2010 Stephan
More informationCSE507. Introduction. Computer-Aided Reasoning for Software. Emina Torlak courses.cs.washington.edu/courses/cse507/17wi/
Computer-Aided Reasoning for Software CSE507 courses.cs.washington.edu/courses/cse507/17wi/ Introduction Emina Torlak emina@cs.washington.edu Today What is this course about? Course logistics Review of
More informationHoare Logic I. Introduction to Deductive Program Verification. Simple Imperative Programming Language. Hoare Logic. Meaning of Hoare Triples
Hoare Logic I Introduction to Deductive Program Verification Işıl Dillig Program Spec Deductive verifier FOL formula Theorem prover valid contingent Example specs: safety (no crashes), absence of arithmetic
More informationCompleteness and Complexity of Bounded Model Checking
Completeness and Complexity of Bounded Model Checking Edmund Clarke 1, Daniel Kroening 1,Joël Ouaknine 1, and Ofer Strichman 2 1 Computer Science Department, Carnegie Mellon University, Pittsburgh, PA,
More informationDecentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication
Decentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication Stavros Tripakis Abstract We introduce problems of decentralized control with communication, where we explicitly
More informationVinter: A Vampire-Based Tool for Interpolation
Vinter: A Vampire-Based Tool for Interpolation Kryštof Hoder 1, Andreas Holzer 2, Laura Kovács 2, and Andrei Voronkov 1 1 University of Manchester 2 TU Vienna Abstract. This paper describes the Vinter
More informationDesign of Distributed Systems Melinda Tóth, Zoltán Horváth
Design of Distributed Systems Melinda Tóth, Zoltán Horváth Design of Distributed Systems Melinda Tóth, Zoltán Horváth Publication date 2014 Copyright 2014 Melinda Tóth, Zoltán Horváth Supported by TÁMOP-412A/1-11/1-2011-0052
More informationFirst-Order Logic First-Order Theories. Roopsha Samanta. Partly based on slides by Aaron Bradley and Isil Dillig
First-Order Logic First-Order Theories Roopsha Samanta Partly based on slides by Aaron Bradley and Isil Dillig Roadmap Review: propositional logic Syntax and semantics of first-order logic (FOL) Semantic
More informationHardware Model Checking Competition 2013 HWMCC 13. Armin Biere, Keijo Heljanko, Martina Seidl, Siert Wieringa. presented at
Hardware Model Checking Competition 2013 Armin Biere, Keijo Heljanko, Martina Seidl, Siert Wieringa presented at Formal Methods in Computer Aided Design 2013 FMCAD 13 Portland, Oregon, USA Tuesday October
More informationThe L Machines are very high-level, in two senses:
What is a Computer? State of the machine. CMPSCI 630: Programming Languages An Abstract Machine for Control Spring 2009 (with thanks to Robert Harper) Internal registers, memory, etc. Initial and final
More informationEECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization
EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Discrete Systems Lecture: State-Space Exploration Stavros Tripakis University of California, Berkeley Stavros Tripakis:
More informationVerification using Satisfiability Checking, Predicate Abstraction, and Craig Interpolation. Himanshu Jain THESIS ORAL TALK
Verification using Satisfiability Checking, Predicate Abstraction, and Craig Interpolation Himanshu Jain THESIS ORAL TALK 1 Computer Systems are Pervasive Computer Systems = Software + Hardware Software/Hardware
More informationInterpolation: Theory and Applications
Interpolation: Theory and Applications Vijay D Silva Google Inc., San Francisco Logic Colloquium, U.C. Berkeley 2016 Interpolation Lemma (1957) William Craig in 1988 http://sophos.berkeley.edu/interpolations/
More information