Technion Haifa Research Labs Israel Institute of Technology Underapproximation for Model-Checking Based on Random Cryptographic Constructions Arie Matsliah.

Slides:



Advertisements
Similar presentations
Parikshit Gopalan Georgia Institute of Technology Atlanta, Georgia, USA.
Advertisements

On the Complexity of Parallel Hardness Amplification for One-Way Functions Chi-Jen Lu Academia Sinica, Taiwan.
COMPLEXITY THEORY CSci 5403 LECTURE XVI: COUNTING PROBLEMS AND RANDOMIZED REDUCTIONS.
On the Amortized Complexity of Zero-Knowledge Proofs Ronald Cramer, CWI Ivan Damgård, Århus University.
Shortest Vector In A Lattice is NP-Hard to approximate
Approximate List- Decoding and Hardness Amplification Valentine Kabanets (SFU) joint work with Russell Impagliazzo and Ragesh Jaiswal (UCSD)
COMP 553: Algorithmic Game Theory Fall 2014 Yang Cai Lecture 21.
1/17 Deterministic Discrepancy Minimization Nikhil Bansal (TU Eindhoven) Joel Spencer (NYU)
1 Backdoor Sets in SAT Instances Ryan Williams Carnegie Mellon University Joint work in IJCAI03 with: Carla Gomes and Bart Selman Cornell University.
Wavelength Assignment in Optical Network Design Team 6: Lisa Zhang (Mentor) Brendan Farrell, Yi Huang, Mark Iwen, Ting Wang, Jintong Zheng Progress Report.
A survey on derandomizing BPP and AM Danny Gutfreund, Hebrew U. Ronen Shaltiel, Weizmann Inst. Amnon Ta-Shma, Tel-Aviv U.
Time vs Randomness a GITCS presentation February 13, 2012.
Theoretical Program Checking Greg Bronevetsky. Background The field of Program Checking is about 13 years old. Pioneered by Manuel Blum, Hal Wasserman,
Weizmann Institute Tuning SAT-checkers for Bounded Model-Checking A bounded guided tour Ofer Shtrichman Weizmann Institute & IBM (HRL)
Beating Brute Force Search for Formula SAT and QBF SAT Rahul Santhanam University of Edinburgh.
Yi Wu (CMU) Joint work with Parikshit Gopalan (MSR SVC) Ryan O’Donnell (CMU) David Zuckerman (UT Austin) Pseudorandom Generators for Halfspaces TexPoint.
CS151 Complexity Theory Lecture 7 April 20, 2004.
On the Hardness of Graph Isomorphism Jacobo Tor á n SIAM J. Comput. Vol 33, p , Presenter: Qingwu Yang April, 2006.
Derandomization: New Results and Applications Emanuele Viola Harvard University March 2006.
Simple Extractors for All Min-Entropies and a New Pseudo-Random Generator Ronen Shaltiel (Hebrew U) & Chris Umans (MSR) 2001.
ACT1 Slides by Vera Asodi & Tomer Naveh. Updated by : Avi Ben-Aroya & Alon Brook Adapted from Oded Goldreich’s course lecture notes by Sergey Benditkis,
Arithmetic Hardness vs. Randomness Valentine Kabanets SFU.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
CS151 Complexity Theory Lecture 7 April 20, 2015.
Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms.
1 Backdoors To Typical Case Complexity Ryan Williams Carnegie Mellon University Joint work with: Carla Gomes and Bart Selman Cornell University.
1 A theory-based decision heuristic for DPLL(T) Dan Goldwasser Ofer Strichman Shai Fine Haifa university TechnionIBM-HRL.
CS151 Complexity Theory Lecture 8 April 22, 2015.
1 Coverage Metrics in Formal Verification Hana Chockler Hebrew University.
1 Constructing Pseudo-Random Permutations with a Prescribed Structure Moni Naor Weizmann Institute Omer Reingold AT&T Research.
Computing Over­Approximations with Bounded Model Checking Daniel Kroening ETH Zürich.
1 Completeness and Complexity of Bounded Model Checking.
1 The PCP starting point. 2 Overview In this lecture we’ll present the Quadratic Solvability problem. In this lecture we’ll present the Quadratic Solvability.
CS151 Complexity Theory Lecture 9 April 27, 2004.
Streamline Verification Process with Formal Property Verification to Meet Highly Compressed Design Cycle Prosenjit Chatterjee, nVIDIA Corporation.
Ragesh Jaiswal Indian Institute of Technology Delhi Threshold Direct Product Theorems: a survey.
1 Automatic Refinement and Vacuity Detection for Symbolic Trajectory Evaluation Orna Grumberg Technion Haifa, Israel Joint work with Rachel Tzoref.
Theory of Computing Lecture 17 MAS 714 Hartmut Klauck.
Why Extractors? … Extractors, and the closely related “Dispersers”, exhibit some of the most “random-like” properties of explicitly constructed combinatorial.
Zeev Dvir Weizmann Institute of Science Amir Shpilka Technion Locally decodable codes with 2 queries and polynomial identity testing for depth 3 circuits.
Edge-disjoint induced subgraphs with given minimum degree Raphael Yuster 2012.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
Testing the independence number of hypergraphs
Communication vs. Computation S Venkatesh Univ. Victoria Presentation by Piotr Indyk (MIT) Kobbi Nissim Microsoft SVC Prahladh Harsha MIT Joe Kilian NEC.
Umans Complexity Theory Lectures Lecture 1a: Problems and Languages.
Fall 2013 CMU CS Computational Complexity Lectures 8-9 Randomness, communication, complexity of unique solutions These slides are mostly a resequencing.
Amplification and Derandomization Without Slowdown Dana Moshkovitz MIT Joint work with Ofer Grossman (MIT)
Verification & Validation By: Amir Masoud Gharehbaghi
SAT 2009 Ashish Sabharwal Backdoors in the Context of Learning (short paper) Bistra Dilkina, Carla P. Gomes, Ashish Sabharwal Cornell University SAT-09.
Umans Complexity Theory Lectures Lecture 17: Natural Proofs.
Pseudorandom Bits for Constant-Depth Circuits with Few Arbitrary Symmetric Gates Emanuele Viola Harvard University June 2005.
Approximation Algorithms for Combinatorial Auctions with Complement-Free Bidders Speaker: Shahar Dobzinski Joint work with Noam Nisan & Michael Schapira.
Pseudo-random generators Talk for Amnon ’ s seminar.
Error-Correcting Codes and Pseudorandom Projections Luca Trevisan U.C. Berkeley.
Learning Kernel Classifiers 1. Introduction Summarized by In-Hee Lee.
Comparing Notions of Full Derandomization Lance Fortnow NEC Research Institute With thanks to Dieter van Melkebeek.
1 Alan Mishchenko Research Update June-September 2008.
Umans Complexity Theory Lecturess Lecture 11: Randomness Extractors.
Pseudorandomness: New Results and Applications Emanuele Viola IAS April 2007.
Umans Complexity Theory Lectures Lecture 9b: Pseudo-Random Generators (PRGs) for BPP: - Hardness vs. randomness - Nisan-Wigderson (NW) Pseudo- Random Generator.
Complexity Theory and Explicit Constructions of Ramsey Graphs Rahul Santhanam University of Edinburgh.
On the Size of Pairing-based Non-interactive Arguments
Pseudorandomness when the odds are against you
Intro to Theory of Computation
Pseudo-derandomizing learning and approximation
Research Status of Equivalence Checking at Zhejiang University
CS21 Decidability and Tractability
Complexity Theory in Practice
CS151 Complexity Theory Lecture 7 April 23, 2019.
Switching Lemmas and Proof Complexity
Presentation transcript:

