LNCS 3988, Pp

Total Page:16

File Type:pdf, Size:1020Kb

LNCS 3988, Pp The Church-Turing Thesis Consensus and Opposition Martin Davis Mathematics Dept., University of California, Berkeley, CA 94720, USA [email protected] Many years ago, I wrote [7]: It is truly remarkable (G¨odel . speaks of a kind of miracle) that it has proved possible to give a precise mathematical characterization of the class of processes that can be carried out by purely machanical means. It is in fact the possibility of such a characterization that underlies the ubiquitous applicability of digital computers. In addition it has made it possible to prove the algorithmic unsolvability of important problems, has provided a key tool in mathematical logic, has made available an array of fundamental models in theoretical computer science, and has been the basis of a rich new branch of mathemtics. A few years later I wrote [8]: Thesubject...isAlanTuring’sdiscoveryoftheuniversal(orall-purpose) digitalcomputerasa mathematicalabstraction....Wewilltrytoshow how this very abstract work helped to lead Turing and John von Neu- mann to the modern concept of the electronic computer. In the 1980s when those words were written, the notion that the work by the logicians Church, Post, and Turing had a significant relationship with the coming of the modern computer was by no means generally accepted. What was innovative about the novel vacuum tube computers being built in the late 1940s was still generally thought to be captured in the phrase “the stored program concept”. Much easier to think of this revolutionary paradign shift in terms of the use of a piece of hardware than to credit Turing’s abstract pencil-and- paper “universal” machines as playing the key role. However by the late 1990s a consensus had developed that the Church-Turing Thesis is indeed the basis of modern computing practice. Statements could be found characterizing it as a natural law, without proper care to distinguish between the infinitary nature of the work of the logicians and the necessarily finite character of physical comput- ers. Even the weekly news magazine Time in its celebration of the outstanding thinkers of the twentieth century proclaimed in their March 29, 1999 issue: . the fact remains that everyone who taps at a keyboard, opening a spreadsheet or a word-processing program, is working on an incarnation of a Turing machine. A. Beckmann et al. (Eds.): CiE 2006, LNCS 3988, pp. 125–132, 2006. c Springer-Verlag Berlin Heidelberg 2006 126 M. Davis Virtually all computers today from $10 million supercomputers to the tiny chips that power cell phones and Furbies, have one thing in common: they are all “von Neumann machines,” variations on the basic computer architecture that John von Neumann, building on the work of Alan Turing, laid out in the 1940s. Despite all of this, computer scientists have had to struggle with the all- too-evident fact that from a practical point of view, Turing computability does not suffice. Von Neumann’s awareness from the very beginning of not only the significance of Turing universality but also of the crucial need for attention in computer design to limitations of space and time comes out clearly in the report [3]: It is easy to see by formal-logical methods that there exist codes that are in abstracto adequate to control and cause the execution of any sequence of operations which are individually available in the machine and which are, in their entirety, conceivable by the problem planner. The really decisive considerations from the present point of view, in selecting a code, are of a more practical nature: simplicity of the equipment demanded by the code, and the clarity of its application to the actually important problems together with the speed of its handling those problems. Steve Cook’s ground-breaking work of 1971 establishing the NP-completeness of the satisfiability problem, and the independent discovery of the same phenom- enon by Leonid Levin, opened a Pandora’s box of NP-complete problems for which no generally feasible algorithms are known, and for which, it is believed, none exist. With these problems Turing computability doesn’t help because, in each case, the number of steps required by the best algorithms available grows exponentially with the length of the input, making their use in practice prob- lematical. How strange that despite this clear evidence that computbility alone does not suffice for practical purposes, a movement has developed under the banner of “hypercomputation” proposing the practicality of computing the non- computable. In a related direction, it has been proposed that in our very skulls resides the ability to transcend the computable. It is in this context, that this talk will survey the history of and evidence for Turing computability as a theoretical and practical upper limit to what can be computed. 1 The Birth of Computability Theory This is a fascinating story of how various researchers approaching from different directions all arrived at the same destination. Emil Post working in isolation and battling his bipolar demons arrived at his notion of normal set already in the 1920s. After Alonzo Church’s ambitious logical system was proved inconsistent by his students Kleene and Rosser, he saw how to extract from it a consistent subsystem, the λ-calculus. From this, Church and Kleene arrived at their notion of λ-definability, which Church daringly proposed as a precise equivalent of the The Church-Turing Thesis 127 intuitive notion of calculability. Kurt G¨odel in lectures 1n 1934 suggested that this same intuitive notion would be captured by permitting functions to be spec- ified by recursive definitions of the most general sort and even suggested one way this could be realized. Finally, Alan Turing in England, knowing none of this, came up with his own formulation of computability in terms of abstract ma- chines limited to the most elemental operations but permitted unlimited space. Remarkably all these notions turned out to be equivalent.1 2 Computability and Computers I quote from what I have written elsewhere [9]: . there is no doubt that, from the beginning the logicians developing the theoretical foundations of computing were thinking also in terms of physical mechanism. Thus, as early as 1937, Alonzo Church reviewing Turing’s classic paper wrote [4]: [Turing] proposes as a criterion that an infinite sequence of digits 0 and 1 be ’computable’ that it shall be possible to devise a computing machine, occupying a finite space and with working parts of finite size, which will write down the sequence to any desired number of terms if allowed to run for a sufficiently long time. As a matter of convenience, certain further restrictions are imposed on the character of the machine, but these are of such a nature as obviously to cause no loss of generality . Turing himself speaking to the London Mathematical Society in 1947 said [24]: Some years ago I was researching what now may be described as an investigation of the theoretical possibilities and limitations of digital computing machines. I considered a type of machine which had a central mechanism, and an infinite memory which was contained on an infinite tape. This type of machine seemed to be sufficiently general. One of my conclusions was that the idea of ’rule of thumb’ process and ’machine process’ were synonymous. Referring to the machine he had designed for the British National Physics Laboratory, Turing went on to say: Machines such as the ACE (Automatic Computing Engine) may be regarded as practical versions of this same type of machine. Of course one should not forget that the infinite memory of Turing’s model can not be realized in the physical world we inhabit. It is certainly impressive to observe the enormous increase in storage capability in readily available comput- ers over the years making more and more of the promise of universality enjoyed by Turing’s abstract devices available to all of us. But nevertheless it all remains 1 I tell the story in some detail in my [7] and provide additional references. My account is not entirely fair to Church; for a better account of his contribution see [21]. 128 M. Davis finite. Elsewhere I’ve emphasized the paradigm shift in our understanding of computation already implicit in Turing’s theoretical work [11, 12]: BeforeTuringthe...suppositionwasthat...thethreecategories,ma- chine, program, and data, were entirely separate entities. The machine was a physical object . hardware. The program was the plan for doing a computation...Thedatawasthenumericalinput. Turing’s universal machine showed that the distinctness of these three categories is an illu- sion. A Turing machine is initially envisioned as a machine . , hardware. Butitscode...functionsasa program, detailing the instructions to the universalmachine...Finally,theuniversalmachineinits step-by-step actions sees the . machine code as just more data to be worked on. This fluidity...is fundamental to contemporary computer practice. A program ...is data to the . compiler. One can see this interplay manifested in the recent quite non-theoretical book [14], for example in pp. 6–11. 3 Trial and Error Computability as Hypercomputation Consider a computation which produces output from time to time and which is guaranteed to eventually produce the correct desired output, but with no bound on the time required for this to occur. However once the correct output has been produced any subsequent output will simply repeat this correct result. Someone who wishes to know the correct answer would have no way to know at any given time whether the latest output is the correct output. This situation was analyzed by E.M. Gold and by Hilary Putnam [15, 19]. If the computation is to determine whether or not a natural number n as input belongs to some set S,thenit turns out that sets for which such “trial and error” computation is available are 0 exactly those in the Δ2 class in the arithmetic hierarchy.
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]
  • Elementary Functions: Towards Automatically Generated, Efficient
    Elementary functions : towards automatically generated, efficient, and vectorizable implementations Hugues De Lassus Saint-Genies To cite this version: Hugues De Lassus Saint-Genies. Elementary functions : towards automatically generated, efficient, and vectorizable implementations. Other [cs.OH]. Université de Perpignan, 2018. English. NNT : 2018PERP0010. tel-01841424 HAL Id: tel-01841424 https://tel.archives-ouvertes.fr/tel-01841424 Submitted on 17 Jul 2018 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Délivré par l’Université de Perpignan Via Domitia Préparée au sein de l’école doctorale 305 – Énergie et Environnement Et de l’unité de recherche DALI – LIRMM – CNRS UMR 5506 Spécialité: Informatique Présentée par Hugues de Lassus Saint-Geniès [email protected] Elementary functions: towards automatically generated, efficient, and vectorizable implementations Version soumise aux rapporteurs. Jury composé de : M. Florent de Dinechin Pr. INSA Lyon Rapporteur Mme Fabienne Jézéquel MC, HDR UParis 2 Rapporteur M. Marc Daumas Pr. UPVD Examinateur M. Lionel Lacassagne Pr. UParis 6 Examinateur M. Daniel Menard Pr. INSA Rennes Examinateur M. Éric Petit Ph.D. Intel Examinateur M. David Defour MC, HDR UPVD Directeur M. Guillaume Revy MC UPVD Codirecteur À la mémoire de ma grand-mère Françoise Lapergue et de Jos Perrot, marin-pêcheur bigouden.
    [Show full text]
  • Reconfigurable Embedded Control Systems: Problems and Solutions
    RECONFIGURABLE EMBEDDED CONTROL SYSTEMS: PROBLEMS AND SOLUTIONS By Dr.rer.nat.Habil. Mohamed Khalgui ⃝c Copyright by Dr.rer.nat.Habil. Mohamed Khalgui, 2012 v Martin Luther University, Germany Research Manuscript for Habilitation Diploma in Computer Science 1. Reviewer: Prof.Dr. Hans-Michael Hanisch, Martin Luther University, Germany, 2. Reviewer: Prof.Dr. Georg Frey, Saarland University, Germany, 3. Reviewer: Prof.Dr. Wolf Zimmermann, Martin Luther University, Germany, Day of the defense: Monday January 23rd 2012, Table of Contents Table of Contents vi English Abstract x German Abstract xi English Keywords xii German Keywords xiii Acknowledgements xiv Dedicate xv 1 General Introduction 1 2 Embedded Architectures: Overview on Hardware and Operating Systems 3 2.1 Embedded Hardware Components . 3 2.1.1 Microcontrollers . 3 2.1.2 Digital Signal Processors (DSP): . 4 2.1.3 System on Chip (SoC): . 5 2.1.4 Programmable Logic Controllers (PLC): . 6 2.2 Real-Time Embedded Operating Systems (RTOS) . 8 2.2.1 QNX . 9 2.2.2 RTLinux . 9 2.2.3 VxWorks . 9 2.2.4 Windows CE . 10 2.3 Known Embedded Software Solutions . 11 2.3.1 Simple Control Loop . 12 2.3.2 Interrupt Controlled System . 12 2.3.3 Cooperative Multitasking . 12 2.3.4 Preemptive Multitasking or Multi-Threading . 12 2.3.5 Microkernels . 13 2.3.6 Monolithic Kernels . 13 2.3.7 Additional Software Components: . 13 2.4 Conclusion . 14 3 Embedded Systems: Overview on Software Components 15 3.1 Basic Concepts of Components . 15 3.2 Architecture Description Languages . 17 3.2.1 Acme Language .
    [Show full text]
  • YANLI: a Powerful Natural Language Front-End Tool
    AI Magazine Volume 8 Number 1 (1987) (© AAAI) John C. Glasgow I1 YANLI: A Powerful Natural Language Front-End Tool An important issue in achieving acceptance of computer sys- Since first proposed by Woods (1970), ATNs have be- tems used by the nonprogramming community is the ability come a popular method of defining grammars for natural to communicate with these systems in natural language. Of- language parsing programs. This popularity is due to the ten, a great deal of time in the design of any such system is flexibility with which ATNs can be applied to hierarchically devoted to the natural language front end. An obvious way to describable phenomenon and to their power, which is that of simplify this task is to provide a portable natural language a universal Turing machine. As discussed later, a grammar front-end tool or facility that is sophisticated enough to allow in the form of an ATN (written in LISP) is more informative for a reasonable variety of input; allows modification; and, than a grammar in Backus-Naur notation. As an example, yet, is easy to use. This paper describes such a tool that is the first few lines of a grammar for an English sentence writ- based on augmented transition networks (ATNs). It allows ten in Backus-Naur notation might look like the following: for user input to be in sentence or nonsentence form or both, provides a detailed parse tree that the user can access, and sentence : := [subject] predicate also provides the facility to generate responses and save in- subject ::= noun-group formation.
    [Show full text]
  • Turing's Influence on Programming — Book Extract from “The Dawn of Software Engineering: from Turing to Dijkstra”
    Turing's Influence on Programming | Book extract from \The Dawn of Software Engineering: from Turing to Dijkstra" Edgar G. Daylight∗ Eindhoven University of Technology, The Netherlands [email protected] Abstract Turing's involvement with computer building was popularized in the 1970s and later. Most notable are the books by Brian Randell (1973), Andrew Hodges (1983), and Martin Davis (2000). A central question is whether John von Neumann was influenced by Turing's 1936 paper when he helped build the EDVAC machine, even though he never cited Turing's work. This question remains unsettled up till this day. As remarked by Charles Petzold, one standard history barely mentions Turing, while the other, written by a logician, makes Turing a key player. Contrast these observations then with the fact that Turing's 1936 paper was cited and heavily discussed in 1959 among computer programmers. In 1966, the first Turing award was given to a programmer, not a computer builder, as were several subsequent Turing awards. An historical investigation of Turing's influence on computing, presented here, shows that Turing's 1936 notion of universality became increasingly relevant among programmers during the 1950s. The central thesis of this paper states that Turing's in- fluence was felt more in programming after his death than in computer building during the 1940s. 1 Introduction Many people today are led to believe that Turing is the father of the computer, the father of our digital society, as also the following praise for Martin Davis's bestseller The Universal Computer: The Road from Leibniz to Turing1 suggests: At last, a book about the origin of the computer that goes to the heart of the story: the human struggle for logic and truth.
    [Show full text]
  • Quantum Hypercomputation—Hype Or Computation?
    Quantum Hypercomputation—Hype or Computation? Amit Hagar,∗ Alex Korolev† February 19, 2007 Abstract A recent attempt to compute a (recursion–theoretic) non–computable func- tion using the quantum adiabatic algorithm is criticized and found wanting. Quantum algorithms may outperform classical algorithms in some cases, but so far they retain the classical (recursion–theoretic) notion of computability. A speculation is then offered as to where the putative power of quantum computers may come from. ∗HPS Department, Indiana University, Bloomington, IN, 47405. [email protected] †Philosophy Department, University of BC, Vancouver, BC. [email protected] 1 1 Introduction Combining physics, mathematics and computer science, quantum computing has developed in the past two decades from a visionary idea (Feynman 1982) to one of the most exciting areas of quantum mechanics (Nielsen and Chuang 2000). The recent excitement in this lively and fashionable domain of research was triggered by Peter Shor (1994) who showed how a quantum computer could exponentially speed–up classical computation and factor numbers much more rapidly (at least in terms of the number of computational steps involved) than any known classical algorithm. Shor’s algorithm was soon followed by several other algorithms that aimed to solve combinatorial and algebraic problems, and in the last few years the- oretical study of quantum systems serving as computational devices has achieved tremendous progress. According to one authority in the field (Aharonov 1998, Abstract), we now have strong theoretical evidence that quantum computers, if built, might be used as powerful computational tool, capable of per- forming tasks which seem intractable for classical computers.
    [Show full text]
  • Church-Turing Thesis: Every Function F: {0,1}* -> {0,1}* Which Is "Effectively Computable" Is Computable by a Turing Machine
    Church-Turing Thesis: Every function f: {0,1}* -> {0,1}* which is "effectively computable" is computable by a Turing Machine. Observation: Every Turing Machine (equivalently, every python program, or evey program in your favorite language) M can be encoded by a finite binary string #M. Moreover, our encoding guarantees #M != #M' whenever M and M' are different Turing Machines (different programs). Recall: Every finite binary string can be thought of as a natural number written in binary, and vice versa. Therefore, we can think of #M as a natural number. E.g. If #M = 1057, then we are talking about the 1057th Turing Machine, or 1057th python program. Intuitive takeaway: At most, there are as many different Turing Machines (Programs) as there are natural numbers. We will now show that some (in fact most) decision problems f: {0,1}* -> {0,1} are not computable by a TM (python program). If a decision problem is not comptuable a TM/program then we say it is "undecidable". Theorem: There are functions from {0,1}* to {0,1} which are not computable by a Turing Machine (We say, undecidable). Corollary: Assuming the CT thesis, there are functions which are not "effectively computable". Proof of Theorem: - Recall that we can think of instead of of {0,1}* - "How many" functions f: -> {0,1} are there? - We can think of each each such function f as an infinite binary string - For each x in (0,1), we can write its binary expansion as an infinite binary string to the right of a decimal point - The string to the right of the decimal point can be interpreted as a function f_x from natural numbers to {0,1} -- f_x(i) = ith bit of x to the right of the decimal point - In other words: for each x in (0,1) we get a different function f_x from natural numbers to {0,1}, so there are at least as many decision problems as there are numbers in (0,1).
    [Show full text]
  • Truth Definitions and Consistency Proofs
    TRUTH DEFINITIONS AND CONSISTENCY PROOFS BY HAO WANG 1. Introduction. From investigations by Carnap, Tarski, and others, we know that given a system S, we can construct in some stronger system S' a criterion of soundness (or validity) for 5 according to which all the theorems of 5 are sound. In this way we obtain in S' a consistency proof for 5. The consistency proof so obtained, which in no case with fairly strong systems could by any stretch of imagination be called constructive, is not of much interest for the purpose of understanding more clearly whether the system S is reliable or whether and why it leads to no contradictions. However, it can be of use in studying the interconnection and relative strength of different systems. For example, if a consistency proof for 5 can be formalized in S', then, according to Gödel's theorem that such a proof cannot be formalized in 5 itself, parts of the argument must be such that they can be formalized in S' but not in S. Since S can be a very strong system, there arises the ques- tion as to what these arguments could be like. For illustration, the exact form of such arguments will be examined with respect to certain special systems, by applying Tarski's "theory of truth" which provides us with a general method for proving the consistency of a given system 5 in some stronger system S'. It should be clear that the considerations to be presented in this paper apply to other systems which are stronger than or as strong as the special systems we use below.
    [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]
  • Alan Turing, Hypercomputation, Adam Smith and Next Generation Intelligent Systems
    J. Intell. Syst. 21 (2012), 325–330 DOI 10.1515/jisys-2012-0017 © de Gruyter 2012 Something Old, Something New, Something Borrowed, Something Blue Part 1: Alan Turing, Hypercomputation, Adam Smith and Next Generation Intelligent Systems Mark Dougherty Abstract. In this article intelligent systems are placed in the context of accelerated Turing machines. Although such machines are not currently a reality, the very real gains in computing power made over previous decades require us to continually reevaluate the potential of intelligent systems. The economic theories of Adam Smith provide us with a useful insight into this question. Keywords. Intelligent Systems, Accelerated Turing Machine, Specialization of Labor. 2010 Mathematics Subject Classification. Primary 01-02, secondary 01A60, 01A67. 1 Introduction The editor-in-chief of this journal has asked me to write a series of shorter articles in which I try to illuminate various challenges in intelligent systems. Given space requirements they cannot be regarded as comprehensive reviews, they are intended to provide an overview and to be a point of departure for discussion and debate. The title of the series implies that I will look at both very old and rather new concepts and I will not be afraid to borrow from other subjects. Nor will I be afraid to incorporate radical “blue skies” ideas or hypotheses. By challenges I mean aspects of our subject which cannot easily be tackled by either theoretical means or through empirical enquiry. That may be because the questions raised are not researchable or because no evidence has yet been ob- served. Or it may be that work is underway but that no firm conclusions have yet been reached by the research community.
    [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]