Talk:Computable number

message: : the computable numbers, also known as the recursive numbers, are the subset of the real numbers consisting of the numbers which can be computed by a finite, terminating algorithm
This definition could be taken to apply to the c.e. reals as well, depending on what it means to "compute" a real number.  Of course the definition is made precise later in the article, but it would be nice if it were a little clearer here.  I admit no wording jumps to mind--suggestions solicited. --Trovatore 19:39, 19 July 2005 (UTC)
thread_title: Clarify informal def?

message: I've removed the following remark:
:(Interestingly, we can define this diagonal number in a finite amount of English, such as this paragraph - though it is uncomputable!  This is perhaps due to the assumption that we can 'imagine ordering the computable numbers' for the Cantor proof, while this is not algorithmically possible in practice.)
It's not about "imagining" such an ordering; all this shows is that we can define more than we can compute. As for what's possible in practice, that has nothing to do with whether an algorithm exists. There are things we can't do in practice, that are algorithmically very simple: For example, counting to a googol. --Trovatore 07:53, 5 December 2005 (UTC)
thread_title: removed remark

message: In the last section is written: "no uncomputable element can be expressed using a finite number of symbols". Isn't this wrong? What about Ω? Is 'expressed' a bad choice of words, or is this plain wrong? —The preceding unsigned comment was added by  Etatoby (talk • contribs)  21:53, 2 April 2006  (UTC)
:I would lean to "just plain wrong". I would also say the following line
::In some sense the computable numbers include all numbers which are individually "within our grasp".
:is wrong, though of course it depends on what sense "some sense" is.
:By the way, by Ω I take it you're talking about Chaitin's constant. It should maybe be pointed out that many people seem to think Chaitin was the first person to give a precise characterization of an uncomputable real. That is not at all correct. The set of all Gödel numbers of Turing machines that halt is denoted 0', and the fact that it could be coded by a real and that it's not computable long predates Chaitin.
:In general, Chaitin's math is right, his interpretations are somewhat arguable, and claims that he originated some revolutionary change are almost always overblown. It is possible to be, at the same time, very good and very overrated. --Trovatore 22:47, 2 April 2006 (UTC)
replies: text: While I'm in a huffing mood, I huffed that too. -Dan 14:09, 6 June 2006 (UTC)
thread_title:  Is this a typo? 

message: I'm not sure about that computable Dedekind cut definition. I actually think it is in the same boat as the "digit sequence" definition: equivalent, but not computably equivalent. Also, I think the error-bound definition should be stated with a rational error bound. How do you give a real error bound to an algorithm? -Dan 14:09, 6 June 2006 (UTC)
replies: text: I agree. "Dedekind-cut computable" numbers are computable according to the other definitions, but the converse is not necessarily true. Take for instance the limit of the sequence (an)n where an = 1/n if there is no counterexample < n to the Goldbach conjecture, and otherwise 1/c where c is the first such counterexample. This limit is computable also in the sense of constructive or intuitionistic real numbers, but you must be a classical Platonist to believe that there is necessarily a function D that does the trick. This kind of spoils the beuaty of the idea of "computable number". The |r-a| ≤ ε definition should be turned into something more Cauchy-like; as presented it requires a belief in the existence of real numbers separate from their computability -- which, again, spoils the idea. Basically all you need is a computable function f from the positive rationals to the rationals such that |f(x)–f(y)| ≤ |x-y|. --LambiamTalk 21:42, 17 June 2006 (UTC)
thread_title:  Formal definitions 

message: * I removed the following sentence.  It isn't clear what the word require is supposed to mean. I'm sure the topos theorists don't agree...
:: In contrast, the reals require the more powerful axioms of Zermelo-Fraenkel set theory. 
* I fixed the tone to make it encyclopdic, and removed the first person pronouns.
* Added the Cachy sequence characterization of computable reals.
* I clarified why the computable reals are not robust enough for elementary calculus
* I added a reference and clarified to relation to constructive mathematics
* Cleaned up the reference to Chaitin numbers.
CMummert 12:24, 14 July 2006 (UTC)
replies: text: Good work. Paul August ☎ 15:30, 14 July 2006 (UTC)
thread_title:  Edit of 2006-7-14 

message: I've removed the following external link from the article:
* http://www.informatik.fernuni-hagen.de/thi1/klaus.weihrauch/book.html
This link doesn't work anymore, and a quick Google search didn't turn up an online copy (freely readable) anywhere. Please correct me if I'm wrong. - dcljr (talk) 03:01, 2 August 2009 (UTC)
thread_title:  Online book is now gone 

