Gцdel & Recursivity

Total Page:16

File Type:pdf, Size:1020Kb

Gцdel & Recursivity G¨odel& Recursivity JACQUES DUPARC B^atimentInternef CH - 1015 Lausanne [email protected] Jacques.Duparc@epfl.ch 2 Contents Introduction 7 I Recursivity 9 Recursivity 11 1 Towards Turing Machines 11 1.1 Deterministic Finite Automata . 11 1.2 Nondeterministic Finite Automata . 12 1.3 Regular Expressions . 16 1.4 Non-Regular Languages . 19 1.5 Pushdown Automata . 20 1.6 Context-Free Grammar . 22 2 Turing Machines 27 2.1 Deterministic Turing Machines . 27 2.2 Non-Deterministic Turing Machines . 32 2.3 The Concept of Algorithm . 35 2.4 Universal Turing Machine . 36 2.5 The Halting Problem . 40 2.6 Turing Machine with Oracle . 40 3 Recursive Functions 47 3.1 Primitive Recursive Functions . 47 3.2 Variable Substitution . 52 3.3 Bounded Minimisation and Bounded Quantification . 53 3.4 Coding Sequences of Integers . 55 3.5 Partial Recursive Functions . 57 4 CONTENTS Introduction Introduction 7 The basic requirements for this course are contained in the "Mathematical Logic" course. Among other things, you should have a clear understanding of each of the following: first order language, signature, terms, formulas, theory, proof theory, models, completeness theorem, compactness theorem, L¨owenheim-Skolem theorem. It makes no sense to take this course without this solid background on first order logic. The title of the course is ”G¨odeland Recursivity" but it should rather be "Recursivity and G¨odel"since that is the way we are going to go through these topics (1) Recursivity (2) G¨odel'sincompleteness theorems (there are two of them) Recursivity is at the heart of computer science, it represents the mathematical side of what computing is like. It is related to arithmetics and to proof theory. G¨odel'sincompleteness theorems are concerned with number theory (arithmetics) which itself lies at the core of mathematics. They contradict the commonly shared idea that everything that is true can be proved. It ruins the plan, for every mathematical statement ' to either prove it or disprove it (by proving '). G¨odel'sfirst incompleteness theorem says that there exists a formula ' from number theory such that neither ' nor ' is provable. More precisely, it says that in Peano Arithmetics (which is a first order axiomatization of arithmetics) there exists a formula ' that cannot be proved nor disproved, and if we were to add this formula to Peano Arithmetics, one would find a second one that would not be provable nor disprovable inside their first extension of Peano Arithmetics. And if this new formula would be added again, we could find a third one and so on and so forth. To put it differently, if we want to extend Peano Arithmetics to a larger theory which is complete in the sense that it proves or disproves any given formula, there would not have any understanding of this theory, we would not get hold of it, for it would not be recursive, meaning that we would not have any efficient way of figuring out whether a given closed formula is part of the theory or not (not provable from the theory, but simply part of the theory!). This is precisely where the notion of recursivity plays a crucial role. One does not have the right comprehension of G¨odel'sincompleteness theorems without a proper understanding of what recursivity is like. The formula that we will construct (the one that is not provable nor disprovable in Peano Arith- metics) is rather odd. There is no chance that one might tumble over such a formula during the usual mathematical practice. However, since G¨odel'sincompleteness theorem was proved, there have been several examples of real arithmetic mathematical formulas that are not provable nor disprovable in Peano Arith- metics, although the are formulated in the language of arithmetics. A good example of such a formula is the one related to Goodstein sequences (1944). A Goodstein m m m sequence is of the form Gp0q;Gp1q;Gp2q;:::, etc, where m is a positive integer. It is defined the following way (we take m “ 4 as an example, the general case being obtained by replacing 4 m m m Gp0q “ 4 by Gp0q “ m and gathering the other values Gp1q;Gp2q; etc the same way): 8 EPFL G¨odel& Recursivity 4 2 ˝ Gp0q “ 4 write 4 in hereditary base 2: 4 “ 2 replace all 2's by 3's, then subtract 1: 33 “ 26 4 2 1 0 ˝ Gp1q “ 26 write 26 in hereditary base 3: 26 “ 2 ¨ 3 ` 2 ¨ 3 2 ¨ 3 replace all 3's by 4's, then subtract 1: 2 ¨ 42 ` 2 ¨ 412 ¨ 40 ´ 1 “ 41 4 2 1 0 ˝ Gp2q “ 41 write 41 in hereditary base 4: 41 “ 2 ¨ 4 ` 2 ¨ 4 2 ¨ 4 replace all 4's by 5's, then subtract 1: 2 ¨ 52 ` 2 ¨ 512 ¨ 50 ´ 1 “ 60 4 ˝ Gp3q “ 60 ::: etc 4 402653209 Amazingly, Gpnq increases until n reaches the value 3 ¨ 2 where it reaches the maximum of 3 ¨ 2402653210 ´ 1, it stays there for the next 3 ¨ 2402653209 steps then starts its final descent and eventually reaches 0. m Amazingly, for every integer m, the Goodstein sequence pGpnqqnPN is ultimately constant with value 0, i.e. lim Gm “ 0: nÑ8 pnq However this statement which is easily formalizable in the language of arithmetics is not provable in Peano Arithmetics (Kirby and Paris 1982). It requires a stronger theory to be proved (for instance record order arithmetics). G¨odel'ssecond incompleteness theorem than says that mathematics cannot prove its own con- sistency (unless it is inconsistent in which case it can prove its own consistency for it can prove everything). More precisely, in any recursive extension J of Peano Arithmetics, the formula "ConspJq" (which is a formula from number theory that asserts that there is no proof of K from J) is not provable unless J is inconsistent i.e. IfJ&c thenJ&c ConspJq We will present three different approaches: ˝ Computer Science ÝÑ Turing Machine (one of the abstract model of computer) k ˝ Number Theory ÝÑ Recursive functions which are particular functions N Ñ N Part I Recursivity Chapter 1 Towards Turing Machines The whole chapter is highly inspired by Michael Sipser's book: \Introduction to the Theory of Computation" [31]. It is a dashing introduction to the notions of Finite Automata, PushDown Automata, Turing Machines. We also recommend \Introduction to automata theory, languages, and computation" by John E. HopcroftHopcroft, John E., Rajeev MotwaniMotwani, Rajeev et Jeffrey D. UllmanUllman, Jef- frey D. [19]; \Computational complexity" by Christos H. PapadimitriouPapadimitriou, Christos H. [26] and \A mathematical introduction to logic" by Herbert B. Enderton Enderton, Herbert B. [8]. 1.1 Deterministic Finite Automata We will see that any finite automaton can be regarded as a rudimentary Turing machine: a Turing machine that never writes anything and only goes one direction. Definition 1 A deterministic finite automaton (DFA) is a 5-tuple pQ; Σ; δ; q0;F q, where (1) Q is a finite set called the states, (2) Σ is a finite set called the alphabet, (3) δ : Q ˆ Σ ÝÑ Q is the transition function, (4) q0 P Q is the initial state, and (5) F Ď Q is the set of accepting states.1 We denote by Σă! (or equivalently by Σ˚) the set of finite words on Σ and by " the empty sequence. 1Accept states sometimes are called final states. 12 EPFL G¨odel& Recursivity ă! Definition 2 A DFA “ pQ; Σ; δ; q0;F q on an alphabet Σ accepts the word w P Σ if and A only if ˝ either w “ " (the empty sequence) and q0 P F ˝ or w “ xa0; : : : ; any with each ai P Σ, and there is a sequence of states r0; : : : ; rn`1 such that: ‚ r0 “ q0 ‚@ i ă n; δpri; aiq “ ri`1 ‚ rn`1 P F . Notation 3 Given any DFA , A p q “ tw P Σă! : w is accepted by u : L A A p q denotes the language accepted by . L A A Definition 4 Any language recognised by some deterministic finite automata (DF A) is called regular. Example 5 The following DFA recognises the language p q “ tw1 | w P t0; 1uă!u of all A L A the words of 0's and 1's that end with a 1. 0 1 q0 q1 1 0 1.2 Nondeterministic Finite Automata Given any alphabet Σ, we both assume that " R Σ holds and write Σ" for Σ Y t"u. Definition 6 A nondeterministic finite automaton (NFA) is a 5-tuple pQ; Σ; δ; q0;F q, where (1) Q is a finite set of states, (2) Σ is a finite alphabet, (3) δ : Q ˆ Σ" ÝÑ pQq is the transition function, P Recursivity 13 (4) q0 P Q is the initial state, and (5) F Ď Q is the set of accepting states. ă! Definition 7 Let “ pQ; Σ; δ; q0;F q be an NFA and w P Σ . We say that accepts w if N N and only if ˝ either w “ " the empty sequence and q0 P F ˝ or w can be written as w “ xa0; : : : ; any with each ai P Σ", and there is and a sequence of states r0; : : : ; rn`1 such that: ‚ r0 “ q0 ‚@ i ă n; ri`1 P δpri; aiq, ‚ rn`1 P F . Example 8 The following NFA recognises the language p q “ tw1 | w P t0; 1uă!u of all N L N the words of 0's and 1's that end with a 1. 0, 1 1 q0 q1 Proposition 9 Every NFA has an equivalent DFA. i.e. given any NFA there exists some N DFA such that D p q “ p q: L N L D Proof of Proposition 9: Given any NFA “ xQ; Σ; δ; q0;F y, we build some DFA “ 1 1 1 1 N D xQ ; Σ; δ ; q0;F y that recognises the same language.
Recommended publications
  • Thoery of Automata CS402
    Thoery of Automata CS402 mywbut.com Theory of Automata (CS402) Table of contents: Lecture N0. 1 .......................................................................................................................................................... 4 Summary............................................................................................................................................................ 4 What does automata mean? ............................................................................................................................... 4 Introduction to languages................................................................................................................................... 4 Alphabets ........................................................................................................................................................... 4 Strings................................................................................................................................................................ 4 Defining Languages........................................................................................................................................... 5 Lecture N0. 2 .......................................................................................................................................................... 9 Summary...........................................................................................................................................................
    [Show full text]
  • Gцdel & Recursivity
    G¨odel& Recursivity JACQUES DUPARC B^atimentInternef CH - 1015 Lausanne [email protected] Jacques.Duparc@epfl.ch 2 Contents Introduction 7 I Recursivity 9 1 Towards Turing Machines 11 1.1 Deterministic Finite Automata . 11 1.2 Nondeterministic Finite Automata . 12 1.3 Regular Expressions . 15 1.4 Non-Regular Languages . 19 1.5 Pushdown Automata . 20 1.6 Context-Free Grammar . 22 2 Turing Machines 27 2.1 Deterministic Turing Machines . 27 2.2 Non-Deterministic Turing Machines . 32 2.3 The Concept of Algorithm . 35 2.4 Universal Turing Machine . 37 2.5 The Halting Problem . 40 2.6 Turing Machine with Oracle . 41 3 Recursive Functions 51 3.1 Primitive Recursive Functions . 51 3.2 Variable Substitution . 56 3.3 Bounded Minimisation and Bounded Quantification . 58 3.4 Coding Sequences of Integers . 60 3.5 Partial Recursive Functions . 62 II Arithmetic 75 4 Representing Functions 77 4.1 Robinson Arithmetic . 77 4.2 Representable Functions . 83 4 CONTENTS 5 G¨odelFirst Incompleteness Theorem 111 5.1 G¨odelNumbers . 111 5.2 Coding the Proofs . 123 5.3 Undecidability of Robinson Arithmetic . 138 Introduction Introduction 7 The basic requirements for this course are contained in the "Mathematical Logic" course. Among other things, you should have a clear understanding of each of the following: first order language, signature, terms, formulas, theory, proof theory, models, completeness theorem, compactness theorem, L¨owenheim-Skolem theorem. It makes no sense to take this course without this solid background on first order logic. The title of the course is ”G¨odeland Recursivity" but it should rather be "Recursivity and G¨odel"since that is the way we are going to go through these topics (1) Recursivity (2) G¨odel'sincompleteness theorems (there are two of them) Recursivity is at the heart of computer science, it represents the mathematical side of what computing is like.
    [Show full text]
  • Abstract Lattices for the Verification of Systèmes with Stacks and Queues Tristan Le Gall
    Abstract lattices for the verification of systèmes with stacks and queues Tristan Le Gall To cite this version: Tristan Le Gall. Abstract lattices for the verification of systèmes with stacks and queues. Software Engineering [cs.SE]. Université Rennes 1, 2008. English. tel-00424552 HAL Id: tel-00424552 https://tel.archives-ouvertes.fr/tel-00424552 Submitted on 16 Oct 2009 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. No d’ordre: 3755 THESE` Pr´esent´ee devant l’Universit´ede Rennes 1 pour obtenir le grade de : Docteur de l’Universite´ de Rennes 1 Mention Informatique par Tristan Le Gall Equipe´ d’accueil : VerTeCS - IRISA Ecole´ Doctorale : Matisse Composante universitaire : IFSIC Titre de la th`ese : Abstract Lattices for the Verification of Systems with Queues and Stacks Soutenue le 2 juillet 2008 devant la commission d’examen M. : Olivier Ridoux Pr´esident MM. : Ahmed Bouajjani Rapporteurs Jean-Fran¸cois Raskin MM. : Bertrand Jeannet Examinateurs Gr´egoire Sutre Thierry Jeron Remerciements Je remercie Ahmed Bouajjani et Jean-Fran¸cois Raskin pour avoir accept´ede lire cette th`ese et d’en ˆetre les rapporteurs. C’est un honneur d’avoir dans mon jury des chercheurs si connus dans le domaine de la v´erification des syst`emes infinis.
    [Show full text]
  • TOC$Preparation$Kit! 2012$ !
    TOC$preparation$kit! 2012$ ! ! TPL([email protected])! Page!1! ! ! TOC$preparation$kit! 2012$ ! Contents Theory of computation 1. Introduction i. Terminology ii. Set Theory 2. Methods of proofs i. Types of proofs 3. Finite state Machine i. Deterministic Finite Automata ii. Non-Deterministic Finite Automata iii. E-NFA iv. Transformation of NFA to DFA 4. Regular expression and grammar i. Terminology ii. Construction of FA from regular Expression iii. Arden’s Theorem iv. Properties of RE 5. Context-free grammar i. Context Free grammar ii. BNF iii. Left and right most Derivation iv. Parse tree v. Ambiguity from Grammars 6. Push-down Automata i. Introduction to PDA 7. Turing Machine i. Introduction of Turing machine ii. Universal Turing machine 8. N AND NP class problems i. Introduction to N, NP and NP hard problems ii. Halting problem 9. Solution to Last year Questions i. 2067 questions solution ii. 2068 questions solution iii. Model question solution 10. Model Questions i. Set 1 ii. Set 2 iii. Set ! TPL([email protected])! Page!2! ! ! TOC$preparation$kit! 2012$ ! INTRODUCTION Set The term set is the collection of well-defined objects, which are called the elements of the sets. Georg Cantor (1845-1915) developed set theory. Sets are used throughout the theory of computation. Some examples of sets are given below: • The set of vowels in English alphabet • The set of natural numbers less than 12. • The set of odd numbers less than 20. There are three methods to describe a set: a. Enumeration method-listing b. Standard method or description method c.
    [Show full text]
  • Cse303 ELEMENTS of the THEORY of COMPUTATION
    cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska LECTURE 13 CHAPTER 4 TURING MACHINES 1. The definition of Turing machine 2. Computing with Turing machines 3. Extensions of Turing machines CHAPTER 5 UNDECIDABILITY 1. The Church-Turing thesis 2. Universal Turing machines 3. Undecidable problems about Turing machines CHAPTER 4 TURING MACHINES 1. The definition of Turing machine 2. Computing with Turing machines 3. Extensions of Turing machines The definition of Turing machine Short History The Turing machine was invented in 1936 by Alan Turing From Wikipedia: ”. Alan Mathison Turing (23 June 1912 7 June 1954), was a British mathematician, logician, cryptanalyst, and computer scientist. He was highly influential in the development of computer science, giving a formalization of the concepts of ”algorithm” and ”computation” with the Turing machine, which can be considered a model of a general purpose computer. He is widely considered to be the father of computer ]science and artificial intelligence” Short History Automata Theory is a theoretical branch of computer science developed by mathematicians during the 20th Century It deals with the logic of computation with respect to simple machines, referred to as automata Through automata, computer scientists are able to understand how machines compute functions and solve problems and what it means for a function to be defined as computable or for a question to be described as decidable Short History The first description of finite automata was presented in 1943 by Warren McCulloch and Walter Pitts, two neurophysiologists Their theory was generalized to much more powerful machines by G.H. Mealy and E.F.
    [Show full text]
  • Automata Theory (2A)
    Automata Theory (2A) Young Won Lim 5/31/18 Copyright (c) 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". Please send corrections (or suggestions) to [email protected]. This document was produced by using LibreOffice and Octave. Young Won Lim 5/31/18 Automata The word automata (the plural of automaton) comes from the Greek word αὐ τόματα, which means "self-acting". https://en.wikipedia.org/wiki/Automata_theory Young Won Lim Automata Theory (2A) 3 5/31/18 Automata Informal description (1) – Inputs An automaton runs when it is given some sequence of inputs in discrete (individual) time steps or steps. An automaton processes one input picked from a set of symbols or letters, which is called an alphabet. The symbols received by the automaton as input at any step are a finite sequence of symbols called words. https://en.wikipedia.org/wiki/Automata_theory Young Won Lim Automata Theory (2A) 4 5/31/18 Automata informal description (2) – States An automaton has a finite set of states. At each moment during a run of the automaton, the automaton is in one of its states. When the automaton receives new input it moves to another state (or transitions) based on a function that takes the current state and input symbol as parameters.
    [Show full text]
  • Syllabus Third Year (Computer Engineering) Course 2012
    SYLLABUS THIRD YEAR (COMPUTER ENGINEERING) COURSE 2012 (EFFECTIVE FROM JUNE 2014) University of Pune Course Structure for TE Computer Engineering 2012 Course (w.e.f. June 2014) Subject Teaching Scheme Subject Examination Scheme Mark Code Hrs/Week Tut End In-Semester Lect. oria Pract Tw Pr OR Semester Total Assessment ls Exam SEM – I 310241 Theory of Computation 4 — — 30 — — — 70 100 — 100 310242 Operating Systems Design 4 — — 30 — — 70 Data Communication and — 100 310243 4 — — 30 — — 70 Wireless Sensor Networks Database Management 100 310244 3 — — 30 — — — 70 Systems Applications Computer Forensic and 100 310245 3 — — 30 — — — 70 Cyber Applications 310246 Programming Lab-I — — 4 — 50 50 — 100 310247 Programming Lab-II — — 4 — 50 — 50 — 100 Employability Skills 310248 — — 2 — 50 — — — 50 Development Lab Total of Semester – I 18 — 10 150 100 50 100 350 750 Course Structure for TE Computer Engineering 2012 Course (w.e.f. June 2014) SEM – II Subject Teaching Scheme Subject Examination Scheme Mark Code Hrs/Week Tut End In-Semester Lect. oria Pract Tw Pr Or Semester Total Assessment ls Assessment Principles of Concurrent and 310249 4 — — 30 — — — 70 100 Distributed Programming Embedded Operating 100 310250 4 — — 30 — — — 70 Systems 100 310251 Computer Networks 4 — — 30 — — — 70 100 310252 Software Engineering 3 — — 30 — — — 70 Digital Signal Processing 100 310253 3 — — 30 — — — 70 Applications 310254 Programming Laboratory-III — — 4 — — 50 50 — 100 310255 Programming Laboratory-IV — — 4 — 50 — 50 — 100 Seminar and Technical 310256 — — 2 — 50
    [Show full text]
  • Cf Cf Cf Cf Cf Cf Cf Cf Cf Cf Cf Cf Cf Cf Cp Cf Cp Cp Pr
    ELECTRONICS & COMMUNICATION ENGINEERING DEPARTMENT B.E. – ELECTRONICS AND COMPUTER ENGINEERING 2019 SEMESTER-I Sr. No. Course No. TITLE CODE L T P Cr 1 UCB008 APPLIED CHEMISTRY CF 3 1 2 4.5 2 UTA017 COMPUTER PROGRAMMING CF 3 0 2 4 3 UES013 ELECTRICAL ENGINEERING CF 3 1 2 4.5 4 UEN002 ENERGY& ENVIRONMENT CF 3 0 0 3 5 UMA010 MATHEMATICS-I CF 3 1 0 3.5 6 UES009 MECHANICS CF 2 1 0 2.5 TOTAL 17 4 6 22.0 *Student will attend one Lab Session of 2 hrs in a semester for a bridge project in this course. SEMESTER-II Sr. No. Course No. TITLE CODE L T P Cr 1 UPH004 APPLIED PHYSICS CF 3 1 2 4.5 2 UTA018 OBJECT ORIENTED PROGRAMMING CF 3 0 2 4.0 3 UEC001 ELECTRONIC ENGINEERING CF 3 1 2 4.5 4 UTA015 ENGINEERING DRAWING CF 2 0 4 4.0 5 UMA004 MATHEMATICS-II CF 3 1 0 3.5 6 UHU003 PROFESSIONAL COMMUNICATION CF 2 0 2 3.0 TOTAL 16 3 12 23.5 SEMESTER-III Sr. No. Course No. TITLE CODE L T P Cr 1 UES012 ENGINEERING MATERIALS CF 3 1 2 4.5 2 UMA011 NUMERICAL ANALYSIS CF 3 0 2 4.0 COMPUTER AND COMMUNICATION 3 UEC533 NETWORKS CP 3 0 0 3.0 INFORMATION AND 4 UEC310 COMMUNICATION THEORY CF 3 1 0 3.5 5 UEC301 ANALOG ELECTRONIC CIRCUITS CP 3 1 2 4.5 6 UEC612 DIGITAL SYSTEM DESIGN CP 3 1 2 4.5 ENGINEERING DESIGN PROJECT – I 7 UTA013 (including 4 self effort hours) PR 1 0 2 4.0 TOTAL 19 4 10 28.0 SEMESTER-IV Sr.
    [Show full text]
  • Turing Machine Operation-A Checks and Balances Model
    International Journal of Modern Engineering Research (IJMER) www.ijmer.com Vol.2, Issue.4, July-Aug. 2012 pp-2028-2109 ISSN: 2249-6645 Turing Machine Operation-A Checks and Balances Model 1Dr. K. N. Prasanna Kumar, 2Prof. B. S. Kiranagi, 3 Prof C S Bagewadi ABSTRACT: A state register that stores the state of the Turing machine, one of finitely many. There is one special start state with which the state register is initialized. These states, writes Turing, replace the "state of mind" a person performing computations would ordinarily be in.It is like bank ledger, which has Debits and Credits. Note that in double entry computation, both debits and credits are entered in to the systems, namely the Bank Ledger and balance is posted. Individual Debits are equivalent to individual credits. On a generalizational and globalist scale, a “General Ledger” is written which records in all its wide ranging manifestation the Debits and Credits. This is also conservative. In other words Assets is equivalent to Liabilities. True, Profit is distributed among overheads and charges, and there shall be another account in the General ledger that is the account of Profit. This account is credited with the amount earned as commission, exchange, or discount of bills. Now when we write the “General Ledger” of Turing machine, the Primma Donna and terra firma of the model, we are writing the General Theory of all the variables that are incorporated in the model. So for every variable, we have an anti variable. This is the dissipation factor. Conservation laws do hold well in computers.
    [Show full text]