while (a=b()) ... infinite sets digression

Gordon McMillan gmcm at hypernet.com
Fri May 21 23:44:32 EDT 1999


Bryan VanDeVen wrote:
> > 
> > Gordon McMillan (gmcm at hypernet.com) wrote:

> > : Instead of the integers, take the numbers between 0 and 1. Use your
> > : mapping. Now realize that most of the numbers you've created are
> > : transcendentals, and the rationals, by comparison, amount to a hill
> > : of beans. So it _is_ a denser form of infinity than the integers.

> Me either, the real numbers beween 0 and 1 are all infinite strings
> - limits of infinite cauchy sequences (all of them, 0.1 <=>
> 0.100000000...) which is why Cantor's Diagonalization argument
> works. But not all of the strings in a set of all strings over a
> finite alphabet are infinite so Cantor's argument is not applicable.

The set of strings of finite length is a subset of all strings. Will 
you accept that it's a countable subset? (Each set of strings of 
length n is finite, so it should be sufficient to show that there's a 
countable number of these subsets.)

So, it only contributes to the cardinality of the set of all 
strings if the other subset (those of infinite length) is finite.

So the question is whether the set of infinite length strings is 
countable.

> Besides, the set of all strings of single digits (0 through 9) is an
> infinite set of strings over a finite alphabet, and it can easily 
> be mapped to the integers.  In fact, most people do it without even
> thinking.  QED. :)

I've never seen anyone mistake an infinite sequence of the characters 
'0' through '9' for an integer.

The better question is whether that same string preceeded by a '0.' 
can always be confused with a rational.  And it can't.

> When's the last time they talked set theory in that other newsgroup.
> ;)

And this is twice in the last 3 years that this newsgroup has 
stumbled onto this general topic!

- Gordon




More information about the Python-list mailing list