
(i really do enjoy this.)at the mathematical root of a search engine, you have a bunch of words (they're mostly in english, although a few are always gibberish) and a bunch of documents, like pages and websites. the function of a search engine is to take a few words that you give it, and tell you which documents corrospond to those words. apart from the technicalities, this is very easy. you just look it up in a handy-dandy table of words and documents that you fill out whenever you add more documents to your knowledge.
my extension involves related words. if two words show up in the same document, i will suggest that they have some corrospondence. think of them as being friends on facebook. but there are also friends-of-friends, and so on. words that don't appear together, but are somehow also related to a third word. this goes on for a long time. words that are friends-of-friends-of-friends. to take this into account, my method involves using the table of words and documents creatively. if you give me a word, i first look up all the documents related to it. a normal search engine stops here and shows them to you. instead, i lookup those documents in the table again to see what words come out. there will be a lot more, but they will be related to the first word. now use THOSE words to look up more documents, keeping track of which words and documents have appeared the most times. do this an infinite number of times to find all the related words. there are cute math tricks involved in reducing the number of steps from infinite down to one, so you can stop before you spend an infinite amount of time on this. now that you know all the related words and which ones showed up the most, you can make a better guess about which documents might be most appropriate.
search engine