Technion Haifa Research Labs Israel Institute of Technology Underapproximation for Model-Checking Based on Random Cryptographic Constructions Arie Matsliah (presenting) and Ofer Strichman

IBM / Technion 2 Introduction Motivation:  Efficient “bug-hunters” for heavy verification instances Underapproximation:  M, M’ – Kripke structures  M’ underapproximates M if for every LTL formula φ: M φ → M’ φ  M’ has a subset of the behaviors of M Our goal:  Automatic and efficient underapproximation-based model checking

IBM / Technion 3 Model-checking with underapproximation  Potentially good for falsification, not verification. M’ Model- checker M’ φ ? fail φ M Refine: add behaviors

IBM / Technion 4  The time complexity of model checking depends exponentially on the number of inputs Natural approach for Underapproximation: reduce # of inputs. What makes Model Checking hard? M’ inputs outputs M inputs outputs

IBM / Technion 5 Reducing the number of inputs  An underlying assumption: “The values of some of the inputs are immaterial for exposing the bug”  A simple technique for underapproximation: fixing inputs.  Pick those inputs manually (using high-level information).  Fix their value.  A similar process which is automatic and complete is ineffective.  Our method: reduce # inputs without fixing any.

IBM / Technion 6 Our contribution Underapproximation which:  Reduces the number of inputs  Maintains a measurable and uniform degree of freedom to the original inputs  Based on adding circuitry to the model.  Can be applied to any form of verification M original inputs outputs M’ C new inputs inputs outputs

