Working with the set of real numbers

Devin Jeanpierre jeanpierreda at gmail.com
Fri Feb 14 19:26:23 EST 2014


On Fri, Feb 14, 2014 at 3:30 AM, Gregory Ewing
<greg.ewing at canterbury.ac.nz> wrote:
> Devin Jeanpierre wrote:
>> There is no way to iterate over all the reals one at a time, no matter
>> how fast you execute instructions. If you could, it would be trivial
>> to show that the reals have the same cardinality as the positive
>> integers: correspond n with the whatever is returned by the nth call
>> to it.next.
>
>
> You're assuming that the calls to it.next are discrete
> events separated by some nonzero time interval.

I'm not. If you want to imagine infinitely fast computers, you must
allow for things to "precede" each other in the program's execution,
or else you can't execute any program at all.

In such an infinitely fast computer, if iteration works by calling a
.next() method repeatedly, it can't iterate uncountably many times, by
construction. If you're executing uncountably many instructions per
second, the loop would terminate immediately, having executed
countably infinitely many iterations.

> A decent transfinite processor would make a continuum
> of calls, and execute uncountably many of them in any
> finite period of time.

Yes, you could imagine a computer that does a thing for every real. My
issue is that the cited thing is transfinite induction, for which the
induction covers countably many values; handling of the rest of the
values is a second step. This is also the implication of such a word
as "iteration".

I suppose this was accidental on the part of the poster, and I
shouldn't have disagreed so strongly. I suspect they meant what you
are getting at, instead, which is that there is no successor to any
iteration, and between any two iterations there are uncountably many
iterations that happened. Operations occur in an order, but not
sequentially. (Of course, such a machine would be alien and absurd.)

-- Devin



More information about the Python-list mailing list