May 1, 2015 at 4:29 pm #142
The library has undergone significant reconstruction, and now contains every possible page of text. It is still a small collection compared to the 251312000 books which Borges imagined, but the 293200 which it does contain are enough to keep us busy for eternity.
The search function has also been redesigned, and can successfully match any page of text many, many times. (I’m happy to explain more about how I calculated the number of possible matches which appear on the search pages, if any of the mathematically inclined would like to learn more about the library’s mechanism.)
“When it was announced that the Library contained all books, the first reaction was unbounded joy.” So said Borges’ librarian/narrator in “The Library of Babel,” and I hope that visitors to this site will begin the important work that the librarians of Babel undertook, to read, catalogue, and interpret its texts. Please post the locations of any interesting discoveries here in the forum.
Much like Borges’ library, the architecture of our site has grown more vast and complex with its expansion. I’ve done my best to explain its organization in the Reference Hex. Most of the books you will find by searching can only be bookmarked or linked to if you click the “Bookmarkable” link on the book pages. This lets you create a custom url.
Of course, you could always copy down the wall, shelf, volume, and page numbers, as well as the combination of letters and numbers which comprise the name of its hexagon (accessible on the browse page, or at the end of downloaded texts). Again, there’s more information about this in the Reference Hex. I apologize for the complicated structure, but it was necessary to remain true to Borges’ design.
Wall 1, Shelf 1, Volume 23, Page 163May 5, 2015 at 1:54 am #177
Hi Jonathan. All of this is pretty mind boggling. I’m a major fan.
Just out of curiosity: have you done any delving into the legal ramifications of all this? I understand that a la Borges’ instructions the texts here have all been generated by way of procedural generation, but what happens if 1) a contemporary author finds his copyrighted work in your library and feels outraged that it’s been “published” online; or 2) somebody browsing your library stumbles across an as of yet unwritten masterpiece, and goes on to copyright it, publish it, etc.?
I realize (1) is merely a matter of retroactive search, and any author anywhere could manufacture that scenario, and that (2) is of such astronomically remote odds that it need not be a serious question (that was, after all, part of Borges’ point with the story). But still…May 5, 2015 at 3:13 am #178
For starters, legal definitions aside, I would just point out there really isn’t anything here that could infringe on an author’s rights or their ability to control their own work. No one could conceivably access another author’s work through libraryofbabel.info unless that person had a copy of the work already.
Of course, not having a legitimate claim doesn’t always stop people from starting lawsuits. I’m not an expert in this area, but I know there are substantial protections for artists, scholars, etc. to make use of other works in the form of citations, parody, satire, and any number of recontextualizations. It is because we have these legal protections that artistic and intellectual production can continue in our society. Otherwise everything from comedic impersonations to scholarly references would be an actionable offense. I think that libraryofbabel.info constitutes such a recontextualization – when one encounters text here it’s for a different reason and with a different eye than when they see it in its normal environs.
Also, the site makes no money, and never will (that’s a promise – it’s a library!). So there could be no claim of profiting off of someone else’s work.May 5, 2015 at 6:31 am #182
Hello, this whole place is rather incredible, thank you for making it.
With the current algorithm would it be in anyway possible to display all results for a certain search in one go, or even downloadable as one text file (which, if the 29^5 figure is right and my quick googling of how file sizes work is right would be about 8-9 gb) so as to be able to search through full sets of results very quickly to find what bizarre things there are? From what I’ve thus far read it seems perhaps unlikely and that it would require far more power than currently available to do so with the current algorithm, but I was just wondering. It would certainly make the trawling for interesting books easier (though perhaps that would defeat the point of the near infinite chaos).May 5, 2015 at 6:45 am #183
Sorry I didn’t properly check some things, what I said would be true for titles and the file size would be slightly less for the search with English words, but the number of exact results and ones with random extra characters would be a vast size and even if the algorithm did allow it probably unworkable just on file size. So sorry for not checking.May 5, 2015 at 7:36 am #184
My lord does my stupidity know no bounds?
I’ve failed once more, it turns out the full text for even just a title search would be more like 24 terabytes which obviously totally invalidates that idea.
Though one question remains (that may have been covered in the searching across pages thread): is it possible to search within search results for something else? From the aforementioned thread it seems like probably not because the algorithm works on a page by page basis (if that’s incorrect please do correct me) but thank you for any information and for this creation in general.May 5, 2015 at 12:44 pm #185
A list of all possible search results could be created programmatically, but like you said the memory demands are just too impractical, at least with our current set up.
The problems are similar with searching – finding a page of text is very easy for the program, but reading through a book would be a much more demanding operation.
I actually had an idea recently that I think might allow the library to produce full books in the way that it currently produces pages. It’s current method could be increased to that scale, but is too slow and inefficient working with numbers of that size (~102000000). If I succeed then you’ll be able to find any book you like.
Thank you for the interesting ideas!
-JonathanMay 22, 2015 at 3:09 am #250
Because the algorithm used to generate these books is pseudo-random, does that mean that there is a possibility that some books cannot be generated?
Also, have you considered publishing or open-sourcing the code?May 22, 2015 at 3:43 pm #251
I did a lot of research into PRNGs when working on the code, and if I’ve chosen the parameters correctly, the PRNG I’ve designed will go through every possibility once before repeating (much like the description Borges’ narrator offers at the end of the story, of an infinite library that repeats its finite set of books in the same order for eternity). Of course, there’s no way to test it – it would take longer than the life span of the universe to go through every possibility.
The PRNG uses a linear congruential generator, and I’ve chosen the parameters based on the Hull-Dobell theorem, so it should be mathematically provable that it can generate all possibilities. I wouldn’t know how to execute that proof, though. I can say that I’ve never seen a search fail.
I do intend to publish the code, but I have some more work I’d like to do both on and with it first.
-JonathanMay 26, 2015 at 10:18 pm #334
Suppose 2 searches yield an identical book (the odds are low but it must be possible). How is it guaranteed that the book is mapped to a unique location in the catalogue? Or is this irrelevant because the library is supposed to be infinitely repeating (and the catalogue infinitely expanding?)?May 26, 2015 at 11:34 pm #335
Once the algorithm has passed through all of its potential unique output, it does repeat in the same order, much as Borges’ librarian-narrator describes in “The Library of Babel” –
“The Library is unlimited but periodic. If an eternal traveler should journey in any direction, he would find after untold centuries that the same volumes are repeated in the same disorder-which, repeated, becomes order: the Order. My solitude is cheered by that elegant hope.”May 27, 2015 at 6:10 am #342
(29^3200)^410 is awfully close to 25^1312000
so if you took every possible page and arranged them into every possible 410 page book, you would have entire 410 page books hidden within the entire universal library, which would contain slightly more books than in Borge’s own book, which now come to think of it would also be hidden within the library.July 24, 2015 at 12:11 am #793
Congratulations! You just rediscovered a well known property of exponentiation, i.e.,
(a^b)^c = a^(bc)for all b, c and non-zero a. Any elementary math textbook that defines log() on real or complex numbers should include a proof.July 24, 2015 at 12:13 am #794
Addendum: and the proof I referred to certainly fits on one page, so you can find it in this library in a finite amount of time.September 29, 2015 at 8:40 am #1787
Back in May you talked about releasing the source code. Since I am really curious about the actual implementation used, is there something new regarding the release?