19,325 research outputs found
A Swiss Pocket Knife for Computability
This research is about operational- and complexity-oriented aspects of
classical foundations of computability theory. The approach is to re-examine
some classical theorems and constructions, but with new criteria for success
that are natural from a programming language perspective.
Three cornerstones of computability theory are the S-m-ntheorem; Turing's
"universal machine"; and Kleene's second recursion theorem. In today's
programming language parlance these are respectively partial evaluation,
self-interpretation, and reflection. In retrospect it is fascinating that
Kleene's 1938 proof is constructive; and in essence builds a self-reproducing
program.
Computability theory originated in the 1930s, long before the invention of
computers and programs. Its emphasis was on delimiting the boundaries of
computability. Some milestones include 1936 (Turing), 1938 (Kleene), 1967
(isomorphism of programming languages), 1985 (partial evaluation), 1989 (theory
implementation), 1993 (efficient self-interpretation) and 2006 (term register
machines).
The "Swiss pocket knife" of the title is a programming language that allows
efficient computer implementation of all three computability cornerstones,
emphasising the third: Kleene's second recursion theorem. We describe
experiments with a tree-based computational model aiming for both fast program
generation and fast execution of the generated programs.Comment: In Proceedings Festschrift for Dave Schmidt, arXiv:1309.455
From Nonstandard Analysis to various flavours of Computability Theory
As suggested by the title, it has recently become clear that theorems of
Nonstandard Analysis (NSA) give rise to theorems in computability theory (no
longer involving NSA). Now, the aforementioned discipline divides into
classical and higher-order computability theory, where the former (resp. the
latter) sub-discipline deals with objects of type zero and one (resp. of all
types). The aforementioned results regarding NSA deal exclusively with the
higher-order case; we show in this paper that theorems of NSA also give rise to
theorems in classical computability theory by considering so-called textbook
proofs.Comment: To appear in the proceedings of TAMC2017 (http://tamc2017.unibe.ch/
Propositional computability logic I
In the same sense as classical logic is a formal theory of truth, the
recently initiated approach called computability logic is a formal theory of
computability. It understands (interactive) computational problems as games
played by a machine against the environment, their computability as existence
of a machine that always wins the game, logical operators as operations on
computational problems, and validity of a logical formula as being a scheme of
"always computable" problems. The present contribution gives a detailed
exposition of a soundness and completeness proof for an axiomatization of one
of the most basic fragments of computability logic. The logical vocabulary of
this fragment contains operators for the so called parallel and choice
operations, and its atoms represent elementary problems, i.e. predicates in the
standard sense. This article is self-contained as it explains all relevant
concepts. While not technically necessary, however, familiarity with the
foundational paper "Introduction to computability logic" [Annals of Pure and
Applied Logic 123 (2003), pp.1-99] would greatly help the reader in
understanding the philosophy, underlying motivations, potential and utility of
computability logic, -- the context that determines the value of the present
results. Online introduction to the subject is available at
http://www.cis.upenn.edu/~giorgi/cl.html and
http://www.csc.villanova.edu/~japaridz/CL/gsoll.html .Comment: To appear in ACM Transactions on Computational Logi
Kurt Gödel and Computability Theory
Although Kurt Gödel does not figure prominently in the history of computabilty theory, he exerted a significant influence on some of the founders of the field, both through his published work and through personal interaction. In particular, Gödel’s 1931 paper on incompleteness and the methods developed therein were important for the early development of recursive function theory and the lambda calculus at the hands of Church, Kleene, and Rosser. Church and his students studied Gödel 1931, and Gödel taught a seminar at Princeton in 1934. Seen in the historical context, Gödel was an important catalyst for the emergence of computability theory in the mid 1930s
- …