Fitting a Function to the Difficulty of Boolean Formulas Greg Dennis NMM Final Project.

Slides:



Advertisements
Similar presentations
Exploiting SAT solvers in unbounded model checking
Advertisements

Automated Theorem Proving
UIUC CS 497: Section EA Lecture #2 Reasoning in Artificial Intelligence Professor: Eyal Amir Spring Semester 2004.
Propositional and First Order Reasoning. Terminology Propositional variable: boolean variable (p) Literal: propositional variable or its negation p 
Proofs from SAT Solvers Yeting Ge ACSys NYU Nov
“Using Weighted MAX-SAT Engines to Solve MPE” -- by James D. Park Shuo (Olivia) Yang.
Methods of Proof Chapter 7, second half.. Proof methods Proof methods divide into (roughly) two kinds: Application of inference rules: Legitimate (sound)
Using Problem Structure for Efficient Clause Learning Ashish Sabharwal, Paul Beame, Henry Kautz University of Washington, Seattle April 23, 2003.
Data Structures for SAT Solvers The 2-Literal Representation Gábor Kusper Eszterházy Károly College Eger, Hungary.
IBM Labs in Haifa © 2005 IBM Corporation Adaptive Application of SAT Solving Techniques Ohad Shacham and Karen Yorav Presented by Sharon Barner.
Statistics 100 Lecture Set 7. Chapters 13 and 14 in this lecture set Please read these, you are responsible for all material Will be doing chapters
Properties of SLUR Formulae Ondřej Čepek, Petr Kučera, Václav Vlček Charles University in Prague SOFSEM 2012 January 23, 2012.
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:
ECE 667 Synthesis & Verification - SAT 1 ECE 667 ECE 667 Synthesis and Verification of Digital Systems Boolean SAT CNF Representation Slides adopted (with.
1 Boolean Satisfiability in Electronic Design Automation (EDA ) By Kunal P. Ganeshpure.
Searching for Autarkies to Trim Unsatisfiable Clause Sets Mark H. Liffiton and Karem A. Sakallah University of Michigan {liffiton,
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
1 Polynomial Time Reductions Polynomial Computable function : For any computes in polynomial time.
GRASP-an efficient SAT solver Pankaj Chauhan. 6/19/ : GRASP and Chaff2 What is SAT? Given a propositional formula in CNF, find an assignment.
Efficient SAT Solving for Non- clausal Formulas using DPLL, Graphs, and Watched-cuts Himanshu Jain Edmund M. Clarke.
NP-Complete Problems Problems in Computer Science are classified into
Search in the semantic domain. Some definitions atomic formula: smallest formula possible (no sub- formulas) literal: atomic formula or negation of an.
1 Discrete Structures CS 280 Example application of probability: MAX 3-SAT.
Intro to Statistics for the Behavioral Sciences PSYC 1900 Lecture 6: Correlation.
1 CS 4700: Foundations of Artificial Intelligence Carla P. Gomes Module: Satisfiability (Reading R&N: Chapter 7)
GRASP: A Search Algorithm for Propositional Satisfiability EE878C Homework #2 2002/11/1 KAIST, EECS ICS Lab Lee, Dongsoo.
Lukas Kroc, Ashish Sabharwal, Bart Selman Cornell University, USA SAT 2010 Conference Edinburgh, July 2010 An Empirical Study of Optimal Noise and Runtime.
SAT Solving Presented by Avi Yadgar. The SAT Problem Given a Boolean formula, look for assignment A for such that.  A is a solution for. A partial assignment.
1 Least squares procedure Inference for least squares lines Simple Linear Regression.
1 1. Draw the machine schema for a TM which when started with input 001 halts with abbb on the tape in our standard input format. 2. Suppose you have an.
Theory of Computation, Feodor F. Dragan, Kent State University 1 NP-Completeness P: is the set of decision problems (or languages) that are solvable in.
INTRODUCTION TO ARTIFICIAL INTELLIGENCE COS302 MICHAEL L. LITTMAN FALL 2001 Satisfiability.
Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber Aug 31, 2011 TexPoint fonts used in EMF. Read the TexPoint manual before you.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
Verbal SAT vs Math SAT V: mean=596.3 st.dev=99.5 M: mean=612.2 st.dev=96.1 r = Write the equation of the LSRL Interpret the slope of this line Interpret.
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module Logic Representations.
LDK R Logics for Data and Knowledge Representation Propositional Logic: Reasoning First version by Alessandro Agostini and Fausto Giunchiglia Second version.
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
Boolean Satisfiability Present and Future
CS 3343: Analysis of Algorithms Lecture 25: P and NP Some slides courtesy of Carola Wenk.
SAT 2009 Ashish Sabharwal Backdoors in the Context of Learning (short paper) Bistra Dilkina, Carla P. Gomes, Ashish Sabharwal Cornell University SAT-09.
Review of Propositional Logic Syntax
Tommy Messelis * Stefaan Haspeslagh Patrick De Causmaecker *
Planning as Satisfiability (SAT-Plan). SAT-Plan Translate the planning problem into a satisfiability problem for length n of Plan garb 0 (proposition)present.
“One ring to rule them all” Analogy (sort of) Lord of The Rings Computational Complexity “One problem to solve them all” “my preciousss…”
Linear Regression Linear Regression. Copyright © 2005 Brooks/Cole, a division of Thomson Learning, Inc. Purpose Understand Linear Regression. Use R functions.
Chapter 8 Linear Regression. Fat Versus Protein: An Example 30 items on the Burger King menu:
NPC.
CSC 413/513: Intro to Algorithms
Custom Computing Machines for the Set Covering Problem Paper Written By: Christian Plessl and Marco Platzner Swiss Federal Institute of Technology, 2002.
Inference in Propositional Logic (and Intro to SAT) CSE 473.
1 Boolean Satisfiability (SAT) Class Presentation By Girish Paladugu.
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View Basic Concepts and Background.
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
CSCI 2670 Introduction to Theory of Computing December 7, 2005.
SAT Encodings for Sudoku Bug Catching in 2006 Fall Sep. 26, 2006 Gi-Hwon Kwon.
Knowledge Repn. & Reasoning Lecture #9: Propositional Logic UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2005.
Optimized SAT Encoding For Sudoku Puzzles Will Klieber and Gi-Hwon Kwon Sept 27, 2007 rev. 2 Changes from v1: Added a new slide after “A Better Encoding.
Debugging declarative models using core extraction Robert Seater with Ilya Shlyakhter, Daniel Jackson, Manu Sridharan, Mana Taghdiri December 20, 2005.
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
Inference in Propositional Logic (and Intro to SAT)
Hardware Acceleration of A Boolean Satisfiability Solver
Deriving small unsatisfiable cores with dominators
ICS 353: Design and Analysis of Algorithms
NP-Completeness Proofs
ECE 667 Synthesis and Verification of Digital Circuits
Canonical Computation without Canonical Data Structure
Solving Non-clausal Formulas with DPLL search
GRASP-an efficient SAT solver
Faster Extraction of High-Level Minimal Unsatisfiable Cores
Presentation transcript:

Fitting a Function to the Difficulty of Boolean Formulas Greg Dennis NMM Final Project

Motivation Difficulty of boolean formulas varies greatly –difficulty = # decisions by solver = time to solve –difficulty varies between formulas of same size Difficulty depends on many factors –size of formula, clause : variable ratio, algorithm, luck What factors influence the difficulty and to what degree? Can we fit a function to the difficulty using these features?

literal = (negated) variablevariables CNF and 3-SAT Conjunctive Normal Form (CNF): k-SAT = CNF with exactly k literals / clause –no two literals in clause have same variable –no two identical clauses –k ≥ 3 is NP-complete (e.g. 3-SAT) clausal density = # clauses / # variables clause = disjuntion of literals CNF = conjunction of clauses

Phase Transition Scatter Plot

Phase Transition Curve

Unsatisfiable Core subset of the clauses that is unsatisfiable "proof" or "reason" for unsatisfiability very hard to obtain a minimal core ZChaff SAT solver iterative technique empirically close to minimal use unsat core as feature in function fit –larger the core  more clauses solver visits

What I Did examined only unsatisfiable 3-SAT formulas generated 2550 random unsat 3-SAT ran BerkMin SAT solver on each ran ZChaff unsat core technique on each recorded clauses, vars, unsat core, time fit data with Gaussian kernel

time vs density

time vs unsat core

Bad Results... features clauses890,000 vars580,000 unsat core340,000 clauses, vars290,000 clauses, vars, ucore80,000 biggest outliers when unsat core = clauses

Better Results... leaving out all formulas with 100% unsatisfiable core biggest outliers when unsat core = clauses - 1 featuresall formulasucore < clauses clauses890,000730,000 vars580,000370,000 unsat core340,000160,000 clauses, vars290,0008,500 clauses, vars, ucore80,0007,500

Observations difficulty extremely volatile even with fixed clauses, vars, and unsat core especially volatile at the phase transition unsat core helps explain some difficulty, but does not tell the whole story

Questions Remain curve not useful to predict the difficulty –takes longer to find unsat core than to solve Q: could we predict unsat core if we already have the difficulty? most applications don't generate random CNF's Q: how well does the function predict the behavior of non-random formulas?

Another Experiment performed regression again, but with time as a feature and unsat core as the value obtained 10 CNFs generated by The Alloy Analyzer and converted them to 3-SAT predicted the percentage of clauses in the unsat core and compared to actual number

Unsat Core Predictions very hard to predict... CNF #ActualPredicted 16.69%51.15% %24.94% 34.28%26.53% 41.56%0.21% %0.01% 68.31%0.00% %0.00% %46.58% %0.00% %0.11%

For Future Students lots of engineering completed –generation of random CNFs –read/write of CNFs to appropriate file format –interface with command line SAT solver –implement fix point technique –conversion to 3-SAT –regression with kernel code, write-up, and this presentation available on my NMM page