Acceptable programming system

Acceptable programming system

In the theory of computation in computer science, a programming system is a Gödel numbering of the set mathcal{T} of all Turing-computable functions from mathbb{N} to mathbb{N}. The name derives from the numbering of mathcal{T} induced by a numbering of the programs of a Turing-complete programming language. A programming system phi_1, phi_2, phi_3, dots is said to be universal if its (partial) universal function, u: mathbb{N}^2 ightharpoonup mathbb{N}: forall n, x in mathbb{N}, u(n,x) = phi_n(x), is Turing-computable. An "acceptable" programming system (also called an "admissible" Gödel numbering of mathcal{T}), is a programming system that is universal and has a total Turing-computable composition function c: mathbb{N}^2 o mathbb{N}: forall i,j in mathbb{N}, phi_{c(i,j)} = phi_i circ phi_j . Equivalently, an acceptable programming system is a programming system that is universal and satisfies the s-m-n theorem.

As a consequence of Rogers' equivalence theorem, all acceptable programming systems are equivalent, in the sense that if phi_1, phi_2, phi_3, dots and psi_1, psi_2, psi_3, dots are acceptable programming systems, then there exists a total Turing-computable function f such that forall n, psi_n = phi_{f(n)}.

References

* M. Machtey and P. Young, "An introduction to the general theory of algorithms", North-Holland, 1978.
* H. Rogers, Jr., 1967. "The Theory of Recursive Functions and Effective Computability", second edition 1987, MIT Press. ISBN 0-262-68052-1 (paperback), ISBN 0-07-053522-1


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • Hindawi Programming System — articleissues advert = October 2007 primarysources = October 2007 expand = October 2007 citations missing = October 2007Hindawi Programming System (hereafter referred to as HPS) is a suite of open source programming languages. It allows non… …   Wikipedia

  • Extensible programming — is a term used in computer science to describe a style of computer programming that focuses on mechanisms to extend the programming language, compiler and runtime environment. Extensible programming languages, supporting this style of programming …   Wikipedia

  • Comparison of programming paradigms — Programming paradigms Agent oriented Automata based Component based Flow based Pipelined Concatenative Concurrent computin …   Wikipedia

  • Motion picture rating system — Parental Guidance redirects here. For the Singaporean TV series, see Parental Guidance (TV series). For the Judas Priest song, see Parental Guidance (song). A motion picture rating system is designated to classify films with regard to suitability …   Wikipedia

  • Immunity Aware Programming — When writing firmware for an embedded system, immunity aware programming is a set of programming techniques used in an attempt to tolerate transient errors in the program counter or other that would otherwise lead to failure.Immunity aware… …   Wikipedia

  • Control system — For other uses, see Control system (disambiguation). A control system is a device, or set of devices to manage, command, direct or regulate the behavior of other devices or system. There are two common classes of control systems, with many… …   Wikipedia

  • Qi (programming language) — Qi is a functional programming language developed by Dr Mark Tarver and introduced in its current form in April 2005 under the GNU GPL license. Although Qi is written in Lisp, it includes most of the features common to modern functional… …   Wikipedia

  • Answer set programming — (ASP) is a form of declarative programming oriented towards difficult (primarily NP hard) search problems. It is based on the stable model (answer set) semantics of logic programming. In ASP, search problems are reduced to computing stable models …   Wikipedia

  • Muscle Atrophy Research and Exercise System — Test subject seated in the MARES human restraint system and using the linear adapter to exercise his arms. The Muscle Atrophy Research and Exercise System (MARES), part of the Human Research Facility (HRF), will be launched in a stowed position… …   Wikipedia

  • Circle-ellipse problem — The circle ellipse problem in software development (sometimes known as the square rectangle problem) illustrates a number of pitfalls which can arise when using subtype polymorphism in object modelling. The issues are most commonly encountered… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”