message: The section Properties says: "Although the computable numbers are an ordered field, the set of Gödel numbers corresponding to computable numbers is not itself computably enumerable, because it is not possible to effectively determine which Gödel numbers correspond to Turing machines that produce computable reals." However, as it is mentioned in this talk page earlier, one can run all possible Turing machines in parallel (executing sequentially one step of each machine and adding new machines after every round). Each machine which produces computable number halts in finite number of steps, so using this method one can effectively enumerate as many computable reals as desired. If so, the set of Turing machines that produce computable reals seems to be computably enumerable, although it is not computable. Is there a mistake in the article or am I wrong in my understanding? 77.254.193.94 (talk) 19:10, 19 August 2012 (UTC)
replies: text: A computable real number is in general infinite, not finite, so it is not the case that "each machine which produces computable number halts in finite number of steps". — Carl (CBM · talk) 19:36, 19 August 2012 (UTC)
thread_title:  Are computable numbers computably enumerable? 

message: "A complex number is called computable if its real and imaginary parts are computable."
Is that an if and only if? If not, is there a fun counterexample? SamuelRiv (talk) 07:05, 7 September 2012 (UTC)
replies: text: This statement has the form of a definition.  Conventionally in mathematics, definitions use if, not if and only if.  The if is not to be thought of as a logical connective, because a definition is not a proposition at all, but something more like an assignment in a programming language.  --Trovatore (talk) 07:15, 7 September 2012 (UTC)
thread_title:  Complex number 

message: This article currently reads: A real number is computable if and only if there is a computable Dedekind cut D converging to it.  Naively, this seems to contradict the idea behind the Specker sequence. Can someone elaborate, or provide a reference?  User:Linas (talk) 20:49, 3 September 2013 (UTC)
replies: text: One can surely dig out references (e.g Hirst, Representations of Reals in Reverse Mathematics  or one of the many references in Weirauch-style computable analysis). The answer to your implicit question is that there is not a computable Dedekind cut for a real α that is the limit of a Specker sequence, as the set \{q \in \mathbb{Q} : q > \alpha\} is not computable. — Carl (CBM · talk) 23:04, 3 September 2013 (UTC)
thread_title:  Dedekind cuts? 

