Solving Non-linear Arithmetic Dejan Jovanovic and Leonadro de Moura Presented by Boris Trayvas.

Slides:



Advertisements
Similar presentations
SMELS: Sat Modulo Equality with Lazy Superposition Christopher Lynch – Clarkson Duc-Khanh Tran - MPI.
Advertisements

The behavior of SAT solvers in model checking applications K. L. McMillan Cadence Berkeley Labs.
Exploiting SAT solvers in unbounded model checking
Automated Theorem Proving
Chaff: Engineering an Efficient SAT Solver Matthew W.Moskewicz, Concor F. Madigan, Ying Zhao, Lintao Zhang, Sharad Malik Princeton University Modified.
Presented by Monissa Mohan 1.  A highly optimized BCP algorithm  Two watched literals  Fast Backtracking  Efficient Decision Heuristic  Focused on.
Introduction to MiniSat v1.14 Presented by Yunho Kim Provable Software Lab, KAIST.
MBD and CSP Meir Kalech Partially based on slides of Jia You and Brian Williams.
UIUC CS 497: Section EA Lecture #2 Reasoning in Artificial Intelligence Professor: Eyal Amir Spring Semester 2004.
“Using Weighted MAX-SAT Engines to Solve MPE” -- by James D. Park Shuo (Olivia) Yang.
Inference and Reasoning. Basic Idea Given a set of statements, does a new statement logically follow from this. For example If an animal has wings and.
CPSC 422, Lecture 21Slide 1 Intelligent Systems (AI-2) Computer Science cpsc422, Lecture 21 Mar, 4, 2015 Slide credit: some slides adapted from Stuart.
1/30 SAT Solver Changki PSWLAB SAT Solver Daniel Kroening, Ofer Strichman.
1 Backdoor Sets in SAT Instances Ryan Williams Carnegie Mellon University Joint work in IJCAI03 with: Carla Gomes and Bart Selman Cornell University.
Abstract Answer Set Solver. Todolist Print the rules of Fig 1.
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:
Plan for today Proof-system search ( ` ) Interpretation search ( ² ) Quantifiers Equality Decision procedures Induction Cross-cutting aspectsMain search.
Nikolaj Bjørner Microsoft Research Lecture 3. DayTopicsLab 1Overview of SMT and applications. SAT solving, Z3 Encoding combinatorial problems with Z3.
(a = 0)  (c = 0)  (f = 0)  (  = 0)  = (a + b)(¬b + c + d) (¬b + e)(¬d + ¬e + f)  Clause Recording During backtrack search, for each conflict create.
1 Boolean Satisfiability in Electronic Design Automation (EDA ) By Kunal P. Ganeshpure.
Heuristics for Efficient SAT Solving As implemented in GRASP, Chaff and GSAT.
Presented by Ed Clarke Slides borrowed from P. Chauhan and C. Bartzis
GRASP-an efficient SAT solver Pankaj Chauhan. 6/19/ : GRASP and Chaff2 What is SAT? Given a propositional formula in CNF, find an assignment.
GRASP SAT solver Presented by Constantinos Bartzis Slides borrowed from Pankaj Chauhan J. Marques-Silva and K. Sakallah.
Search in the semantic domain. Some definitions atomic formula: smallest formula possible (no sub- formulas) literal: atomic formula or negation of an.
A Compressed Breadth-First Search for Satisfiability DoRon B. Motter and Igor L. Markov University of Michigan, Ann Arbor.
Last time Proof-system search ( ` ) Interpretation search ( ² ) Quantifiers Equality Decision procedures Induction Cross-cutting aspectsMain search strategy.
Chapter 5 Outline Formal definition of CSP CSP Examples
GRASP: A Search Algorithm for Propositional Satisfiability EE878C Homework #2 2002/11/1 KAIST, EECS ICS Lab Lee, Dongsoo.
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.
Deciding a Combination of Theories - Decision Procedure - Changki pswlab Combination of Theories Daniel Kroening, Ofer Strichman Presented by Changki.
Decision Procedures An Algorithmic Point of View
Logics for Data and Knowledge Representation Propositional Logic: Reasoning Originally by Alessandro Agostini and Fausto Giunchiglia Modified by Fausto.
Boolean Satisfiability and SAT Solvers
SAT and SMT solvers Ayrat Khalimov (based on Georg Hofferek‘s slides) AKDV 2014.
Advances in Automated Theorem Proving Leonardo de Moura, Nikolaj Bjørner Ken McMillan, Margus Veanes presented by Thomas Ball
INTRODUCTION TO ARTIFICIAL INTELLIGENCE COS302 MICHAEL L. LITTMAN FALL 2001 Satisfiability.
Digitaalsüsteemide verifitseerimise kursus1 Formal verification: SAT SAT applied in equivalence checking.
Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber Aug 31, 2011 TexPoint fonts used in EMF. Read the TexPoint manual before you.
Parallelizing MiniSat I-Ting Angelina Lee Justin Zhang May 05, Final Project Presentation.
UBC March The Evergreen Project: How To Learn From Mistakes Caused by Blurry Vision in MAX-CSP Solving Karl J. Lieberherr Northeastern University.
Lazy Annotation for Program Testing and Verification Speaker: Chen-Hsuan Adonis Lin Advisor: Jie-Hong Roland Jiang November 26,
UBC March The Evergreen Project: How To Learn From Mistakes Caused by Blurry Vision in MAX-CSP Solving Karl J. Lieberherr Northeastern University.
LDK R Logics for Data and Knowledge Representation Propositional Logic: Reasoning First version by Alessandro Agostini and Fausto Giunchiglia Second version.
Proving Non-Termination Gupta, Henzinger, Majumdar, Rybalchenko, Ru-Gang Xu presentation by erkan.
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
Decision methods for arithmetic Third summer school on formal methods Leonardo de Moura Microsoft Research.
CPSC 422, Lecture 21Slide 1 Intelligent Systems (AI-2) Computer Science cpsc422, Lecture 21 Oct, 30, 2015 Slide credit: some slides adapted from Stuart.
Maximum Density Still Life Symmetries and Lazy Clause Generation Geoffrey Chu, Maria Garcia de la Banda, Chris Mears, Peter J. Stuckey.
Nikolaj Bjørner Microsoft Research DTU Winter course January 2 nd 2012 Organized by Flemming Nielson & Hanne Riis Nielson.
Accelerating Random Walks Wei Wei and Bart Selman.
Heuristics for Efficient SAT Solving As implemented in GRASP, Chaff and GSAT.
Satisfiability and SAT Solvers CS 270 Math Foundations of CS Jeremy Johnson.
SAT Solving As implemented in - DPLL solvers: GRASP, Chaff and
PhD March The Evergreen Project: How To Learn From Mistakes Caused by Blurry Vision in MAX-CSP Solving Karl J. Lieberherr Northeastern University.
Given this 3-SAT problem: (x1 or x2 or x3) AND (¬x1 or ¬x2 or ¬x2) AND (¬x3 or ¬x1 or x2) 1. Draw the graph that you would use if you want to solve this.
Knowledge Repn. & Reasoning Lecture #9: Propositional Logic UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2005.
Satisfiability Modulo Theories and DPLL(T) Andrew Reynolds March 18, 2015.
Automatic Test Generation
Inference and search for the propositional satisfiability problem
8/2/2018 4:21 AM Lifting SAT to richer theories: bit-vectors, finite bases, and theory combination Christoph M. Wintersteiger © 2013 Microsoft Corporation.
A theory-based decision heuristic for DPLL(T)
Clause Learning and Intelligent Backtracking in MiniSAT
Unit Propagation and Variable Ordering in MiniSAT
A Progressive Approach for Satisfiability Modulo Theories
Clause Learning and Intelligent Backtracking in MiniSAT
Unit Propagation and Variable Ordering in MiniSAT
Clause Learning and Intelligent Backtracking in MiniSAT
CSE 589 Applied Algorithms Spring 1999
GRASP-an efficient SAT solver
Presentation transcript:

Solving Non-linear Arithmetic Dejan Jovanovic and Leonadro de Moura Presented by Boris Trayvas

Outline Background - Introduction - Conflict-Driven Clause Learning - Definitions An Abstract Decision Procedure - States and Well Formed States - Search, Clause & Conflict Rules Producing Explanations - More Definitions - Intro to Cylindrical Algebraic Decomposition - Projection Based Explanations Experimental Results

Introduction I Everyone loves polynomials! Tarski (1951) showed a decision procedure for elimination of quantifiers over the reals, which shows the existence of an (impractical) decision procedure for solving polynomial constraints. Collins (1975) first showed a procedure using cylindrical algebraic decomposition (CAD).

Introduction II

Conflict-Driven Clause Learning The Algorithm: Black boxes: - PickBranchingVariable() – What variable to “guess” next? - UnitPropagation() – What can I learn from the new assignment? - ConflictAnalysis() – What clause should I add to prevent the conflict?

CDCL Example

Definitions I

Definitions II

Definitions III

Definitions IV

Polynomial Constraint Problem

An Abstract Decision Procedure Although the algorithm is a CDCL-style algorithm, we will present it as an abstract transition system. This system can be generalized to apply to theories other than non-linear arithmetic.

Trail and Trail Elements

Trail Examples I

The Implied Assignment

Stage Increasing

Trail Examples II

Value

Well-Formed State

The Transition System

Search Rules I

Search Rules – Select-Clause The Select-Clause rule selects a clause from the current stage for which the value is undefined and moves to the clause processing mode to satisfy it.

Search Rules - Conflict The Conflict rule detects a clause from the current stage that is inconsistent and tries to resolve the conflict it by moving to the conflict analysis mode.

Search Rules Lift-Level

Search Rules - SAT

Search Rules - Forget The last rule is the Forget rule, that allows us to eliminate a clause that was added while analyzing conflicts.

Search Rules II Note that once we move to the next stage, all the clauses of the previous stages are satisfied, and they will not be selected by the Select-Clause or Conflict rules.

Clause Processing Rules

Processing Rules – B-Propagate

Processing Rules – R-Propagate

Processing Rules – Decide-Literal If neither of the propagate rules works, we assume that some literal is true for a compatible literal.

Conflict Analysis Rules

Conflict Rules – Resolve- Propagation

Conflict Rules – Resolve Decision

Conflict Rules - Consume

Conflict Rules – Drop-Stage

Conflict Rules - Unsat Finally, if we backtrack all the way to the beginning with a conflict, we will return unsat.

Termination Theorem

The Explain Procedure

Definitions V

A much needed example

Intro to CAD

Projection-Based Explanations

Experimental Results The algorithm (nlsat) did overall better than other algorithms. Each other algorithm was generally good at one or two problem sets and not so good on the others, but this algorithm was pretty good on all the problem sets.

Fin