If you can find 20 questions so that each question roughly halves the sample size depending on the answer, you can halve a big set of people 20 times, thus yielding a set of size 2^20 = 1 048 576 times smaller than the original.<p>So if you take a set of people of size 1 million and ask the right 20 yes/no questions you can almost always figure out the right person. Of course, the more questions you ask, the finer the result (with 30 questions it's 1 billion). Also, these questions don't have to be binary, thus they can cut a set in e.g. 1/5, not half.<p>Of course with real world questions this is much harder to do, but with a clever question selecting algorithm it could be done this way, I suspect.