message: I think § Properties should be changed to
"While the set of real numbers is uncountable, the set of computable numbers is only countable and thus almost all real numbers are not computable. The computable numbers can be counted by assigning a Gödel number to each Turing machine definition. This gives a function from the naturals to the computable reals. Although the computable numbers are an ordered field, the set of Gödel numbers corresponding to computable numbers is not itself computably enumerable, because it is not possible to effectively determine which Gödel numbers correspond to Turing machines that produce computable reals. In order to produce a computable real, a Turing machine must compute a total function, but the corresponding decision problem is in Turing degree 0′′. Thus Cantor's diagonal argument cannot be used to produce uncountably many computable reals; at best, the reals formed from this method will be uncomputable. There are only countably many algorithms and so there can only be countably many computable numbers.
It might seem like a brain can generate an uncomputable number by using Cantor's diagonal argument on all computable numbers and so compute a number a computer can't. The mistake in that argument is that not all algorithms generate a number at all and you don't know which algorithms generate a number to apply Cantor's diagonal argument to them. When ever you think of a way to generate a sequence of numbers in your head, only some of the algorithms that generate a number generate a number from that sequence and not all of them. You can apply Cantor's diagonal argument to generate a number not appearing anywhere in that sequence in your head and try to generate another sequence of all numbers you can easily think of a way to generate in terms of that sequence. That will exhaust more of the algorithms that do generate a number but there will still be some left so that doesn't prove applying Cantor's diagonal argument to that sequence will generate an uncomputable number in your head. We're pretty sure it will be computable in all new situations where you think of a way to generate a number in your head because there are some computer science experts who have never thought of a way to generate a number in their head without being able to find an algorithm that generates it, though we can never completely prove that a brain can't generate an uncomputable number. Just because a brain can only generate computable numbers doesn't mean uncomputable numbers don't exist. We know that they exist because we can define one in terms of which algorithms generate a number despite the fact that we don't know which ones do. For example, take a sequence of all algorithms that generate a number then replace each algorithm in the sequence with the number it generates, then Cantor's diagonal argument tells us that there exists a number not in that sequence which is therefore uncomputable.
The arithmetical operations on computable numbers are themselves computable in the sense that whenever real numbers a and b are computable then the following real numbers are also computable: a + b, a - b, ab, and a/b if b is nonzero.
These operations are actually uniformly computable; for example, there is a Turing machine which on input (A,B,\epsilon) produces output r, where A is the description of a Turing machine approximating a, B is the description of a Turing machine approximating b, and r is an \epsilon approximation of a+b.
The computable real numbers do not share all the properties of the real numbers used in analysis. For example, the least upper bound of a bounded increasing computable sequence of computable real numbers need not be a computable real number (Bridges and Richman, 1987:58). A sequence with this property is known as a Specker sequence, as the first construction is due to E. Specker (1949). Despite the existence of counterexamples such as these, parts of calculus and real analysis can be developed in the field of computable numbers, leading to the study of computable analysis. 
The order relation on the computable numbers is not computable. There is no Turing machine which on input A (the description of a Turing machine approximating the number a) outputs "YES" if a > 0 and "NO" if a \le 0. The reason: suppose the machine described by A keeps outputting 0 as \epsilon approximations. It is not clear how long to wait before deciding that the machine will never output an approximation which forces a to be positive. Thus the machine will eventually have to guess that the number will equal 0, in order to produce an output; the sequence may later become different from 0. This idea can be used to show that the machine is incorrect on some sequences if it computes a total function. A similar problem occurs when the computable reals are represented as Dedekind cuts. The same holds for the equality relation : the equality test is not computable.
While the full order relation is not computable, the restriction of it to pairs of unequal numbers is computable. That is, there is a program that takes an input two Turing machines A and B approximating numbers a and b, where a≠b, and outputs whether ab. It is sufficient to use ε-approximations where  \varepsilon < |b-a|/2 so by taking increasingly small ε (with a limit to 0), one eventually can decide whether ab.
Every computable number is definable, but not vice versa. There are many definable, noncomputable real numbers, including:
*The binary representation of the halting problem (or any other uncomputable set of natural numbers).
*Chaitin's constant, \Omega, which is a type of real number that is Turing equivalent to the halting problem.
Both of these examples in fact define an infinite set of definable, uncomputable numbers, one for each Universal Turing machine.
A real number is computable if and only if the set of natural numbers it represents (when written in binary and viewed as a characteristic function) is computable.
Every computable number is arithmetical.
The set of computable real numbers (as well as every countable, densely ordered subset of reals without ends) is order-isomorphic to the set of rational numbers."
Can anyone find sources for the information I added. If not then maybe find an expert to discuss whether what I added is true and if they say it's true, it almost definitely is true which satisfies the original purpose of Wikipedia:No original research and so maybe it doesn't need to be cited even if it's suspected that no sources exist. The article probably would satisfy the less strict criterion of Wikipedia:Verifiability because so many computer scientists reading the article could verify that information by figuring out that it's true. See Wikipedia:Ignore all rules. Blackbombchu (talk) 04:42, 23 November 2014 (UTC)
thread_title:  [[Computable number#Properties|§ Properties]] 

message: I just cleaned up the language in section Computable_number#Digit_strings_and_the_Cantor_and_Baire_spaces, and I wondered about the sentence: " While [0,1] 2^{\omega} is totally disconnected …". Does this make sense? I would have expected " While 2^{\omega} is totally disconnected". Atoll (talk) 06:23, 23 September 2022 (UTC)
replies: text: My guess is, just an editing mistake.  I've fixed it.  If it wasn't a mistake, then hopefully someone will make it known. --Trovatore (talk) 06:28, 23 September 2022 (UTC)
replies: text: A similarly weird expression is still remaning, viz. "\mathbb{R} \omega^{\omega}". Each of these expressions used two <math> tags in the source code. Possibly, the editor had meant "[0,1] alias 2^{\omega}" and "\mathbb{R} alias \omega^{\omega}"; this would be somewhat consistent with the preceeding text. - Jochen Burghardt (talk) 21:27, 23 September 2022 (UTC)
thread_title:  is <math>[0,1]</math> <math>2^{\omega}</math> correct? 

message: There are subsections which do not include any references. This makes them less useful. AmirOnWiki (talk) 08:02, 23 September 2023 (UTC)
thread_title:  References?