Results 1 - 10
of
32
Predicative Recursion and Computational Complexity
, 1992
"... The purpose of this thesis is to give a "foundational" characterization of some common complexity classes. Such a characterization is distinguished by the fact that no explicit resource bounds are used. For example, we characterize the polynomial time computable functions without making any direct r ..."
Abstract
-
Cited by 43 (3 self)
- Add to MetaCart
The purpose of this thesis is to give a "foundational" characterization of some common complexity classes. Such a characterization is distinguished by the fact that no explicit resource bounds are used. For example, we characterize the polynomial time computable functions without making any direct reference to polynomials, time, or even computation. Complexity classes characterized in this way include polynomial time, the functional polytime hierarchy, the logspace decidable problems, and NC. After developing these "resource free" definitions, we apply them to redeveloping the feasible logical system of Cook and Urquhart, and show how this first-order system relates to the second-order system of Leivant. The connection is an interesting one since the systems were defined independently and have what appear to be very different rules for the principle of induction. Furthermore it is interesting to see, albeit in a very specific context, how to retract a second order statement, ("inducti...
Computing the non-computable
- Contemporary Physics
"... We explore in the framework of Quantum Computation the notion of computability, which holds a central position in Mathematics and Theoretical Computer Science. A quantum algorithm that exploits the quantum adiabatic which is equivalent to the Turing halting problem and known to be mathematically non ..."
Abstract
-
Cited by 25 (5 self)
- Add to MetaCart
We explore in the framework of Quantum Computation the notion of computability, which holds a central position in Mathematics and Theoretical Computer Science. A quantum algorithm that exploits the quantum adiabatic which is equivalent to the Turing halting problem and known to be mathematically noncomputable. Generalised quantum algorithms are also considered for some other mathematical noncomputables in the same and of different noncomputability classes. The key element of all these algorithms is the measurability of both the values of physical observables and of the quantum-mechanical probability distributions for these values. It is argued that computability, and thus the limits of Mathematics, ought to be determined not
A Recursive Techniques Editor for Prolog
- Instructional Science
, 2000
"... We describe an editor geared to recursive Prolog procedures. It is similar to the structure editors built for many programming languages, except that instead of just ensuring the correctness of the syntax of the procedures built by the editor, the editor also ensures the correct use of recursion. ..."
Abstract
-
Cited by 11 (3 self)
- Add to MetaCart
We describe an editor geared to recursive Prolog procedures. It is similar to the structure editors built for many programming languages, except that instead of just ensuring the correctness of the syntax of the procedures built by the editor, the editor also ensures the correct use of recursion. By correct here we mean that the recursive procedure is guaranteed to terminate and to be well-defined. Within these constraints we have tried to ensure that the range of procedures that can be built is as complete as possible. Key words and phrases. Prolog environments, programming techniques, structure editor, recursion, termination, rewrite rules. 1 Why a Recursion Editor? The general question being addressed in this paper is "what environmental tools can and should be provided to programmers to assist them to write programs?". Some of the standard answers to this question are: ffl structure editors: to ensure that the user writes only syntactically correct programs; ffl cross re...
Induction Rules, Reflection Principles, and Provably Recursive Functions
- University of Utrecht
, 1995
"... A well-known result of D. Leivant states that, over basic Kalmar elementary arithmetic EA, the induction schema for \Sigma n formulas is equivalent to the uniform reflection principle for \Sigma n+1 formulas. We show that fragments of arithmetic axiomatized by various forms of induction rules admit ..."
Abstract
-
Cited by 8 (3 self)
- Add to MetaCart
A well-known result of D. Leivant states that, over basic Kalmar elementary arithmetic EA, the induction schema for \Sigma n formulas is equivalent to the uniform reflection principle for \Sigma n+1 formulas. We show that fragments of arithmetic axiomatized by various forms of induction rules admit a precise axiomatization in terms of reflection principles as well. Thus, the closure of EA under the induction rule for \Sigma n (or \Pi n+1 ) formulas is equivalent to ! times iterated \Sigma n reflection principle. Moreover, for k ! !, k times iterated \Sigma n reflection principle over EA precisely corresponds to the extension of EA by k nested applications of \Sigma n induction rule. The above relationship holds in greater generality than just stated. In fact, we give general formulas characterizing in terms of iterated reflection principles the extension of any given theory (containing EA) by k nested applications of \Sigma n or \Pi n induction rules. In particular, the closure of a ...
General size-change termination and lexicographic descent
- The Essence of Computation: Complexity, Analysis, Transformation. Essays Dedicated to Neil D. Jones, volume 2566 of Lecture Notes in Computer Science
, 2002
"... Abstract. Size-change termination (SCT) is a general criterion to identify recursive function definitions that are guaranteed to terminate. It extends and subsumes the simpler criterion of lexicographic descent in function calls, which in classical recursion theory is known as multiple recursion. Ne ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
Abstract. Size-change termination (SCT) is a general criterion to identify recursive function definitions that are guaranteed to terminate. It extends and subsumes the simpler criterion of lexicographic descent in function calls, which in classical recursion theory is known as multiple recursion. Neil Jones has conjectured that the class of functions computable by size-change terminating programs coincides with the multiply-recursive functions. This paper proves so. 1 Introduction Consider the following recursive function definition (over the natural numbers-- as are all function definitions in this paper). Is computation of this function, by straight-forward evaluation of the defining expressions, guaranteed to terminate? f(x,y) = if x=0 then y
Constraints on recursion in the Hume expression language
- Draft Proc. International Workshop on Implementation of Functional Programming (IFL 2000
, 2000
"... Hume is a proposed new environment for constructing safety critical systems. Here, possible constraints on recursion in the Hume expression language, to aid termination determinacy, are discussed and structural operational semantics for static syntactic checks for simple and nested recursion are pre ..."
Abstract
-
Cited by 6 (5 self)
- Add to MetaCart
Hume is a proposed new environment for constructing safety critical systems. Here, possible constraints on recursion in the Hume expression language, to aid termination determinacy, are discussed and structural operational semantics for static syntactic checks for simple and nested recursion are presented.
Extending the Loop Language with Higher-Order Procedural Variables
, 2007
"... We extend Meyer and Ritchie’s Loop language with higher-order procedures and procedural variables and we show that the resulting programming language (called Loop ω) is a natural imperative counterpart of Gödel System T. The argument is two-fold: 1. we define a translation of the Loop ω language int ..."
Abstract
-
Cited by 5 (3 self)
- Add to MetaCart
We extend Meyer and Ritchie’s Loop language with higher-order procedures and procedural variables and we show that the resulting programming language (called Loop ω) is a natural imperative counterpart of Gödel System T. The argument is two-fold: 1. we define a translation of the Loop ω language into System T and we prove that this translation actually provides a lock-step simulation, 2. using a converse translation, we show that Loop ω is expressive enough to encode any term of System T. Moreover, we define the “iteration rank ” of a Loop ω program, which corresponds to the classical notion of “recursion rank ” in System T, and we show that both translations preserve ranks. Two applications of these results in the area of implicit complexity are described. 1
Improving the Lazy Krivine Machine
- HIGHER-ORDER AND SYMBOLIC COMPUTATION
, 2004
"... Krivine presents the machine, which produces weak head normal form results. Sestoft introduces several call-by-need variants of the machine that implement result sharing via pushing update markers on the stack in a way similar to the TIM and the STG machine. When a sequence of consecutive mark ..."
Abstract
-
Cited by 5 (0 self)
- Add to MetaCart
Krivine presents the machine, which produces weak head normal form results. Sestoft introduces several call-by-need variants of the machine that implement result sharing via pushing update markers on the stack in a way similar to the TIM and the STG machine. When a sequence of consecutive markers appears on the stack, all but the first cause redundant updates. Improvements related to these sequences have dealt with either the consumption of the markers or the removal of the markers once they appear. Here we present an improvement that eliminates the production of marker sequences of length greater than one. This improvement results in the machine, a more space and time e#cient variant of K. We then apply
The Specialization and Transformation of Constructive Existence Proofs
- PROCEEDINGS OF THE ELEVENTH INTERNATIONAL JOINT CONFERENCE ON ARTI INTELLIGENCE
, 1989
"... The transformation of constructive program synthesis proofs is discussed and compared with the more traditional approaches to program transformation. An example system for adapting programs to special situations by transforming constructive synthesis proofs has been reconstructed and is compared wit ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
The transformation of constructive program synthesis proofs is discussed and compared with the more traditional approaches to program transformation. An example system for adapting programs to special situations by transforming constructive synthesis proofs has been reconstructed and is compared with the original implementation [Goad 80]. A brief account of more general proof transformation applications is also presented. The overall moral is that constructiveexistence proofs contain more information over and above that required for simple execution and that this can be exploited by a proof transformation system.
Type Theory with First-Order Data Types and Size-Change Termination
, 2004
"... We prove normalization for a dependently typed lambda-calculus extended with first-order data types and computation schemata for first-order size-change terminating recursive functions. Size-change termination, introduced by C.S. Lee, N.D. Jones and A.M. Ben-Amram, can be seen as a generalized form ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
We prove normalization for a dependently typed lambda-calculus extended with first-order data types and computation schemata for first-order size-change terminating recursive functions. Size-change termination, introduced by C.S. Lee, N.D. Jones and A.M. Ben-Amram, can be seen as a generalized form of structural induction, which allows inductive computations and proofs to be defined in a straight-forward manner. The language can be used as a proof system—an extension of Martin-Löf’s Logical Framework.