IBM / Technion 7 Main idea - Universality  A (combinatorial) circuit C is k-universal if  any valuation of at most k of its outputs... ...can be reached under some assignment to its inputs.  Example: 2-universal circuit inputs outputs  Why universality?  if #(important inputs) ≤ k, then k-universal circuit is enough inputs outputs C

IBM / Technion 8 Universality of some naïve methods Fixing some of the inputs to constants  0-universal M’ M inputs outputs Merge groups of inputs together  1-universal M’ M inputs outputs C C

IBM / Technion 9 Inspiration - Pseudo Random Generators (PRGs) Generator random string pseudorandom string looks random for any poly-time algorithm f f f f f f f PRG construction [NW 94]: -the circuit has certain properties -f is “hard to invert” Our construction: -the circuit is random -f is a XOR function

IBM / Technion 10 Using universal circuits M original inputs outputs M’ C new inputs

IBM / Technion 11 Constructing universal circuits outputs (inputs of M) inputs (inputs of M’) o1o1 o2o2 o3o3 o4o4 o5o5 o6o6 o7o7 i1i1 i2i2 i3i3 i4i4 i5i5 i6i6 i1i1 i2i2 i3i3 i4i4 i5i5 i6i6 o1o1 o2o2 o3o3 o4o4 o5o5 o6o6 o7o7 C A random matrix mod 2

IBM / Technion 12 How universal is C?  Lemma: if every k rows in A are linearly independent – C is k-universal  Proof (for k=3, n=7, m=6): i1i1 i2i2 i3i3 i4i4 i5i5 i6i6 o1o1 o2o2 o3o3 o4o4 o5o5 o6o6 o7o7 A i1i1 i2i2 i3i3 i4i4 i5i5 i6i6 o2o2 o4o4 o7o7 A’ A’ has full rank  all 2 3 values covered

IBM / Technion 13 How universal is C?  Lemma: for k=O(m/log n), with high probability, every k rows in A are linearly independent  Proof (for k=3, n=7, m=6): i1i1 i2i2 i3i3 i4i4 i5i5 i6i6 o1o1 o2o2 o3o3 o4o4 o5o5 o6o6 o7o7 A i1i1 i2i2 i3i3 i4i4 i5i5 i6i6 o1o1 o4o4 o6o6 A’ Pr[A 1 is in span(A 4,A 6 )] ≤ 2 2 /2 6 for general k,m,n: Pr[ … ] ≤ 2 -m+k-1  Apply Union Bound A1A1 A4A4 A6A6

