I find it confusing that all of the following statements are true :
- The computable real numbers are countable. $-\hspace{-3pt}-$ Alan Turing, "On Computable Numbers, with an Application to the Entscheidungsproblem"
- In constructive analysis, the real numbers are uncountable. $-\hspace{-3pt}-$ Errett Bishop, Foundations of Constructive Analysis
- "every mathematical statement [in constructive analysis] ultimately expresses the fact that if we perform certain computations within the set of positive integers, we shall get certain results" $-\hspace{-3pt}-$ Ibid.
Perhaps I am misunderstanding something.
I suppose I really have two questions. In constructive analysis :
- Why isn't every real number computable?
- How is it possible to construct an uncountable set?
A real number $x$ is computable if there exists a program $P(n)$ that on input $n$ outputs the decimal expansion of $x$ up to the $n$th digit. For example, $\pi$ is one such computable number - you can approximate $\pi$ as close as you want with a computer.
From this we can deduce $1$. Each computer program can be specified by a unique integer (it's binary representation), and hence there are a countable number of such programs, and therefore at most a countable number of computable real numbers.
However as $2$ says, the real numbers are uncountable. You can find a classical diagonalization proof of this fact here.
So if the real numbers are uncountable but computable numbers are countable then there must exist uncountably many real numbers which are not computable. Examples of uncomputable real numbers are rather exotic - they do not usually appear in natural problems.
However that does not mean they are sparse - indeed since every interval of the real line contains uncountable many numbers it must contain uncountable many uncomputable numbers. One example of an uncomputable number is Chaitin's constant.
The third statement you cite is the most sophisticated. Essentially, uncomputable numbers are not operational - you cannot use them in ordinary calculations. So for all practical purposes you could just work with the set of computable real numbers - and that is what constructive analysts do. Computable real numbers are algebraically closed - every reasonable operation you do with them will result in another computable numbers. That is the essence of the statement.
Regarding your question on how to build uncountable sets - if a set $S$ is countably infinite, then the set of all subsets of $S$ is uncountable. This is Cantor's theorem.