Computable and Computably Enumerable Languages

Total Page:16

File Type:pdf, Size:1020Kb

Computable and Computably Enumerable Languages Computable and computably enumerable languages Peter Mayr Computability Theory, February 1, 2021 Definition � A DTM M with input alphabetΣ is halting if M halts on everyw Σ . ∈ ∗ � If M is halting, it decides its languageL(M). � L is computable (also decidable, recursive) if there exists a halting DTMM such thatL=L(M). � L is computably enumerable (c.e.) (also semi-decidable, recursively enumerable) if there exists a DTMM such that L=L(M). Note � Even ifM is not halting,L(M) may still be computable by a different DTM. � regular computable c.e. ⇒ ⇒ Theorem L is computable iffL and its complement L¯ is c.e. Proof. : LetL=L(M) for a halting DTMM. ⇒ � ThenL is c.e. by definition. � Also L¯=L(M �) is c.e. withM � likeM but with accept and reject stateflipped. : LetM = (Q ,...,δ ),M = (Q ,...,δ ) be DTMs with ⇐ 1 1 1 2 2 2 L=L(M 1), L¯=L(M 2). ConstructM to runM 1,M 2 in parallel on inputw: � statesQ 1 Q 2 × � tape alphabetΓ 1 Γ 2 × � transition functionδ 1 δ 2 × � accept states t 1 Q 2 (M1 accepts) { } × � reject statesQ 1 t2 (M 2 accepts) × { } ThenM is halting andL(M)=L. Closure properties of computable languages Theorem The class of computable languages is closed under complements, union, intersection, concatenation, ∗. Proof. Construct the corresponding DTMs. Question Which operations preserve c.e. languages? Why “enumerable”? Definition An enumerator is a DTMM with� Γ, ∈ � a working tape and � an output tape on whichM moves only right (or stays) and writes only symbols fromΓ . \{ } The generated language Gen(M) ofM is the set of all words thatM writes on the output tape when starting with empty tapes. Consecutive words are separated by�. Example IfM writes�1�11�111�... , then Gen(M)=L(�,1, 11,...). Theorem L is c.e. iff there exists an enumerator withL =Gen(M). Proof. : LetL=L(N) for a DTMN. ⇒ Idea: Construct an enumeratorM that runs through allw Σ ∈ ∗ and printsw ifN accepts it. M loops through all pairs (m,n) N 2 (countable!): ∈ � For (m,n),M construct them-th wordw m overΣ in length-lex order. � ThenN runs n steps with inputw m. IfN accepts, thenM ≤ printsw m. Then Gen(M)=L(N). Proof. : LetL =Gen(M) for an enumeratorM. ⇐ The following DTMN acceptsL: � On inputw,N startsM to enumerateL. � Ifw appears in output ofM,N acceptsw. � Else,N loops. Note � Being able to generate a languageL is equivalent to being able to acceptL (but not necessarily to reject its non-elements). � GeneratingL is “easier” than decidingL. Why “computable”? For setsX A andB we callf:X Ba partial function from ⊆ → A toB with domain(f)=X , denotedf:A B. → p Example + √x can be viewed as partial functionR p R with domainR . → 0 Definition A partial functionf:Σ Σ is computable if there exists a ∗ →p ∗ DTMM such that x,y Σ :(s,x ..., 0) (t,y ..., 0) iff ∀ ∈ ∗ � M∗ x domain(f ) andf(x)=y. ∈ Theorem f:Σ Σ is computable iff its graph ∗ →p ∗ 2 L := (x,y) (Σ ∗) :x domain(f),f(x)=y f { ∈ ∈ } is c.e. Proof. : HW ⇒ : AssumeL =Gen(N) for some enumeratorN. ⇐ f ConstructM that computesf(x) as follows: � M startsN to enumerate all pairs (a,b) L f . ∈ � If (x,y) appears for somey, thenM returnsy. � ElseM loops. Note Computing a function is the same as accepting its graph..
Recommended publications
  • A Hierarchy of Computably Enumerable Degrees, Ii: Some Recent Developments and New Directions
    A HIERARCHY OF COMPUTABLY ENUMERABLE DEGREES, II: SOME RECENT DEVELOPMENTS AND NEW DIRECTIONS ROD DOWNEY, NOAM GREENBERG, AND ELLEN HAMMATT Abstract. A transfinite hierarchy of Turing degrees of c.e. sets has been used to calibrate the dynamics of families of constructions in computability theory, and yields natural definability results. We review the main results of the area, and discuss splittings of c.e. degrees, and finding maximal degrees in upper cones. 1. Vaughan Jones This paper is part of for the Vaughan Jones memorial issue of the New Zealand Journal of Mathematics. Vaughan had a massive influence on World and New Zealand mathematics, both through his work and his personal commitment. Downey first met Vaughan in the early 1990's, around the time he won the Fields Medal. Vaughan had the vision of improving mathematics in New Zealand, and hoped his Fields Medal could be leveraged to this effect. It is fair to say that at the time, maths in New Zealand was not as well-connected internationally as it might have been. It was fortunate that not only was there a lot of press coverage, at the same time another visionary was operating in New Zealand: Sir Ian Axford. Ian pioneered the Marsden Fund, and a group of mathematicians gathered by Vaughan, Marston Conder, David Gauld, Gaven Martin, and Rod Downey, put forth a proposal for summer meetings to the Marsden Fund. The huge influence of Vaughan saw to it that this was approved, and this group set about bringing in external experts to enrich the NZ scene.
    [Show full text]
  • Computability and Incompleteness Fact Sheets
    Computability and Incompleteness Fact Sheets Computability Definition. A Turing machine is given by: A finite set of symbols, s1; : : : ; sm (including a \blank" symbol) • A finite set of states, q1; : : : ; qn (including a special \start" state) • A finite set of instructions, each of the form • If in state qi scanning symbol sj, perform act A and go to state qk where A is either \move right," \move left," or \write symbol sl." The notion of a \computation" of a Turing machine can be described in terms of the data above. From now on, when I write \let f be a function from strings to strings," I mean that there is a finite set of symbols Σ such that f is a function from strings of symbols in Σ to strings of symbols in Σ. I will also adopt the analogous convention for sets. Definition. Let f be a function from strings to strings. Then f is computable (or recursive) if there is a Turing machine M that works as follows: when M is started with its input head at the beginning of the string x (on an otherwise blank tape), it eventually halts with its head at the beginning of the string f(x). Definition. Let S be a set of strings. Then S is computable (or decidable, or recursive) if there is a Turing machine M that works as follows: when M is started with its input head at the beginning of the string x, then if x is in S, then M eventually halts, with its head on a special \yes" • symbol; and if x is not in S, then M eventually halts, with its head on a special • \no" symbol.
    [Show full text]
  • Weakly Precomplete Computably Enumerable Equivalence Relations
    Math. Log. Quart. 62, No. 1–2, 111–127 (2016) / DOI 10.1002/malq.201500057 Weakly precomplete computably enumerable equivalence relations Serikzhan Badaev1 ∗ and Andrea Sorbi2∗∗ 1 Department of Mechanics and Mathematics, Al-Farabi Kazakh National University, Almaty, 050038, Kazakhstan 2 Dipartimento di Ingegneria dell’Informazione e Scienze Matematiche, Universita` Degli Studi di Siena, 53100, Siena, Italy Received 28 July 2015, accepted 4 November 2015 Published online 17 February 2016 Using computable reducibility ≤ on equivalence relations, we investigate weakly precomplete ceers (a “ceer” is a computably enumerable equivalence relation on the natural numbers), and we compare their class with the more restricted class of precomplete ceers. We show that there are infinitely many isomorphism types of universal (in fact uniformly finitely precomplete) weakly precomplete ceers , that are not precomplete; and there are infinitely many isomorphism types of non-universal weakly precomplete ceers. Whereas the Visser space of a precomplete ceer always contains an infinite effectively discrete subset, there exist weakly precomplete ceers whose Visser spaces do not contain infinite effectively discrete subsets. As a consequence, contrary to precomplete ceers which always yield partitions into effectively inseparable sets, we show that although weakly precomplete ceers always yield partitions into computably inseparable sets, nevertheless there are weakly precomplete ceers for which no equivalence class is creative. Finally, we show that the index set of the precomplete ceers is 3-complete, whereas the index set of the weakly precomplete ceers is 3-complete. As a consequence of these results, we also show that the index sets of the uniformly precomplete ceers and of the e-complete ceers are 3-complete.
    [Show full text]
  • Turing Degrees and Automorphism Groups of Substructure Lattices 3
    TURING DEGREES AND AUTOMORPHISM GROUPS OF SUBSTRUCTURE LATTICES RUMEN DIMITROV, VALENTINA HARIZANOV, AND ANDREY MOROZOV Abstract. The study of automorphisms of computable and other structures connects computability theory with classical group theory. Among the non- computable countable structures, computably enumerable structures are one of the most important objects of investigation in computable model theory. In this paper, we focus on the lattice structure of computably enumerable substructures of a given canonical computable structure. In particular, for a Turing degree d, we investigate the groups of d-computable automorphisms of the lattice of d-computably enumerable vector spaces, of the interval Boolean algebra Bη of the ordered set of rationals, and of the lattice of d-computably enumerable subalgebras of Bη. For these groups we show that Turing reducibil- ity can be used to substitute the group-theoretic embedding. We also prove that the Turing degree of the isomorphism types for these groups is the second Turing jump of d, d′′. 1. Automorphisms of effective structures Computable model theory investigates algorithmic content (effectiveness) of notions, objects, and constructions in classical mathematics. In algebra this in- vestigation goes back to van der Waerden who in his Modern Algebra introduced an explicitly given field as one the elements of which are uniquely represented by distinguishable symbols with which we can perform the field operations algo- rithmically. The formalization of an explicitly given field led to the notion of a computable structure, one of the main objects of study in computable model the- ory. A structure is computable if its domain is computable and its relations and arXiv:1811.01224v1 [math.LO] 3 Nov 2018 functions are uniformly computable.
    [Show full text]
  • Algebraic Aspects of the Computably Enumerable Degrees
    Proc. Natl. Acad. Sci. USA Vol. 92, pp. 617-621, January 1995 Mathematics Algebraic aspects of the computably enumerable degrees (computability theory/recursive function theory/computably enumerable sets/Turing computability/degrees of unsolvability) THEODORE A. SLAMAN AND ROBERT I. SOARE Department of Mathematics, University of Chicago, Chicago, IL 60637 Communicated by Robert M. Solovay, University of California, Berkeley, CA, July 19, 1994 ABSTRACT A set A of nonnegative integers is computably equivalently represented by the set of Diophantine equations enumerable (c.e.), also called recursively enumerable (r.e.), if with integer coefficients and integer solutions, the word there is a computable method to list its elements. The class of problem for finitely presented groups, and a variety of other sets B which contain the same information as A under Turing unsolvable problems in mathematics and computer science. computability (<T) is the (Turing) degree ofA, and a degree is Friedberg (5) and independently Mucnik (6) solved Post's c.e. if it contains a c.e. set. The extension ofembedding problem problem by producing a noncomputable incomplete c.e. set. for the c.e. degrees Qk = (R, <, 0, 0') asks, given finite partially Their method is now known as the finite injury priority ordered sets P C Q with least and greatest elements, whether method. Restated now for c.e. degrees, the Friedberg-Mucnik every embedding ofP into Rk can be extended to an embedding theorem is the first and easiest extension of embedding result of Q into Rt. Many of the most significant theorems giving an for the well-known partial ordering of the c.e.
    [Show full text]
  • Recursion Theory Notes, Fall 2011 0.1 Introduction
    Recursion Theory Notes, Fall 2011 Lecturer: Lou van den Dries 0.1 Introduction Recursion theory (or: theory of computability) is a branch of mathematical logic studying the notion of computability from a rather theoretical point of view. This includes giving a lot of attention to what is not computable, or what is computable relative to any given, not necessarily computable, function. The subject is interesting on philosophical-scientific grounds because of the Church- Turing Thesis and its role in computer science, and because of the intriguing concept of Kolmogorov complexity. This course tries to keep touch with how recursion theory actually impacts mathematics and computer science. This impact is small, but it does exist. Accordingly, the first chapter of the course covers the basics: primitive recur- sion, partial recursive functions and the Church-Turing Thesis, arithmetization and the theorems of Kleene, the halting problem and Rice's theorem, recur- sively enumerable sets, selections and reductions, recursive inseparability, and index systems. (Turing machines are briefly discussed, but the arithmetization is based on a numerical coding of combinators.) The second chapter is devoted to the remarkable negative solution (but with positive aspects) of Hilbert's 10th Problem. This uses only the most basic notions of recursion theory, plus some elementary number theory that is worth knowing in any case; the coding aspects of natural numbers are combined here ingeniously with the arithmetic of the semiring of natural numbers. The last chapter is on Kolmogorov complexity, where concepts of recursion theory are used to define and study notions of randomness and information content.
    [Show full text]
  • Computably Enumerable Boolean Algebras
    COMPUTABLY ENUMERABLE BOOLEAN ALGEBRAS A Dissertation Presented to the Faculty of the Graduate School of Cornell University in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy by Ying-Ying Tran May 2018 c 2018 Ying-Ying Tran ALL RIGHTS RESERVED COMPUTABLY ENUMERABLE BOOLEAN ALGEBRAS Ying-Ying Tran, Ph.D. Cornell University 2018 We study computably enumerable boolean algebras, focusing on Stone duality and universality phenomena. We show how classical Stone duality specializes to c.e. boolean algebras, giving a natural bijection between c.e. boolean algebras 0 and Π1 classes. We also give a new characterization of computably universal- homogeneous c.e. boolean algebras, which yields a more direct proof of the computable isomorphism between the Lindenbaum algebras of theories which satisfy the hypotheses of the second incompleteness theorem. BIOGRAPHICAL SKETCH Ying-Ying attended the Ross Mathematics Program from 2005 to 2009 and com- pleted their B.S. in mathematics, despite proclaiming at the end of 2005 that they would not return to Ross and would definitely never major in math. iii ACKNOWLEDGEMENTS When looking back on history, we have a tendency to construct it as a chain of causes and effects which seem almost inevitable [3]. Getting this degree did not feel nearly so certain as I lived through it; instead it feels like a miracle of coincidences, the right words at the right times, and an unbelievably supportive network that I ended up here. Two or three years into the program, I nearly quit. Thank you, Reyer Sja- maar, for being so sincerely surprised and quintessentially quizzical when I ex- pressed my doubts.
    [Show full text]
  • Thy.1 Equivalent Defininitions of Computably Enumerable Sets
    thy.1 Equivalent Defininitions of Computably Enumerable Sets cmp:thy:eqc: The following gives a number of important equivalent statements of what it sec means to be computably enumerable. cmp:thy:eqc: Theorem thy.1. Let S be a set of natural numbers. Then the following are thm:ce-equiv equivalent: 1. S is computably enumerable. 2. S is the range of a partial computable function. 3. S is empty or the range of a primitive recursive function. 4. S is the domain of a partial computable function. The first three clauses say that we can equivalently take any non-empty explanation computably enumerable set to be enumerated by either a computable function, a partial computable function, or a primitive recursive function. The fourth clause tells us that if S is computably enumerable, then for some index e, S = fx : 'e(x) #g: In other words, S is the set of inputs on for which the computation of 'e halts. For that reason, computably enumerable sets are sometimes called semi- decidable: if a number is in the set, you eventually get a \yes," but if it isn't, you never get a \no"! Proof. Since every primitive recursive function is computable and every com- putable function is partial computable, (3) implies (1) and (1) implies (2). (Note that if S is empty, S is the range of the partial computable function that is nowhere defined.) If we show that (2) implies (3), we will have shown the first three clauses equivalent. So, suppose S is the range of the partial computable function 'e.
    [Show full text]
  • An Introduction to Computability Theory
    AN INTRODUCTION TO COMPUTABILITY THEORY CINDY CHUNG Abstract. This paper will give an introduction to the fundamentals of com- putability theory. Based on Robert Soare's textbook, The Art of Turing Computability: Theory and Applications, we examine concepts including the Halting problem, properties of Turing jumps and degrees, and Post's Theo- rem.1 In the paper, we will assume the reader has a conceptual understanding of computer programs. Contents 1. Basic Computability 1 2. The Halting Problem 2 3. Post's Theorem: Jumps and Quantifiers 3 3.1. Arithmetical Hierarchy 3 3.2. Degrees and Jumps 4 3.3. The Zero-Jump, 00 5 3.4. Post's Theorem 5 Acknowledgments 8 References 8 1. Basic Computability Definition 1.1. An algorithm is a procedure capable of being carried out by a computer program. It accepts various forms of numerical inputs including numbers and finite strings of numbers. Computability theory is a branch of mathematical logic that focuses on algo- rithms, formally known in this area as computable functions, and studies the degree, or level of computability that can be attributed to various sets (these concepts will be formally defined and elaborated upon below). This field was founded in the 1930s by many mathematicians including the logicians: Alan Turing, Stephen Kleene, Alonzo Church, and Emil Post. Turing first pioneered computability theory when he introduced the fundamental concept of the a-machine which is now known as the Turing machine (this concept will be intuitively defined below) in his 1936 pa- per, On computable numbers, with an application to the Entscheidungsproblem[7].
    [Show full text]
  • Word Problems and Ceers
    WORD PROBLEMS AND CEERS VALENTINO DELLE ROSE, LUCA SAN MAURO, AND ANDREA SORBI Abstract. This note addresses the issue as to which ceers can be re- alized by word problems of computably enumerable (or, simply, c.e.) structures (such as c.e. semigroups, groups, and rings), where being re- alized means to fall in the same reducibility degree (under the notion of reducibility for equivalence relations usually called “computable re- ducibility”), or in the same isomorphism type (with the isomorphism induced by a computable function), or in the same strong isomorphism type (with the isomorphism induced by a computable permutation of the natural numbers). We observe for instance that every ceer is iso- morphic to the word problem of some c.e. semigroup, but (answering a question of Gao and Gerdes) not every ceer is in the same reducibility degree of the word problem of some finitely presented semigroup, nor is it in the same reducibility degree of some non-periodic semigroup. We also show that the ceer provided by provable equivalence of Peano Arithmetic is in the same strong isomorphism type as the word problem of some non-commutative and non-Boolean c.e. ring. 1. Introduction Computably enumerable equivalence relations, or ceers, have been an ac- tive field of research in recent years. A great deal of the interest in ceers certainly is due to the fact that they appear quite often in mathematical logic (where they appear, for instance, as the relations of provable equiva- lence in formal systems), and in general mathematics and computer science where they appear as word problems of effectively presented familiar alge- braic structures.
    [Show full text]
  • The Entscheidungsproblem and Alan Turing
    The Entscheidungsproblem and Alan Turing Author: Laurel Brodkorb Advisor: Dr. Rachel Epstein Georgia College and State University December 18, 2019 1 Abstract Computability Theory is a branch of mathematics that was developed by Alonzo Church, Kurt G¨odel,and Alan Turing during the 1930s. This paper explores their work to formally define what it means for something to be computable. Most importantly, this paper gives an in-depth look at Turing's 1936 paper, \On Computable Numbers, with an Application to the Entscheidungsproblem." It further explores Turing's life and impact. 2 Historic Background Before 1930, not much was defined about computability theory because it was an unexplored field (Soare 4). From the late 1930s to the early 1940s, mathematicians worked to develop formal definitions of computable functions and sets, and applying those definitions to solve logic problems, but these problems were not new. It was not until the 1800s that mathematicians began to set an axiomatic system of math. This created problems like how to define computability. In the 1800s, Cantor defined what we call today \naive set theory" which was inconsistent. During the height of his mathematical period, Hilbert defended Cantor but suggested an axiomatic system be established, and characterized the Entscheidungsproblem as the \fundamental problem of mathemat- ical logic" (Soare 227). The Entscheidungsproblem was proposed by David Hilbert and Wilhelm Ackerman in 1928. The Entscheidungsproblem, or Decision Problem, states that given all the axioms of math, there is an algorithm that can tell if a proposition is provable. During the 1930s, Alonzo Church, Stephen Kleene, Kurt G¨odel,and Alan Turing worked to formalize how we compute anything from real numbers to sets of functions to solve the Entscheidungsproblem.
    [Show full text]
  • Locally Computable Structures
    Locally Computable Structures Russell G. Miller1 ⋆ Department of Mathematics Queens College – C.U.N.Y. 65-30 Kissena Blvd. Flushing, New York 11367 U.S.A. Doctoral Program in Computer Science The Graduate Center of C.U.N.Y. 365 Fifth Avenue New York, New York 10016 U.S.A. [email protected] Abstract. We introduce the notion of a locally computable structure, a natural way of generalizing the notions of computable model theory to uncountable structures S by presenting the finitely generated sub- structures of S effectively. Our discussion emphasizes definitions and examples, but does prove two significant results. First, our notion of m- extensional local computability of S ensures that the Σn-theory of S will be Σn for all n ≤ m+1. Second, our notion of perfect local computability is equivalent (for countable structures) to the classic definition of com- putable presentability. Keywords: computability, computable model theory, extensional, lo- cally computable, perfectly locally computable. 1 Introduction Turing computability has always been restricted to maps on countable sets. This restriction is inherent in the nature of a Turing machine: a computation is performed in a finite length of time, so that even if the available input was a countable binary sequence, only a finite initial segment of that sequence was actually used in the computation. Thus only that finite segment was relevant to the computation. To be sure, there are approaches that have defined natural notions of computable functions on the real numbers. These include the bitmap model, detailed in [2], and the Blum-Shub-Smale model (see [1]).
    [Show full text]