Problem Solving for the 21St Century

Total Page:16

File Type:pdf, Size:1020Kb

Problem Solving for the 21St Century Problem Solving for the 21st Century Efficient Solvers for Satisfiability Modulo Theories A Knowledge Transfer Report from the London Mathematical Society and Smith Institute for Industrial Mathematics and System Engineering By Clark Barrett, Daniel Kroening and Tom Melham Copyright © 2014 by Clark Barrett, Daniel Kroening and Tom Melham Front cover image credits: Top left: Nataliya Hora / Shutterstock.com Top right: Mile Atanasov / Shutterstock.com Bottom left: G Tipene / Shutterstock.com Background: Serg64 / Shutterstock.com PROBLEM SOLVING FOR THE 21ST CENTURY Efficient Solvers for Satisfiability Modulo Theories By Clark Barrett, Daniel Kroening and Tom Melham Contents Page Executive Summary 3 Problem Solving with Satisfiability Modulo Theories 4 Success Stories 6 SMT in Depth 13 Current Challenges 17 Next Steps 18 Appendix 1: Business Solutions using SMT 19 Appendix 2: Active Researchers and Practitioner Groups 19 Appendix 3: SMT Solvers 22 References 23 June 2014 A Knowledge Transfer Report from the London Mathematical Society and the Smith Institute for Industrial Mathematics and System Engineering Edited by Robert Leese and Tom Melham London Mathematical Society, De Morgan House, 57–58 Russell Square, London WC1B 4HS Smith Institute, Surrey Technology Centre, Surrey Research Park, Guildford GU2 7YG 2 PROBLEM SOLVING FOR THE 21ST CENTURY Efficient Solvers for Satisfiability Modulo Theories AUTHORS Clark Barrett is Associate Professor of Computer Science at New York University. He received his PhD from Stanford University in 2003, advised by David Dill. His PhD thesis laid the groundwork for the architecture of modern Satisfiability Modulo Theories (SMT) solvers. He has written numerous articles on SMT and has built several SMT systems, the latest of which is CVC4. Professor Barrett was a founder of the SMT competition, and helps lead the SMT-LIB initiative, an effort to create standards and develop resources for the SMT community. He received the IBM Software Quality Innovation Award in 2008 for the CVC3 SMT solver, and he was a recipient of the Haifa Verification Conference award in 2010 for his pioneering work in SMT. cs.nyu.edu/˜barrett/ [email protected] Daniel Kroening is Professor of Computer Science at the University of Oxford and a Fellow of Magdalen College. He has received the M.E. and doctoral degrees in computer science from the University of Saarland in 1999 and 2001, respectively. He joined the Model Check- ing group in the Computer Science Department at Carnegie Mellon University in 2001 as a Postdoctoral Researcher, and was assistant professor at the Swiss Technical Institute in Zurich from 2004 to 2007. His research interests include automated formal verification of hardware and software systems, program analysis, automated testing, decision proce- dures, embedded systems, and hardware/software co-design. www.kroening.com [email protected] Tom Melham is Professor of Computer Science at the University of Oxford and a Fellow of Balliol College, where he is Tutor in Computation. He is also Associate Head (Research) of Oxford’s Mathematics, Physical and Life Sciences Division. Melham received his PhD from the University of Cambridge in 1990 for his foundational research in mechanised reason- ing. He was appointed to a Professorship of Computing Science at Glasgow in 1998, before moving to Oxford in 2002. Melham’s research expertise includes deductive theorem prov- ing, software architectures for formal reasoning tools, verification of software, firmware and hardware, formal modelling of systems, combined model checking and theorem proving, abstraction techniques, and integrating formal verification into hardware design methodolo- gies. He works closely with leading companies in microelectronics design on advanced tools and methods for chip design validation. www.cs.ox.ac.uk/tom.melham/ [email protected] A KNOWLEDGE TRANSFER REPORT FROM 3 THE LMS AND THE SMITH INSTITUTE Executive Summary What is the best way to allocate technique with wide applications in The core SMT algorithms are assets across an investment modern company management and generic and not special to a portfolio to minimise risk? How microeconomics. First used in particular problem. So, end-users should an airline, operating on earnest for planning in World War who can frame their practical razor-thin profit margins, assign II, linear programming has been a business and industrial problems in flight crew to flights to minimise mainstay of business and industry a mathematical way suitable for costs—at the same time meeting since the 1950s. SMT automatically benefit from regulations and ensuring the intense investment by the highly schedule is robust? What is the skilled technical specialists who most effective way to test a Enter SMT develop SMT algorithms, a smart software system in a limited time? way to tap into a sophisticated Are there any unforseen security Over the past decade, a new and technology that is improving by holes in a new business-critical revolutionary problem-solving leaps and bounds every year. computer system? technology has emerged: Satisfiability Modulo Theories, or To exploit SMT effectively, you have All these practical problems involve ‘SMT’ for short. Like linear to express the problem to be solved finding solutions to complex programming, it is a computerised in the right mathematical way. systems of constraining method for finding solutions to Some types of problems have requirements that can be business and industrial problems well-understood translations into formulated mathematically. The expressed mathematically by SMT, so the technology is ready for task resembles problem-solving in systems of constraints. But SMT early adoption by at least some school maths: formulate some can handle a richer language of enterprises seeking competitive equations that relate quantities in constraints than linear advantage. SMT solutions to other the problem to be solved, and then programming, and the method kinds of problems are the subject of find the right values for the encompasses a more varied range active academic and industrial variables that make the equations of mathematical concepts—so it research—and many more lie true. In business and industry, has the flexibility to tackle many awaiting creative discovery. however, the problems are vastly different kinds of problems. larger and the mathematics much This report explains the more complex and varied. With established success in the background to SMT technology and engineering design of computer presents several success stories. These important problems cannot chips, software that implements Our aim is to give a sense of the be solved by hand, but must be SMT does have limits to the size of potential of SMT as an effective tackled by computer software problem it can handle—but it has solution to some of today’s algorithms. A prominent example is also seen truly astonishing problems—and a unique emerging linear programming, a increases in speed and capacity technology to watch in the future. mathematical optimisation over the past decade. 4 PROBLEM SOLVING FOR THE 21ST CENTURY Efficient Solvers for Satisfiability Modulo Theories Problem Solving with Satisfiability Modulo Theories Computerised problem solving is usually numerical and requirements than conventional optimisation the practical science of using are expressed by linear constraints. methods. The technology has computer algorithms to identify, Linear programming and other already established its practical from among a class of potential mainstream optimisation credentials in the extremely alternatives, a solution that meets a techniques are in daily use in challenging world of digital circuit complex set of requirements. It business, industry, engineering, engineering, where it is used to begins with a real-world problem economics and management. mitigate the risk of expensive that can be formulated There are dozens of commercial design errors. And, although mathematically as a collection of and open-source software commercial SMT solutions are rare, conditions, or ‘constraints’. packages for optimisation, including there are a number of A computer program then carries specialised mathematical modelling high-performance academic out mathematical calculations or tools, as well as the ‘solvers’ software packages available for reasoning to produce a solution themselves. research and commercial use. that meets these requirements, if one exists. This report introduces a potentially The distinctive strength of SMT revolutionary, but still emerging, partly lies in the way it can handle Mathematical optimisation methods problem-solving technology, complex combinations of individual are an important class of Satisfiability Modulo Theories, constraints. Requirements don’t problem-solving methods that seek normally just called ‘SMT’ for short. have to just impose some individual a ‘best’ solution. The most With its roots in computer science conditions simultaneously: ‘C1 prominent is linear programming, in and mathematical logic, SMT takes must hold and C2 must hold and which the solutions sought are a completely different approach C3 must hold’. In SMT, any logical Box 1: The SAT Problem and its History Modern symbolic logic began in the 19th century with Boolean algebra, introduced in 1847 by the English mathematician George Boole [9]. Boolean algebra intro- duced the idea of expressing logical relationships by algebraic formulas. The opera- tions of the algebra include conjunction ‘AND’ and disjunction ‘OR’, together with negation
Recommended publications
  • “The Church-Turing “Thesis” As a Special Corollary of Gödel's
    “The Church-Turing “Thesis” as a Special Corollary of Gödel’s Completeness Theorem,” in Computability: Turing, Gödel, Church, and Beyond, B. J. Copeland, C. Posy, and O. Shagrir (eds.), MIT Press (Cambridge), 2013, pp. 77-104. Saul A. Kripke This is the published version of the book chapter indicated above, which can be obtained from the publisher at https://mitpress.mit.edu/books/computability. It is reproduced here by permission of the publisher who holds the copyright. © The MIT Press The Church-Turing “ Thesis ” as a Special Corollary of G ö del ’ s 4 Completeness Theorem 1 Saul A. Kripke Traditionally, many writers, following Kleene (1952) , thought of the Church-Turing thesis as unprovable by its nature but having various strong arguments in its favor, including Turing ’ s analysis of human computation. More recently, the beauty, power, and obvious fundamental importance of this analysis — what Turing (1936) calls “ argument I ” — has led some writers to give an almost exclusive emphasis on this argument as the unique justification for the Church-Turing thesis. In this chapter I advocate an alternative justification, essentially presupposed by Turing himself in what he calls “ argument II. ” The idea is that computation is a special form of math- ematical deduction. Assuming the steps of the deduction can be stated in a first- order language, the Church-Turing thesis follows as a special case of G ö del ’ s completeness theorem (first-order algorithm theorem). I propose this idea as an alternative foundation for the Church-Turing thesis, both for human and machine computation. Clearly the relevant assumptions are justified for computations pres- ently known.
    [Show full text]
  • Logic and Proof
    Logic and Proof Computer Science Tripos Part IB Lent Term Lawrence C Paulson Computer Laboratory University of Cambridge [email protected] Copyright c 2018 by Lawrence C. Paulson I Logic and Proof 101 Introduction to Logic Logic concerns statements in some language. The language can be natural (English, Latin, . ) or formal. Some statements are true, others false or meaningless. Logic concerns relationships between statements: consistency, entailment, . Logical proofs model human reasoning (supposedly). Lawrence C. Paulson University of Cambridge I Logic and Proof 102 Statements Statements are declarative assertions: Black is the colour of my true love’s hair. They are not greetings, questions or commands: What is the colour of my true love’s hair? I wish my true love had hair. Get a haircut! Lawrence C. Paulson University of Cambridge I Logic and Proof 103 Schematic Statements Now let the variables X, Y, Z, . range over ‘real’ objects Black is the colour of X’s hair. Black is the colour of Y. Z is the colour of Y. Schematic statements can even express questions: What things are black? Lawrence C. Paulson University of Cambridge I Logic and Proof 104 Interpretations and Validity An interpretation maps variables to real objects: The interpretation Y 7 coal satisfies the statement Black is the colour→ of Y. but the interpretation Y 7 strawberries does not! A statement A is valid if→ all interpretations satisfy A. Lawrence C. Paulson University of Cambridge I Logic and Proof 105 Consistency, or Satisfiability A set S of statements is consistent if some interpretation satisfies all elements of S at the same time.
    [Show full text]
  • Satisfiability 6 the Decision Problem 7
    Satisfiability Difficult Problems Dealing with SAT Implementation Klaus Sutner Carnegie Mellon University 2020/02/04 Finding Hard Problems 2 Entscheidungsproblem to the Rescue 3 The Entscheidungsproblem is solved when one knows a pro- cedure by which one can decide in a finite number of operations So where would be look for hard problems, something that is eminently whether a given logical expression is generally valid or is satis- decidable but appears to be outside of P? And, we’d like the problem to fiable. The solution of the Entscheidungsproblem is of funda- be practical, not some monster from CRT. mental importance for the theory of all fields, the theorems of which are at all capable of logical development from finitely many The Circuit Value Problem is a good indicator for the right direction: axioms. evaluating Boolean expressions is polynomial time, but relatively difficult D. Hilbert within P. So can we push CVP a little bit to force it outside of P, just a little bit? In a sense, [the Entscheidungsproblem] is the most general Say, up into EXP1? problem of mathematics. J. Herbrand Exploiting Difficulty 4 Scaling Back 5 Herbrand is right, of course. As a research project this sounds like a Taking a clue from CVP, how about asking questions about Boolean fiasco. formulae, rather than first-order? But: we can turn adversity into an asset, and use (some version of) the Probably the most natural question that comes to mind here is Entscheidungsproblem as the epitome of a hard problem. Is ϕ(x1, . , xn) a tautology? The original Entscheidungsproblem would presumable have included arbitrary first-order questions about number theory.
    [Show full text]
  • Solving the Boolean Satisfiability Problem Using the Parallel Paradigm Jury Composition
    Philosophæ doctor thesis Hoessen Benoît Solving the Boolean Satisfiability problem using the parallel paradigm Jury composition: PhD director Audemard Gilles Professor at Universit´ed'Artois PhD co-director Jabbour Sa¨ıd Assistant Professor at Universit´ed'Artois PhD co-director Piette C´edric Assistant Professor at Universit´ed'Artois Examiner Simon Laurent Professor at University of Bordeaux Examiner Dequen Gilles Professor at University of Picardie Jules Vernes Katsirelos George Charg´ede recherche at Institut national de la recherche agronomique, Toulouse Abstract This thesis presents different technique to solve the Boolean satisfiability problem using parallel and distributed architec- tures. In order to provide a complete explanation, a careful presentation of the CDCL algorithm is made, followed by the state of the art in this domain. Once presented, two proposi- tions are made. The first one is an improvement on a portfo- lio algorithm, allowing to exchange more data without loosing efficiency. The second is a complete library with its API al- lowing to easily create distributed SAT solver. Keywords: SAT, parallelism, distributed, solver, logic R´esum´e Cette th`ese pr´esente diff´erentes techniques permettant de r´esoudre le probl`eme de satisfaction de formule bool´eenes utilisant le parall´elismeet du calcul distribu´e. Dans le but de fournir une explication la plus compl`ete possible, une pr´esentation d´etaill´ee de l'algorithme CDCL est effectu´ee, suivi d'un ´etatde l'art. De ce point de d´epart,deux pistes sont explor´ees. La premi`ereest une am´eliorationd'un algorithme de type portfolio, permettant d'´echanger plus d'informations sans perte d’efficacit´e.
    [Show full text]
  • Foundations of Mathematics
    Foundations of Mathematics November 27, 2017 ii Contents 1 Introduction 1 2 Foundations of Geometry 3 2.1 Introduction . .3 2.2 Axioms of plane geometry . .3 2.3 Non-Euclidean models . .4 2.4 Finite geometries . .5 2.5 Exercises . .6 3 Propositional Logic 9 3.1 The basic definitions . .9 3.2 Disjunctive Normal Form Theorem . 11 3.3 Proofs . 12 3.4 The Soundness Theorem . 19 3.5 The Completeness Theorem . 20 3.6 Completeness, Consistency and Independence . 22 4 Predicate Logic 25 4.1 The Language of Predicate Logic . 25 4.2 Models and Interpretations . 27 4.3 The Deductive Calculus . 29 4.4 Soundness Theorem for Predicate Logic . 33 5 Models for Predicate Logic 37 5.1 Models . 37 5.2 The Completeness Theorem for Predicate Logic . 37 5.3 Consequences of the completeness theorem . 41 5.4 Isomorphism and elementary equivalence . 43 5.5 Axioms and Theories . 47 5.6 Exercises . 48 6 Computability Theory 51 6.1 Introduction and Examples . 51 6.2 Finite State Automata . 52 6.3 Exercises . 55 6.4 Turing Machines . 56 6.5 Recursive Functions . 61 6.6 Exercises . 67 iii iv CONTENTS 7 Decidable and Undecidable Theories 69 7.1 Introduction . 69 7.1.1 Gödel numbering . 69 7.2 Decidable vs. Undecidable Logical Systems . 70 7.3 Decidable Theories . 71 7.4 Gödel’s Incompleteness Theorems . 74 7.5 Exercises . 81 8 Computable Mathematics 83 8.1 Computable Combinatorics . 83 8.2 Computable Analysis . 85 8.2.1 Computable Real Numbers . 85 8.2.2 Computable Real Functions .
    [Show full text]
  • Turing-Computable Functions  • Let F :(Σ−{ })∗ → Σ∗
    Turing-Computable Functions • Let f :(Σ−{ })∗ → Σ∗. – Optimization problems, root finding problems, etc. • Let M be a TM with alphabet Σ. • M computes f if for any string x ∈ (Σ −{ })∗, M(x)=f(x). • We call f a recursive functiona if such an M exists. aKurt G¨odel (1931, 1934). c 2017 Prof. Yuh-Dauh Lyuu, National Taiwan University Page 60 Kurt G¨odela (1906–1978) Quine (1978), “this the- orem [···] sealed his im- mortality.” aThis photo was taken by Alfred Eisenstaedt (1898–1995). c 2017 Prof. Yuh-Dauh Lyuu, National Taiwan University Page 61 Church’s Thesis or the Church-Turing Thesis • What is computable is Turing-computable; TMs are algorithms.a • No “intuitively computable” problems have been shown not to be Turing-computable, yet.b aChurch (1935); Kleene (1953). bQuantum computer of Manin (1980) and Feynman (1982) and DNA computer of Adleman (1994). c 2017 Prof. Yuh-Dauh Lyuu, National Taiwan University Page 62 Church’s Thesis or the Church-Turing Thesis (concluded) • Many other computation models have been proposed. – Recursive function (G¨odel), λ calculus (Church), formal language (Post), assembly language-like RAM (Shepherdson & Sturgis), boolean circuits (Shannon), extensions of the Turing machine (more strings, two-dimensional strings, and so on), etc. • All have been proved to be equivalent. c 2017 Prof. Yuh-Dauh Lyuu, National Taiwan University Page 63 Alonso Church (1903–1995) c 2017 Prof. Yuh-Dauh Lyuu, National Taiwan University Page 64 Extended Church’s Thesisa • All “reasonably succinct encodings” of problems are polynomially related (e.g., n2 vs. n6). – Representations of a graph as an adjacency matrix and as a linked list are both succinct.
    [Show full text]
  • Classical Metalogic an Introduction to Classical Model Theory & Computability
    Classical Metalogic An Introduction to Classical Model Theory & Computability Notes by R.J. Buehler January 5, 2015 2 Preface What follows are my personal notes created in preparation for the UC-Berkeley Group in Logic preliminary exam. I am not a computability theorist, nor a model theorist; I am a graduate student with some knowledge who is–alas–quite fallible. Accordingly, this text is made available as a convenient reference, set of notes, and summary, but without even the slight hint of a guarantee that everything contained within is factual and correct (indeed, some areas are entirely unchanged from the moment I copied them off the blackboard). This said, if you find a serious error, I would greatly appreciate it if you would let me know so that it can be corrected. The material for these notes derives from a wide variety of sources: Lectures by Wes Holliday Lectures by Antonio Montalban Lectures by John Steel Kevin Kelly’s computability theory notes David Marker’s “Model Theory: An Introduction” Wilfrid Hodge’s “A Shorter Model Theory” Robert Soare’s “Recursively Enumerable Sets and Degrees" Richard Kaye’s “Models of Peano Arithmetic” Chang and Keisler’s “Model Theory" While I certainly hope my notes are beneficial, if you’re attempting to learn the contained material for the first time, I would highly suggest picking up (at least) a copy of Marker and Soare’s texts in addition. To those Group in Logic students who may be using these notes to help themselves prepare for their preliminary exam, chapters 1-5, 7, and 9-18 contain relevant material, as well as chapter 8, section 3.
    [Show full text]
  • Λ-Calculus: the Other Turing Machine
    λ-Calculus: The Other Turing Machine Guy Blelloch and Robert Harper July 25, 2015 The early 1930s were bad years for the worldwide economy, but great years for what would even- tually be called Computer Science. In 1932, Alonzo Church at Princeton described his λ-calculus as a formal system for mathematical logic,and in 1935 argued that any function on the natural numbers that can be effectively computed, can be computed with his calculus [4]. Independently in 1935, as a master's student at Cambridge, Alan Turing was developing his machine model of computation. In 1936 he too argued that his model could compute all computable functions on the natural numbers, and showed that his machine and the λ-calculus are equivalent [6]. The fact that two such different models of computation calculate the same functions was solid evidence that they both represented an inherent class of computable functions. From this arose the so-called Church-Turing thesis, which states, roughly, that any function on the natural numbers can be effectively computed if and only if it can be computed with the λ-calculus, or equivalently, the Turing machine. Although the Church-Turing thesis by itself is one of the most important ideas in Computer Science, the influence of Church and Turing's models go far beyond the thesis itself. The Turing machine has become the core of all complexity theory [5]. In the early 1960's Juris Hartmanis and Richard Stearns initiated the study of the complexity of computation. In 1967 Manuel Blum developed his axiomatic theory of complexity, which although independent of any particular machine, was considered in the context of a spectrum of Turing machines (e.g., one tape, two tape, or two stack).
    [Show full text]
  • Lecture 13: Propositional Logic Metatheoretic Definitions
    Valid, Invalid, . Lecture 13: Logical Consequence Propositional Logic Metatheoretic Definitions Logical Equivalence Laws of the Algebra of . Module Home Page Aims: Title Page • To discuss what we mean by valid, invalid, satisfiable and unsatisfiable; JJ II • To discuss what we mean by logical consequence; • To discuss what we mean by logical equivalence; and J I • To look at laws of propositional logic. Page 1 of 12 Back Full Screen Close Quit 13.1. Valid, Invalid, Satisfiable and Unsatisfiable • The truth-tables we saw in the previous lecture show that some wffs evaluate to true no matter how their atomic wffs are interpreted (every interpretation satisfies them), Valid, Invalid, . some evaluate to false for every interpretation of their atomic wffs (no interpretation Logical Consequence satisfies them), and others are true for some interpretations and false for others (some Logical Equivalence interpretations satisfy them, others don’t.) There is some terminology for all of this. Laws of the Algebra of . (There would be, wouldn’t there?) always true sometimes true/sometimes false always false Module Home Page tautology contingency contradiction logically true contingency logically false Title Page valid invalid unfalsifiable falsifiable JJ II satisfiable unsatisfiable Some books also use ‘consistent’ for ‘satisfiable’ and ‘inconsistent’ for ‘unsatisfiable’ J I but this is to be avoided. We will use just the following: valid/invalid and satisfiable/unsatisfiable. I ignore all Page 2 of 12 the others to avoid terminology overload: – A wff is valid if all interpretations satisfy it. Otherwise (i.e. if at least one does Back not satisfy it), it is invalid.
    [Show full text]
  • My Slides for a Course on Satisfiability
    Satisfiability Victor W. Marek Computer Science University of Kentucky Spring Semester 2005 Satisfiability – p.1/97 Satisfiability story ie× Á Satisfiability - invented in the ¾¼ of XX century by philosophers and mathematicians (Wittgenstein, Tarski) ie× Á Shannon (late ¾¼ ) applications to what was then known as electrical engineering ie× ie× Á Fundamental developments: ¼ and ¼ – both mathematics of it, and fundamental algorithms ie× Á ¼ - progress in computing speed and solving moderately large problems Á Emergence of “killer applications” in Computer Engineering, Bounded Model Checking Satisfiability – p.2/97 Current situation Á SAT solvers as a class of software Á Solving large cases generated by industrial applications Á Vibrant area of research both in Computer Science and in Computer Engineering ¯ Various CS meetings (SAT, AAAI, CP) ¯ Various CE meetings (CAV, FMCAD, DATE) ¯ CE meetings Stressing applications Satisfiability – p.3/97 This Course Á Providing mathematical and computer science foundations of SAT ¯ General mathematical foundations ¯ Two- and Three- valued logics ¯ Complete sets of functors ¯ Normal forms (including ite) ¯ Compactness of propositional logic ¯ Resolution rule, completeness of resolution, semantical resolution ¯ Fundamental algorithms for SAT ¯ Craig Lemma Satisfiability – p.4/97 And if there is enough of time and will... Á Easy cases of SAT ¯ Horn ¯ 2SAT ¯ Linear formulas Á And if there is time (but notes will be provided anyway) ¯ Expressing runs of polynomial-time NDTM as SAT, NP completeness ¯ “Mix and match” ¯ Learning in SAT, partial closure under resolution ¯ Bounded Model Checking Satisfiability – p.5/97 Various remarks Á Expected involvement of Dr. Truszczynski Á An extensive set of notes (> 200 pages), covering most of topics will be provided f.o.c.
    [Show full text]
  • Some Topics Related to Propositional Logic
    Some Topics Related to Propositional Logic Xishun Zhao [email protected] Institute of Logic and Cognition, Sun Yat-sen University Sun Yat-sen University Topics Related to Propositional Logic December 5, 2010 – p. 1/42 Outline Propositional Logic The Satisfiability Problem Sun Yat-sen University Topics Related to Propositional Logic December 5, 2010 – p. 2/42 Outline Propositional Logic The Satisfiability Problem Why SAT is so important? PversusNP Applications Sun Yat-sen University Topics Related to Propositional Logic December 5, 2010 – p. 2/42 Outline Propositional Logic The Satisfiability Problem Why SAT is so important? PversusNP Applications Challenges for SAT Solving and Its Applications Sun Yat-sen University Topics Related to Propositional Logic December 5, 2010 – p. 2/42 Outline Propositional Logic The Satisfiability Problem Why SAT is so important? PversusNP Applications Challenges for SAT Solving and Its Applications Minimal Unsatisfiability Sun Yat-sen University Topics Related to Propositional Logic December 5, 2010 – p. 2/42 Outline Propositional Logic The Satisfiability Problem Why SAT is so important? PversusNP Applications Challenges for SAT Solving and Its Applications Minimal Unsatisfiability Quantified Boolean Formulas (QBF) Sun Yat-sen University Topics Related to Propositional Logic December 5, 2010 – p. 2/42 Outline Propositional Logic The Satisfiability Problem Why SAT is so important? PversusNP Applications Challenges for SAT Solving and Its Applications Minimal Unsatisfiability Quantified Boolean Formulas (QBF) Expressive Power and Complexity Sun Yat-sen University Topics Related to Propositional Logic December 5, 2010 – p. 2/42 Outline Propositional Logic The Satisfiability Problem Why SAT is so important? PversusNP Applications Challenges for SAT Solving and Its Applications Minimal Unsatisfiability Quantified Boolean Formulas (QBF) Expressive Power and Complexity Future Work Sun Yat-sen University Topics Related to Propositional Logic December 5, 2010 – p.
    [Show full text]
  • The Explanatory Power of a New Proof: Henkin's Completeness Proof
    The explanatory power of a new proof: Henkin’s completeness proof John Baldwin February 25, 2017 Mancosu writes But explanations in mathematics do not only come in the form of proofs. In some cases expla- nations are sought in a major recasting of an entire discipline. ([Mancosu, 2008], 142) This paper takes up both halves of that statement. On the one hand we provide a case study of the explanatory value of a particular milestone proof. In the process we examine how it began the recasting of a discipline. Hafner and Mancosu take a broad view towards the nature of mathematical explanation. They ar- gue that before attempting to establish a model of explanation, one should develop a ‘taxonomy of re- current types of mathematical explanation’ ([Hafner and Mancosu, 2005], 221) and preparatory to such a taxonomy propose to examine in depth various examples of proofs. In [Hafner and Mancosu, 2005] and [Hafner and Mancosu, 2008], they study deep arguments in real algebraic geometry and analysis to test the models of explanation of Kitcher and Steiner. In their discussion of Steiner’s model they challenge1 the as- sertion [Resnik and Kushner, 1987] that Henkin’s proof of the completeness theorem is explanatory, asking ‘what the explanatory features of this proof are supposed to consist of?’ As a model theorist the challenge to ‘explain’ the explanatory value of this fundamental argument is irresistible. In contrasting the proofs of Henkin and Godel,¨ we seek for the elements of Henkin’s proofs that permit its numerous generalizations. In Section 2 we try to make this analysis more precise through Steiner’s notion of characterizing property.
    [Show full text]