Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Chaitin's constant
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Background == The definition of a halting probability relies on the existence of a prefix-free universal computable function. Such a function, intuitively, represents a program in a programming language with the property that no valid program can be obtained as a proper extension of another valid program. Suppose that {{mvar|F}} is a [[partial function]] that takes one argument, a finite binary string, and possibly returns a single binary string as output. The function {{mvar|F}} is called [[Computable function|computable]] if there is a [[Turing machine]] that computes it, in the sense that for any finite binary strings {{mvar|x}} and {{mvar|y}}, {{math|1=''F''(''x'') = ''y''}} if and only if the Turing machine halts with {{mvar|y}} on its tape when given the input {{mvar|x}}. The function {{mvar|F}} is called [[Computational universality|universal]] if for every computable function {{mvar|f}} of a single variable there is a string {{mvar|w}} such that for all {{mvar|x}}, {{math|1=''F''(''w'' ''x'') = ''f''(''x'')}}; here {{math|''w'' ''x''}} represents the [[concatenation]] of the two strings {{mvar|w}} and {{mvar|x}}. This means that {{mvar|F}} can be used to simulate any computable function of one variable. Informally, {{mvar|w}} represents a "script" for the computable function {{mvar|f}}, and {{mvar|F}} represents an "interpreter" that parses the script as a prefix of its input and then executes it on the remainder of input. The [[Domain of a function|domain]] of {{mvar|F}} is the set of all inputs {{mvar|p}} on which it is defined. For {{mvar|F}} that are universal, such a {{mvar|p}} can generally be seen both as the concatenation of a program part and a data part, and as a single program for the function {{mvar|F}}. The function {{mvar|F}} is called prefix-free if there are no two elements {{mvar|p}}, {{mvar|p′}} in its domain such that {{mvar|p′}} is a proper extension of {{mvar|p}}. This can be rephrased as: the domain of {{mvar|F}} is a [[prefix-free code]] (instantaneous code) on the set of finite binary strings. A simple way to enforce prefix-free-ness is to use machines whose means of input is a binary stream from which bits can be read one at a time. There is no end-of-stream marker; the end of input is determined by when the universal machine decides to stop reading more bits, and the remaining bits are not considered part of the accepted string. Here, the difference between the two notions of program mentioned in the last paragraph becomes clear: one is easily recognized by some grammar, while the other requires arbitrary computation to recognize. The domain of any universal computable function is a [[computably enumerable set]] but never a [[computable set]]. The domain is always [[Turing degree|Turing equivalent]] to the [[halting problem]].
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Chaitin's constant
(section)
Add topic