Hacker News new | past | comments | ask | show | jobs | submit login

I'm guessing people here are familiar with Borges' "Library of Babel". (If not, it's a short story about a library that contains every possible book).

I read an interesting thought experiment about the concept:

1. There's lots of different languages around, but all languages (even Chinese) use a finite alphabet of symbols. So for simplicity we can just convert all languages in the Library into binary.

2. On first appearance, the library would contain books of an infinite number of lengths. But it would surely be more practical to split such books into volumes.

3. You'd have a maximum volume length of say, 1 million bits. Books shorter than that can just be padded with 0s. But you can now double up volumes: volume #6345 of book #1840849 might be an exact duplicate of volume #93974 of book #11132445. Which means the library can now be finite in size: it only needs to contain all one-million-bit strings, a mere 2^1000000 volumes.

4. Why stop there, though? It's clear we could just use smaller volumes and get a smaller library. In fact, the library only needs two pages - one '0' and one '1'. Depending on the order you read them, you can get any book you want out of it.

Information theory is weird.

Edit: here's the original: http://jubal.westnet.com/hyperdiscordia/universal_library.ht...




Not sure if we're on the same page here, but this does not conform to what we know about information theory.

First, as someone else mentioned we'd have to have a maximum book length or else your library contains an infinite number of books, which is simply absurd because there would, for instance, be a book that contained all of the finite books inside it, in alphabetical order.

Second, using your compression technique, we'd still need to have some numbering on the volumes, and to describe a book, we'd have to do so by a list of numbers describing which volumes comprise it and in what order.

Third, this makes clear what is happening in your reductio ad absurdum argument -- we can reduce the volumes down to one dash, one dot; but then each book needs to contain a listing in order of which "volume" is in which order. So we're just writing the boks in binary again.


> Second, using your compression technique, we'd still need to have some numbering on the volumes, and to describe a book, we'd have to do so by a list of numbers describing which volumes comprise it and in what order.

Yes, for a normal library this would be the case. But this library contains every possible book.

So the index list you're asking for, describing which volumes comprise what book in what order, is the complete list of all possible orderings of volumes up to the maximum book length.

You don't really need that list, because you know exactly what it looks like.

But then, you don't really need the volumes either, because you know what they look like too (being all combinations of N bits).

So yeah, you'd just need a 0 and a 1.

I already got a copy of that library, and the cool thing is that it doubles as a light switch.


There seems to be some assumption here that books are named by their ordering of volumes. But I might know the name of a book and not its contents, so I'd need to look up the contents. (Of course, this is silly if you have every possible book, because any other naming scheme means most names will be longer than the books themselves....)


or else your library contains an infinite number of books, which is simply absurd because there would, for instance, be a book that contained all of the finite books inside it, in alphabetical order.

Careful, that doesn't follow. The library could contain all finite books, but no infinite book.


Absolutely correct. That was really sloppy of me.


You are not accounting for meta information, such as which volumes go together in which order to form which book.


The point of a library containing every possible book is you don't need any meta information – if it has every possible book, it doesn't matter what order you put the volumes, or pages, or words together.

And that's why the library containing every possible book contains no information (think, for every correct maths textbook, there is one with every fact negated, one with every number replaced with the Unicode symbol for a cake, and very many that are wrong in all manner of nastily subtle ways.)


>>> the library containing every possible book contains no information

Slightly tangential, but this reminds me of an old saying I used to apply to both my paintings and my music. (and my critique of others) "Emphasis on everything is emphasis on nothing"

I think it goes along with that idea that if everything is there, there is nothing to discern it from anything else. And thus it becomes bland, and contains no real information (or emotion, as would apply to music/art). Leading me to another thought, if emotions can be encoded as information though music, is there a way to digitize this? (The easy answer being yes, hello 1s & 0s) But I think there is more thought in there to be had...

</stream of consciousness> sorry I got lost in there for a little...


Getting way OT here but....

That reminds me of how my mom watches American Idol. She watches all of the contestants, and can't decide on who to vote for, so she votes for all of them....


You are being intentionally vague for no good reason. Define library in a reasonable way and your claim is not true. Define library as an "uncatalogued lexicographically sorted collection" and your claim holds. A library is about selection and organization and metadata (a form of compression), not merely enumeration.


Borges's library doesn't actually contain every possible book, just every possible book of a certain length (it's finite but very large).

Fun fact about Quine -- he didn't actually write the first known self-printing program! http://en.wikipedia.org/wiki/Quine_(computing)


You can find every possible book longer than the default length split into several volumes.


Yes, but that's saying the same thing as "you can write all binary numbers with the digits 0 and 1".

These correspond to choosing a 'book length' of 1 bit.

Each million-bit book is just a number in a base 2^1,000,000

Numbers larger than that require more than one book, just as numbers larger than 1 require more than one binary digit.


You don't even have to assume the alphabet is finite, merely countable, and you still have exactly one book for each finite string of bits. In other words, the set of every finite sequence of integers (or natural numbers, rationals, finite strings of Chinese characters, etc.) is no larger than the proper subset of "every sequence of length one".

A library with uncountably many distinct volumes is a fun thought experiment, though, as is a text written in a language that uses an uncountable alphabet, wherein a single letter potentially contains an infinite amount of information...


> a text written in a language that uses an uncountable alphabet, wherein a single letter potentially contains an infinite amount of information...

Isn't that called "drawing" instead of "writing", though?

So, comic books? :)


Information theory already has the answer: the original library, of all 1 million bit strings, contains zero (or very close to zero) information. Paradoxically enough, it contains far less information than one of those 1 million bit strings selected at random.

A library is not just a collection of all possible patterns, is perhaps the real lesson here.


>4. Why stop there, though? It's clear we could just use smaller volumes and get a smaller library. In fact, the library only needs two pages - one '0' and one '1'. Depending on the order you read them, you can get any book you want out of it.

We have to stop there. I cannot simply replace my iTunes library with two text files containing a '0' and a '1'.


If your itunes library contained every possible audio file, then yes, you could.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: