Let's start with the comparison sorting lower bound proof, which I'll summarize as follows:
- For $n$ distinct numbers, there are $n!$ possible orderings.
- There is only one correct sorted sequence of the $n$ numbers.
- We are given that comparison ($<$) is the only operation we have that can narrow down the $n!$ possible orderings, and each comparison has only two possible outcomes.
- So $\log_2(n!)$ comparisons are required.
Now consider the following generalization of the argument above:
- Define a space of possibilities and its size (in the case of sorting, $n!$ orderings)
- Define the goal state and its size (in this case, only one correctly sorted answer)
- Define the amount of information that is gained at each step of the computation (in this case, one bit since there are only two possible outcomes per comparison)
- Calculate the information difference between the space of possibilities (step 1) and the goal space (step 2) and divide by the information gain per step (step 3) to yield the lower bound on the number of steps (in this case, $(\log_2(n!)$ - $\log_2(1))$ / 1 = $\log_2(n!)$).
Please answer all the following questions. I'm less concerned with the correctness of the particulars of step 4 than I am with the correctness of steps 1 - 3.
- Are there any problems with the generalized argument?
- If the problems can be fixed, what are the fixes?
- If the problems can't be fixed, please point out the fatal ones and provide directions to sources which describe these lower-bounds proofs and their pitfalls.