Algebras of Partial Functions

Total Page:16

File Type:pdf, Size:1020Kb

Algebras of Partial Functions Algebras of Partial Functions Brett McLean Thesis submitted for the degree of Doctor of Philosophy Department of Computer Science University College London June 2018 I, Brett McLean, confirm that the work presented in this thesis is my own. Where information has been derived from other sources, I confirm that this has been indicated in the thesis. Abstract This thesis collects together four sets of results, produced by investigating modifications, in four distinct directions, of the following. Some set-theoretic operations on partial functions are chosen—composition and intersection are examples—and the class of algebras isomorphic to a collection of partial functions, equipped with those operations, is studied. Typical questions asked are whether the class is axiomatis- able, or indeed finitely axiomatisable, in any fragment of first-order logic, what computational complex- ity classes its equational/quasiequational/first-order theories lie in, and whether it is decidable if a finite algebra is in the class. The first modification to the basic picture asks that the isomorphisms turn any existing suprema into unions and/or infima into intersections, and examines the class so obtained. For composition, intersec- tion, and antidomain together, we show that the suprema and infima conditions are equivalent. We show the resulting class is axiomatisable by a universal-existential-universal sentence, but not axiomatisable by any existential-universal-existential theory. The second contribution concerns what happens when we demand partial functions on some finite base set. The finite representation property is essentially the assertion that this restriction that the base set be finite does not restrict the algebras themselves. For composition, intersection, domain, and range, plus many supersignatures, we prove the finite representation property. It follows that it is decidable whether a finite algebra is a member of the relevant class. The third set of results generalises from unary to ‘multiplace’ functions. For the signatures invest- igated, finite equational or quasiequational axiomatisations are obtained; similarly when the functions are constrained to be injective. The finite representation property follows. The equational theories are shown to be coNP-complete. In the last section we consider operations that may only be partial. For most signatures the relevant class is found to be recursively, but not finitely, axiomatisable. For others, finite axiomatisations are provided. Contents 1 Introduction 11 2 Mathematical background 15 2.1 First-order logic . 15 2.1.1 Syntax . 15 2.1.2 Semantics . 17 2.2 Universal algebra . 19 2.3 Model theory . 21 2.4 Computability theory . 24 2.5 Algebraic logic . 28 2.5.1 Ordered structures . 28 2.5.2 Representation . 30 3 Related work 33 3.1 Algebras of relations . 33 3.1.1 Relation algebras . 33 3.1.2 Representable relation algebras . 34 3.1.3 Subsignatures and supersignatures of the relation algebra signature . 35 3.1.4 The fundamental theorem of relation algebras . 36 3.1.5 Kleene algebras . 37 3.1.6 Higher-order relations . 39 3.1.7 Complete representations . 41 3.2 Algebras of partial functions . 41 3.2.1 Unary functions . 42 3.2.2 The finite representation property . 45 3.2.3 Multiplace functions . 46 3.2.4 Tabular summary . 46 4 Complete representation by partial functions 49 4.1 Introduction . 49 4.2 Representations and complete representations . 50 6 Contents 4.3 Atomicity . 53 4.4 Distributivity . 57 4.5 A representation . 59 4.6 Axiomatising the class . 61 5 The finite representation property 65 5.1 Introduction . 65 5.2 Algebras of partial functions . 66 5.3 Uniqueness of presents and futures . 69 5.4 The finite representation property . 71 5.5 Entirely algebraic constructions . 78 5.6 Failure of the finite representation property . 79 6 Multiplace functions for signatures containing antidomain 81 6.1 Introduction . 81 6.2 Algebras of multiplace functions . 82 6.3 Composition and antidomain . 87 6.4 The representation . 101 6.5 Injective partial functions . 105 6.6 Intersection . 107 6.7 Preferential union . 111 6.8 Fixset . 113 6.9 Equational theories . 115 7 Disjoint-union partial algebras 119 7.1 Introduction . 119 7.2 Disjoint-union partial algebras . 121 7.3 Axiomatisability . 125 7.4 A recursive axiomatisation via games . 127 7.5 Non-axiomatisability . 131 7.6 Signatures including intersection . 142 7.7 Decidability and complexity . 147 8 Conclusion 149 Index 153 Bibliography 157 List of Figures 4.1 An algebra refuting right-distributivity over meets . 59 4.2 Algebra for which θ does not represent range correctly . 63 5.1 The algebra F1. Dashed lines for f, solid lines for g .................... 68 5.2 Left: a non-representation of F1. Right: a representation of F1 .............. 69 5.3 The algebra F2. Dashed lines for f, solid lines for g .................... 80 List of Tables 3.1 Summary of representability results for partial functions . 47 6.1 Summary of representation classes for n-ary functions . 87 Acknowledgement I wish to put on record what an excellent supervisor Robin Hirsch is. His style is to provide as much support as is needed—he is always generous with his time—whilst simultaneously granting complete intellectual freedom. I believe this unpressured atmosphere has been central to making my PhD journey an unexpectedly smooth ride. Though Robin made it clear the selection of topic was entirely my own, his recommendation proved remarkably well chosen, since there are many interesting questions in this area amenable to attack by a novice researcher and they sit well together as a cohesive whole. Robin’s week-to-week direction, ideas and suggestions have also been tremendously effective. Thank you Robin. Chapter 1 Introduction Across mathematics as a whole, functions have a much more pervasive presence than relations, their more general cousins. However, with regard to the metamathematics of reasoning about these entities, the situation has, historically, been reversed. Investigations into the laws obeyed by binary relations began in the latter half of the 19th century, starting with De Morgan [82], followed by Peirce [84], Schroder¨ [94], and Russell [88]. For a brief account of this early period, see [85]. Following four decades of almost total neglect, the subject was revived by Tarski’s 1941 article On the calculus of relations [102], and since then, binary and higher- order relations have been continuously active topics of research. Initially, the purpose of this work was algebraic logic in the strict sense. That is to say, the relations were providing the semantics for logical formulas.1 This is perhaps the explanation as to why, until recently, the corresponding theory of functions was relatively less developed, since the semantics of formulas is not a role so naturally suited to functions. However, increasingly in the history of relations, computer science has become a source of motivation, with binary relations providing the semantics for, in particular, (nondeterministic) computer programs. In this view, the relation relates states of the machine before the program is executed to possible states after it is executed. Despite the ubiquity of functions in mathematics, prior to the turn of this century the only sustained period of activity on reasoning with (possibly partial) functions was the 1960s, when the semigroup theorist Boris Schein and associates were active in this area.2;3 In the last fifteen years however, interest has rekindled, and a regular stream of papers has been appearing, with computer science considerations a prime motivation. The contemporary framework for studying one of these types of entities—either relations or some specialisation thereof—is to first select some operations of interest acting on the entities. For example composition and union are both binary operations we can perform on binary relations; the precise set we choose we call the signature. Then any collection of our entities closed under the chosen operations forms an algebraic structure. The object of study is then the isomorphic closure of the class of all these ‘concrete’ algebras, and we call this class the representation class. 1A particular interest of Tarski’s was for these formulas to be those of the language of set theory [105]. 2Schein’s survey article [91] records the results obtained during this time. 3Later, there was a line of work in the category-theoretic tradition [5, 87, 27], but that is outside the interests of this thesis. 12 Chapter 1. Introduction Aspirations for reasoning about programs by means of binary relations extend beyond reasoning about program behaviour in the abstract, to the possibility of practical real-world applications to auto- mated program verification [7, 50, 28, 6]. However, a recurring theme in work on relations is the discov- ery of their poor logical and computational behaviour. To give some explicit examples of what is meant by this, often the representation class is found not to have a simple (for example finite) axiomatisation in first-order logic [80, 46], its validities in fragments of first-order logic are found to have high compu- tational complexity [35] and, for finite structures, membership of the representation class is found to be undecidable [40]. The uninitiated may be surprised to learn that the observed logical and computational unruliness seems to be an intrinsic feature of relations, rather than stemming from any provision for expressing ‘unbounded iteration’ and the well-known associated complications this presents with regard to comput- ability. Indeed the predisposition towards negative results exists even when only rather simple operations are used [3]. An alternative approach beckons. Though the nondeterministic paradigm certainly has its uses, in practice many programs are actually deterministic. This suggests that algebras of partial functions might provide a useful framework for reasoning about programs, avoiding the use of troublesome relations. Encouragingly, investigations into classes of algebras of partial functions have tended to indicate they are much better behaved than classes of algebras of binary relations.
Recommended publications
  • The Partial Function Computed by a TM M(W)
    CS601 The Partial Function Computed by a TM Lecture 2 8 y if M on input “.w ” eventually <> t M(w) halts with output “.y ” ≡ t :> otherwise % Σ Σ .; ; Usually, Σ = 0; 1 ; w; y Σ? 0 ≡ − f tg 0 f g 2 0 Definition 2.1 Let f :Σ? Σ? be a total or partial function. We 0 ! 0 say that f is a partial, recursive function iff TM M(f = M( )), 9 · i.e., w Σ?(f(w) = M(w)). 8 2 0 Remark 2.2 There is an easy to compute 1:1 and onto map be- tween 0; 1 ? and N [Exercise]. Thus we can think of the contents f g of a TM tape as a natural number and talk about f : N N ! being a recursive function. If the partial, recursive function f is total, i.e., f : N N then we ! say that f is a total, recursive function. A partial function that is not total is called strictly partial. 1 CS601 Some Recursive Functions Lecture 2 Proposition 2.3 The following functions are recursive. They are all total except for peven. copy(w) = ww σ(n) = n + 1 plus(n; m) = n + m mult(n; m) = n m × exp(n; m) = nm (we let exp(0; 0) = 1) 1 if n is even χ (n) = even 0 otherwise 1 if n is even p (n) = even otherwise % Proof: Exercise: please convince yourself that you can build TMs to compute all of these functions! 2 Recursive Sets = Decidable Sets = Computable Sets Definition 2.4 Let S Σ? or S N.
    [Show full text]
  • Basic Structures: Sets, Functions, Sequences, and Sums 2-2
    CHAPTER Basic Structures: Sets, Functions, 2 Sequences, and Sums 2.1 Sets uch of discrete mathematics is devoted to the study of discrete structures, used to represent discrete objects. Many important discrete structures are built using sets, which 2.2 Set Operations M are collections of objects. Among the discrete structures built from sets are combinations, 2.3 Functions unordered collections of objects used extensively in counting; relations, sets of ordered pairs that represent relationships between objects; graphs, sets of vertices and edges that connect 2.4 Sequences and vertices; and finite state machines, used to model computing machines. These are some of the Summations topics we will study in later chapters. The concept of a function is extremely important in discrete mathematics. A function assigns to each element of a set exactly one element of a set. Functions play important roles throughout discrete mathematics. They are used to represent the computational complexity of algorithms, to study the size of sets, to count objects, and in a myriad of other ways. Useful structures such as sequences and strings are special types of functions. In this chapter, we will introduce the notion of a sequence, which represents ordered lists of elements. We will introduce some important types of sequences, and we will address the problem of identifying a pattern for the terms of a sequence from its first few terms. Using the notion of a sequence, we will define what it means for a set to be countable, namely, that we can list all the elements of the set in a sequence.
    [Show full text]
  • Iris: Monoids and Invariants As an Orthogonal Basis for Concurrent Reasoning
    Iris: Monoids and Invariants as an Orthogonal Basis for Concurrent Reasoning Ralf Jung David Swasey Filip Sieczkowski Kasper Svendsen MPI-SWS & MPI-SWS Aarhus University Aarhus University Saarland University [email protected][email protected] [email protected] [email protected] rtifact * Comple * Aaron Turon Lars Birkedal Derek Dreyer A t te n * te A is W s E * e n l l C o L D C o P * * Mozilla Research Aarhus University MPI-SWS c u e m s O E u e e P n R t v e o d t * y * s E a [email protected] [email protected] [email protected] a l d u e a t Abstract TaDA [8], and others. In this paper, we present a logic called Iris that We present Iris, a concurrent separation logic with a simple premise: explains some of the complexities of these prior separation logics in monoids and invariants are all you need. Partial commutative terms of a simpler unifying foundation, while also supporting some monoids enable us to express—and invariants enable us to enforce— new and powerful reasoning principles for concurrency. user-defined protocols on shared state, which are at the conceptual Before we get to Iris, however, let us begin with a brief overview core of most recent program logics for concurrency. Furthermore, of some key problems that arise in reasoning compositionally about through a novel extension of the concept of a view shift, Iris supports shared state, and how prior approaches have dealt with them.
    [Show full text]
  • Domain and Range of a Function
    4.1 Domain and Range of a Function How can you fi nd the domain and range of STATES a function? STANDARDS MA.8.A.1.1 MA.8.A.1.5 1 ACTIVITY: The Domain and Range of a Function Work with a partner. The table shows the number of adult and child tickets sold for a school concert. Input Number of Adult Tickets, x 01234 Output Number of Child Tickets, y 86420 The variables x and y are related by the linear equation 4x + 2y = 16. a. Write the equation in function form by solving for y. b. The domain of a function is the set of all input values. Find the domain of the function. Domain = Why is x = 5 not in the domain of the function? 1 Why is x = — not in the domain of the function? 2 c. The range of a function is the set of all output values. Find the range of the function. Range = d. Functions can be described in many ways. ● by an equation ● by an input-output table y 9 ● in words 8 ● by a graph 7 6 ● as a set of ordered pairs 5 4 Use the graph to write the function 3 as a set of ordered pairs. 2 1 , , ( , ) ( , ) 0 09321 45 876 x ( , ) , ( , ) , ( , ) 148 Chapter 4 Functions 2 ACTIVITY: Finding Domains and Ranges Work with a partner. ● Copy and complete each input-output table. ● Find the domain and range of the function represented by the table. 1 a. y = −3x + 4 b. y = — x − 6 2 x −2 −10 1 2 x 01234 y y c.
    [Show full text]
  • Enumerations of the Kolmogorov Function
    Enumerations of the Kolmogorov Function Richard Beigela Harry Buhrmanb Peter Fejerc Lance Fortnowd Piotr Grabowskie Luc Longpr´ef Andrej Muchnikg Frank Stephanh Leen Torenvlieti Abstract A recursive enumerator for a function h is an algorithm f which enu- merates for an input x finitely many elements including h(x). f is a aEmail: [email protected]. Department of Computer and Information Sciences, Temple University, 1805 North Broad Street, Philadelphia PA 19122, USA. Research per- formed in part at NEC and the Institute for Advanced Study. Supported in part by a State of New Jersey grant and by the National Science Foundation under grants CCR-0049019 and CCR-9877150. bEmail: [email protected]. CWI, Kruislaan 413, 1098SJ Amsterdam, The Netherlands. Partially supported by the EU through the 5th framework program FET. cEmail: [email protected]. Department of Computer Science, University of Mas- sachusetts Boston, Boston, MA 02125, USA. dEmail: [email protected]. Department of Computer Science, University of Chicago, 1100 East 58th Street, Chicago, IL 60637, USA. Research performed in part at NEC Research Institute. eEmail: [email protected]. Institut f¨ur Informatik, Im Neuenheimer Feld 294, 69120 Heidelberg, Germany. fEmail: [email protected]. Computer Science Department, UTEP, El Paso, TX 79968, USA. gEmail: [email protected]. Institute of New Techologies, Nizhnyaya Radi- shevskaya, 10, Moscow, 109004, Russia. The work was partially supported by Russian Foundation for Basic Research (grants N 04-01-00427, N 02-01-22001) and Council on Grants for Scientific Schools. hEmail: [email protected]. School of Computing and Department of Mathe- matics, National University of Singapore, 3 Science Drive 2, Singapore 117543, Republic of Singapore.
    [Show full text]
  • Adaptive Lower Bound for Testing Monotonicity on the Line
    Adaptive Lower Bound for Testing Monotonicity on the Line Aleksandrs Belovs∗ Abstract In the property testing model, the task is to distinguish objects possessing some property from the objects that are far from it. One of such properties is monotonicity, when the objects are functions from one poset to another. This is an active area of research. In this paper we study query complexity of ε-testing monotonicity of a function f :[n] → [r]. All our lower bounds are for adaptive two-sided testers. log r • We prove a nearly tight lower bound for this problem in terms of r. TheboundisΩ log log r when ε =1/2. No previous satisfactory lower bound in terms of r was known. • We completely characterise query complexity of this problem in terms of n for smaller values of ε. The complexity is Θ ε−1 log(εn) . Apart from giving the lower bound, this improves on the best known upper bound. Finally, we give an alternative proof of the Ω(ε−1d log n−ε−1 log ε−1) lower bound for testing monotonicity on the hypergrid [n]d due to Chakrabarty and Seshadhri (RANDOM’13). 1 Introduction The framework of property testing was formulated by Rubinfeld and Sudan [19] and Goldreich et al. [16]. A property testing problem is specified by a property P, which is a class of functions mapping some finite set D into some finite set R, and proximity parameter ε, which is a real number between 0 and 1. An ε-tester is a bounded-error randomised query algorithm which, given oracle access to a function f : D → R, distinguishes between the case when f belongs to P and the case when f is ε-far from P.
    [Show full text]
  • Basic Concepts of Set Theory, Functions and Relations 1. Basic
    Ling 310, adapted from UMass Ling 409, Partee lecture notes March 1, 2006 p. 1 Basic Concepts of Set Theory, Functions and Relations 1. Basic Concepts of Set Theory........................................................................................................................1 1.1. Sets and elements ...................................................................................................................................1 1.2. Specification of sets ...............................................................................................................................2 1.3. Identity and cardinality ..........................................................................................................................3 1.4. Subsets ...................................................................................................................................................4 1.5. Power sets .............................................................................................................................................4 1.6. Operations on sets: union, intersection...................................................................................................4 1.7 More operations on sets: difference, complement...................................................................................5 1.8. Set-theoretic equalities ...........................................................................................................................5 Chapter 2. Relations and Functions ..................................................................................................................6
    [Show full text]
  • Division by Zero in Logic and Computing Jan Bergstra
    Division by Zero in Logic and Computing Jan Bergstra To cite this version: Jan Bergstra. Division by Zero in Logic and Computing. 2021. hal-03184956v2 HAL Id: hal-03184956 https://hal.archives-ouvertes.fr/hal-03184956v2 Preprint submitted on 19 Apr 2021 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. DIVISION BY ZERO IN LOGIC AND COMPUTING JAN A. BERGSTRA Abstract. The phenomenon of division by zero is considered from the per- spectives of logic and informatics respectively. Division rather than multi- plicative inverse is taken as the point of departure. A classification of views on division by zero is proposed: principled, physics based principled, quasi- principled, curiosity driven, pragmatic, and ad hoc. A survey is provided of different perspectives on the value of 1=0 with for each view an assessment view from the perspectives of logic and computing. No attempt is made to survey the long and diverse history of the subject. 1. Introduction In the context of rational numbers the constants 0 and 1 and the operations of addition ( + ) and subtraction ( − ) as well as multiplication ( · ) and division ( = ) play a key role. When starting with a binary primitive for subtraction unary opposite is an abbreviation as follows: −x = 0 − x, and given a two-place division function unary inverse is an abbreviation as follows: x−1 = 1=x.
    [Show full text]
  • Module 1 Lecture Notes
    Module 1 Lecture Notes Contents 1.1 Identifying Functions.............................1 1.2 Algebraically Determining the Domain of a Function..........4 1.3 Evaluating Functions.............................6 1.4 Function Operations..............................7 1.5 The Difference Quotient...........................9 1.6 Applications of Function Operations.................... 10 1.7 Determining the Domain and Range of a Function Graphically.... 12 1.8 Reading the Graph of a Function...................... 14 1.1 Identifying Functions In previous classes, you should have studied a variety basic functions. For example, 1 p f(x) = 3x − 5; g(x) = 2x2 − 1; h(x) = ; j(x) = 5x + 2 x − 5 We will begin this course by studying functions and their properties. As the course progresses, we will study inverse, composite, exponential, logarithmic, polynomial and rational functions. Math 111 Module 1 Lecture Notes Definition 1: A relation is a correspondence between two variables. A relation can be ex- pressed through a set of ordered pairs, a graph, a table, or an equation. A set containing ordered pairs (x; y) defines y as a function of x if and only if no two ordered pairs in the set have the same x-coordinate. In other words, every input maps to exactly one output. We write y = f(x) and say \y is a function of x." For the function defined by y = f(x), • x is the independent variable (also known as the input) • y is the dependent variable (also known as the output) • f is the function name Example 1: Determine whether or not each of the following represents a function. Table 1.1 Chicken Name Egg Color Emma Turquoise Hazel Light Brown George(ia) Chocolate Brown Isabella White Yvonne Light Brown (a) The set of ordered pairs of the form (chicken name, egg color) shown in Table 1.1.
    [Show full text]
  • Division by Zero: a Survey of Options
    Division by Zero: A Survey of Options Jan A. Bergstra Informatics Institute, University of Amsterdam Science Park, 904, 1098 XH, Amsterdam, The Netherlands [email protected], [email protected] Submitted: 12 May 2019 Revised: 24 June 2019 Abstract The idea that, as opposed to the conventional viewpoint, division by zero may produce a meaningful result, is long standing and has attracted inter- est from many sides. We provide a survey of some options for defining an outcome for the application of division in case the second argument equals zero. The survey is limited by a combination of simplifying assumptions which are grouped together in the idea of a premeadow, which generalises the notion of an associative transfield. 1 Introduction The number of options available for assigning a meaning to the expression 1=0 is remarkably large. In order to provide an informative survey of such options some conditions may be imposed, thereby reducing the number of options. I will understand an option for division by zero as an arithmetical datatype, i.e. an algebra, with the following signature: • a single sort with name V , • constants 0 (zero) and 1 (one) for sort V , • 2-place functions · (multiplication) and + (addition), • unary functions − (additive inverse, also called opposite) and −1 (mul- tiplicative inverse), • 2 place functions − (subtraction) and = (division). Decimal notations like 2; 17; −8 are used as abbreviations, e.g. 2 = 1 + 1, and −3 = −((1 + 1) + 1). With inverse the multiplicative inverse is meant, while the additive inverse is referred to as opposite. 1 This signature is referred to as the signature of meadows ΣMd in [6], with the understanding that both inverse and division (and both opposite and sub- traction) are present.
    [Show full text]
  • On Extensions of Partial Functions A.B
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector Expo. Math. 25 (2007) 345–353 www.elsevier.de/exmath On extensions of partial functions A.B. Kharazishvilia,∗, A.P. Kirtadzeb aA. Razmadze Mathematical Institute, M. Alexidze Street, 1, Tbilisi 0193, Georgia bI. Vekua Institute of Applied Mathematics of Tbilisi State University, University Street, 2, Tbilisi 0143, Georgia Received 2 October 2006; received in revised form 15 January 2007 Abstract The problem of extending partial functions is considered from the general viewpoint. Some as- pects of this problem are illustrated by examples, which are concerned with typical real-valued partial functions (e.g. semicontinuous, monotone, additive, measurable, possessing the Baire property). ᭧ 2007 Elsevier GmbH. All rights reserved. MSC 2000: primary: 26A1526A21; 26A30; secondary: 28B20 Keywords: Partial function; Extension of a partial function; Semicontinuous function; Monotone function; Measurable function; Sierpi´nski–Zygmund function; Absolutely nonmeasurable function; Extension of a measure In this note we would like to consider several facts from mathematical analysis concerning extensions of real-valued partial functions. Some of those facts are rather easy and are accessible to average-level students. But some of them are much deeper, important and have applications in various branches of mathematics. The best known example of this type is the famous Tietze–Urysohn theorem, which states that every real-valued continuous function defined on a closed subset of a normal topological space can be extended to a real- valued continuous function defined on the whole space (see, for instance, [8], Chapter 1, Section 14).
    [Show full text]
  • The Church-Turing Thesis in Quantum and Classical Computing∗
    The Church-Turing thesis in quantum and classical computing∗ Petrus Potgietery 31 October 2002 Abstract The Church-Turing thesis is examined in historical context and a survey is made of current claims to have surpassed its restrictions using quantum computing | thereby calling into question the basis of the accepted solutions to the Entscheidungsproblem and Hilbert's tenth problem. 1 Formal computability The need for a formal definition of algorithm or computation became clear to the scientific community of the early twentieth century due mainly to two problems of Hilbert: the Entscheidungsproblem|can an algorithm be found that, given a statement • in first-order logic (for example Peano arithmetic), determines whether it is true in all models of a theory; and Hilbert's tenth problem|does there exist an algorithm which, given a Diophan- • tine equation, determines whether is has any integer solutions? The Entscheidungsproblem, or decision problem, can be traced back to Leibniz and was successfully and independently solved in the mid-1930s by Alonzo Church [Church, 1936] and Alan Turing [Turing, 1935]. Church defined an algorithm to be identical to that of a function computable by his Lambda Calculus. Turing, in turn, first identified an algorithm to be identical with a recursive function and later with a function computed by what is now known as a Turing machine1. It was later shown that the class of the recursive functions, Turing machines, and the Lambda Calculus define the same class of functions. The remarkable equivalence of these three definitions of disparate origin quite strongly supported the idea of this as an adequate definition of computability and the Entscheidungsproblem is generally considered to be solved.
    [Show full text]