IBM / Technion 14 How universal is C?  Lemma: for k=O(m/log n), with high probability, every k rows in A are linearly independent  Lemma: if every k rows in A are linearly independent – C is k-universal  Corollary: for k=O(m/log n), with high probability, C is k-universal Sample values:

IBM / Technion 15 Better bounds for k  What if we relax the requirement?  Lemma: for any ε > 0 and k ≤ m - log m – log (1/ε), each subset of k outputs is covered with probability 1-ε  for any k ≤ m - log m – 7, each subset of k outputs is covered with probability ~0.99 Sample values: k cannot be larger than m m k

IBM / Technion 16 What now?...  The main contribution of the work is theoretical:  Suggesting the relevance of PRG to model-checking  Proving universality properties of such circuits.  Expected difficulties in achieving results:  BDD-based model-checking is mostly ‘out’.  SAT does not distinguish between inputs and other variables  Hence, we can only guarantee an improvement in the worst-case.  Simulation: Typically start from a constrained environment in which only a small part of the inputs is allowed. Combining with PRG does not seem to be simple.  Nevertheless…  The main purpose of the experiments is to examine the effect of universality.

IBM / Technion 17 What now?...  The main contribution of the work is theoretical:  Showing relevance of universality to model-checking.  Proving universality properties of PRG-like circuits.  Experiments show that indeed universality matters.  The challenge: from theory to practice.

IBM / Technion 18 Experiments  Implemented in IBM RuleBase PE  17 BMC instances with known bugs  For each design with n inputs, we generated a new design with m inputs, for m = n/2, n/3, n/5, n/10  We compared the following methods:  Our: Our circuit with m inputs.  Orig: No underapproximation  Fix: Fixing n-m inputs to some constant.  Set: Partitioning the inputs to m sets. All inputs in the same set are mapped to a single input.

IBM / Technion 19 OrigOurFix Designinputs (n)n n/2 n/3 n/5 n/10n/2n/3 n/5 n/10 IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# TO Run-times -13.6% -17.5% -22.7% -47.1% 4.7% 50.2%

IBM / Technion 20 Orig Our Set Designinputs (n)n n/2 n/3 n/5 n/10n/2n/3 n/5 n/10 IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# IBM# TO --- Run-times -13.6% -17.5% -22.7% -47.1% 6.2% 7.2% 105.9% 140.6%

IBM / Technion 21 The effect of m and p  Tested 4 heaviest designs with various m and p’s  Depth in which bug was found, was increased in this many designs: 1/21/31/51/10 n/20000 n/30000 n/50000 n/ m p inputs probability of each input to be included in the fanin

IBM / Technion 22 Future work 1.Attach the circuit C to the unrolled model 2.Refinement strategies 3.Construct universal circuits without XORs 4.Construct universal circuits deterministically 5.Experiments with (unbounded) model-checking + simulation M0M0 C M1M1 M2M2 MkMk

IBM / Technion 23 Thank you!

IBM / Technion 24 Naïve Under-Approximation 1 Restrict some of the inputs to constants M’ M inputs outputs ? fully automatic process + M’ is easier to check than M ? M’ captures the “interesting” behaviors of M “important inputs”

IBM / Technion 25 Naïve Under-Approximation 2 Merge groups of inputs together M’ M inputs outputs ? fully automatic process + M’ is easier to check than M ? M’ captures the “interesting” behaviors of M “important inputs”

IBM / Technion 26 Our goal Uniformly free inputs M’ M inputs outputs for every subset of k inputs, all 2 k assignments are achievable  if #(interesting inputs) ≤ k + fully automatic process + M’ captures the “interesting” behaviors of M ?

IBM / Technion 27 Pseudo Random Generators Generator random string pseudorandom string looks random for any poly-time algorithm input output random string BPP algorithm