I NTERPOLANT S TRENGTH presenter 志瑋. O UTLINE Introduction Preliminaries Comparison of Interpolation Systems Labelled Interpolation Systems Proof Transformation.

Slides:



Advertisements
Similar presentations
Model Checking Base on Interoplation
Advertisements

1 Verification by Model Checking. 2 Part 1 : Motivation.
Model Checking Lecture 4. Outline 1 Specifications: logic vs. automata, linear vs. branching, safety vs. liveness 2 Graph algorithms for model checking.
The behavior of SAT solvers in model checking applications K. L. McMillan Cadence Berkeley Labs.
Exploiting SAT solvers in unbounded model checking K. L. McMillan Cadence Berkeley Labs.
Automated Theorem Proving Lecture 1. Program verification is undecidable! Given program P and specification S, does P satisfy S?
Min Cost Flow: Polynomial Algorithms. Overview Recap: Min Cost Flow, Residual Network Potential and Reduced Cost Polynomial Algorithms Approach Capacity.
Linear Round Integrality Gaps for the Lasserre Hierarchy Grant Schoenebeck.
Complexity ©D.Moshkovits 1 Where Can We Draw The Line? On the Hardness of Satisfiability Problems.
Representing Boolean Functions for Symbolic Model Checking Supratik Chakraborty IIT Bombay.
Lecture 24 MAS 714 Hartmut Klauck
Orthogonal Drawing Kees Visser. Overview  Introduction  Orthogonal representation  Flow network  Bend optimal drawing.
Loops or Lather, Rinse, Repeat… CS153: Compilers Greg Morrisett.
Automatic Verification Book: Chapter 6. What is verification? Traditionally, verification means proof of correctness automatic: model checking deductive:
Theory of Computing Lecture 18 MAS 714 Hartmut Klauck.
Hybrid Systems Presented by: Arnab De Anand S. An Intuitive Introduction to Hybrid Systems Discrete program with an analog environment. What does it mean?
Lecture 22: April 18 Probabilistic Method. Why Randomness? Probabilistic method: Proving the existence of an object satisfying certain properties without.
Rigorous Software Development CSCI-GA Instructor: Thomas Wies Spring 2012 Lecture 13.
Efficient Reachability Analysis for Verification of Asynchronous Systems Nishant Sinha.
Towards More Efficient SAT-Based Model Checking Joao Marques-Silva Electronics & Computer Science University of Southampton LAA C&V Workshop, Isaac Newton.
SAT and Model Checking. Bounded Model Checking (BMC) A.I. Planning problems: can we reach a desired state in k steps? Verification of safety properties:
Example in SSA X := Y op Z in out F X := Y op Z (in) = in [ { X ! Y op Z } X :=  (Y,Z) in 0 out F X :=   (in 0, in 1 ) = (in 0 Å in 1 ) [ { X ! E |
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
Title of Presentation Author 1, Author 2, Author 3, Author 4 Abstract Introduction This is my abstract. This is my abstract. This is my abstract. This.
Introduction to Approximation Algorithms Lecture 12: Mar 1.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
Formal Verification Group © Copyright IBM Corporation 2008 IBM Haifa Labs SAT-based unbounded model checking using interpolation Based on a paper “Interpolation.
Lazy Abstraction with Interpolants Yakir Vizel (based on the work and slides of K. L. McMillan at CAV06)
A RRIVAL C URVES FOR R EAL -T IME C ALCULUS : THE C AUSALITY P ROBLEM AND ITS S OLUTIONS - Matthieu Moy and Karine Altisen Vasvi Kakkad School of Information.
CAFE router: A Fast Connectivity Aware Multiple Nets Routing Algorithm for Routing Grid with Obstacles Y. Kohira and A. Takahashi School of Computer Science.
SAT-based Model Checking Yakir Vizel Computer Science Department, Technion, Israel Based on slides from K.L. McMillan, A.R. Bradley and Yakir Vizel.
Lecture 22 More NPC problems
Spanning Trees Introduction to Spanning Trees AQR MRS. BANKS Original Source: Prof. Roger Crawfis from Ohio State University.
Spanning Trees Introduction to Spanning Trees AQR MRS. BANKS Original Source: Prof. Roger Crawfis from Ohio State University.
Lazy Annotation for Program Testing and Verification Speaker: Chen-Hsuan Adonis Lin Advisor: Jie-Hong Roland Jiang November 26,
Regular Model Checking Made Simple and Efficient P. Abdulla, B. Jonsson, M. Nilsson and J. d’Orso Uppsala University.
Algorithm for obtaining the connected components of a graph Samia Qader 252a-az HW # 6 all examples obtained from LEDA software in directory: 252a/handout/demo/graphwin/graphwin.
Flows in Planar Graphs Hadi Mahzarnia. Outline O Introduction O Planar single commodity flow O Multicommodity flows for C 1 O Feasibility O Algorithm.
8.4 Improper Integrals Quick Review Evaluate the integral.
Predicate Abstraction. Abstract state space exploration Method: (1) start in the abstract initial state (2) use to compute reachable states (invariants)
SMT and Its Application in Software Verification (Part II) Yu-Fang Chen IIS, Academia Sinica Based on the slides of Barrett, Sanjit, Kroening, Rummer,
SAT-Based Model Checking Without Unrolling Aaron R. Bradley.
Computability and Complexity 2-1 Problems and Languages Computability and Complexity Andrei Bulatov.
CS357 Lecture 13: Symbolic model checking without BDDs Alex Aiken David Dill 1.
Strongly Connected Components for Directed Graphs Kelley Louie Credits: graphs by /demo/graphwin/graphwin.
Complexity ©D.Moshkovits 1 2-Satisfiability NOTE: These slides were created by Muli Safra, from OPICS/sat/)
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Trading-off SAT search and Variable Quantifications for effective Unbounded Model Checking G. Cabodi P. Camurati L. Garcia M. Murciano S. Nocco S. Quer.
SSSP in DAGs (directed acyclic graphs). DFS (depth first search) DFS(vertex v) { v.visited = TRUE; for each w adjacent to v do if(!w.visited) then dfs(w);
Counterexample-Guided Abstraction Refinement By Edmund Clarke, Orna Grumberg, Somesh Jha, Yuan Lu, and Helmut Veith Presented by Yunho Kim Provable Software.
Chapter 1 INTRODUCTION TO THE THEORY OF COMPUTATION.
Efficient Generation of Small Interpolants in CNF (for Model Checking)
Horn Clauses mc(x) = x-10 if x > 100 mc(x) = mc(mc(x+11)) if x  100 assert (x ≤
Lesson 4-3 Congruent Triangles.
(xy)(yz)(xz)(zy)
Chapter 4: Using NP-Completeness to Analyze Subproblems
Lifting Propositional Interpolants to the Word-Level
Computability and Complexity
Optimal Redundancy Removal without Fixedpoint Computation
Where Can We Draw The Line?
Automated Extraction of Inductive Invariants to Aid Model Checking
Resolution Proofs for Combinational Equivalence
Strongly Connected Components
Copyright © Cengage Learning. All rights reserved.
Complexity Theory in Practice
GRAPHS Lecture 17 CS2110 Spring 2018.
The Complexity of Approximation
Instructor: Aaron Roth
Find the limit {image} ,024 2,160 -1,
DAGs Longin Jan Latecki
Presentation transcript:

I NTERPOLANT S TRENGTH presenter 志瑋

O UTLINE Introduction Preliminaries Comparison of Interpolation Systems Labelled Interpolation Systems Proof Transformation and Interpolation Systems Conclusion

O UTLINE Introduction Preliminaries Comparison of Interpolation Systems Labelled Interpolation Systems Proof Transformation and Interpolation Systems Conclusion

I NTRODUCTION Two essential steps in model checking Image computation Fixed point detection Interpolant-based model checker Approximation Two approach Contribution Interpolant Strength – order Operators for composing interpolation systems Pivot reordering

O UTLINE Introduction Preliminaries Finite State Model Checking Interpolant-Based Model Checking Resolution Refutations Comparison of Interpolation Systems Labelled Interpolation Systems Proof Transformation and Interpolation Systems Conclusion

F INITE S TATE M ODEL C HECKING (1/2) M = (S, T ) is a finite set of states S and a transition relation T ⊆ S × S Fix the sets J and F, where J ∩ F = ∅, as sets of initial and failure states post(Q) = { s’ ∈ S|s ∈ Q and (s, s’) ∈ T } pre(Q) = {s ∈ S|s’ ∈ Q and (s, s’) ∈ T }

F INITE S TATE M ODEL C HECKING (2/2) The strongest inductive invariant R j is the set of states reachable from J. R J = μQ.(J ∪ post(Q)) the weakest inductive invariant W F is the largest set of states from which F is unreachable W F = S \ μQ.(F ∪ pre(Q))

I NTERPOLANT -B ASED M ODEL C HECKING A(x 0, x 1 ) def = Q(x 0 ) ∧ T (x 0, x 1 ) B(x 1,..., x k ) def = T (x 1, x 2 ) ∧... ∧ T (x k−1, x k ) ∧ (F(x 1 ) ∨ ・ ・ ・ ∨ F(x k )) If the BMC instance is satisfiable, F is reachable from a state in Q. P(x 1 ) def = ∃ x 0.A(x 0, x 1 ) If the formula Q(x 0 ) can be replaced by Q(x 0 ) ∨ P(x 0 ), we can repeatedly compute images until we obtain a formula encoding R J.

R ESOLUTION R EFUTATIONS A resolution proof R is a DAG (V R,E R, piv R, l R, s R ) V R is a set of vertices E R is a set of edges piv R is a pivot function l R is the clause function s R ∈ V R is the sink vertex l R (v) = Res(l R ( v1),l R (v2), piv R (v))

O UTLINE Introduction Preliminaries Comparison of Interpolation Systems Interpolant Systems Interpolant Strength and Model Checking Labelled Interpolation Systems Proof Transformation and Interpolation Systems Conclusion

I NTERPOLANT S YSTEMS (1/4)

I NTERPOLANT S YSTEMS (2/4)

I NTERPOLANT S YSTEMS (3/4)

I NTERPOLANT S YSTEMS (4/4) Itp M (R) = a1 ∧ a2, Itp S (R) = a1 ∧ a2, and ¬ ItpM(R) = a1 ∨ a2. In addition, a1 is an interpolant for A ∧ B, as is a2. However, we cannot obtain these interpolants from Itp M, Itp S Itp M or Itp S.

I NTERPOLANT S YSTEMS AND M ODEL C HECKING (1/2)

I NTERPOLANT S YSTEMS AND M ODEL C HECKING (2/2) Model Checking with a weaker interpolation system converges more quickly in this case.

O UTLINE Introduction Preliminaries Comparison of Interpolation Systems Labeled Interpolation Systems Labeling Functions and Interpolation Strength in Labeled Interpolation Systems Proof Transformation and Interpolation Systems Conclusion

L ABELLING F UNCTIONS AND I NTERPOLATION (1/4)

L ABELLING F UNCTIONS AND I NTERPOLATION (2/4)

L ABELLING F UNCTIONS AND I NTERPOLATION (3/4)

L ABELLING F UNCTIONS AND I NTERPOLATION (4/4)

S TRENGTH IN L ABELLED I NTERPOLATION S YSTEM

O UTLINE Introduction Preliminaries Comparison of Interpolation Systems Labelled Interpolation Systems Proof Transformation and Interpolation Systems Proof Transformation Proof Transformation and Interpolation Systems Conclusion

P ROOF T RANSFORMATION (1/4)

P ROOF T RANSFORMATION (2/4)

P ROOF T RANSFORMATION (3/4)

P ROOF T RANSFORMATION (4/4)

P ROOF T RANSFORMATION AND I NTERPOLANT S TRENGTH Pivot order : a->ab->b

O UTLINE Introduction Preliminaries Comparison of Interpolation Systems Labelled Interpolation Systems Proof Transformation and Interpolation Systems Conclusion

C ONCLUSION Labelling Functions Swapping vertices in a proof graph Strengthening techniques lead to performance improvema = ents in model checking Detect situations in which strengthening techniques are to be applied