ABSTRACT

A lower bound proof establishes the absolute minimum number of operations (usually comparisons) required to solve a problem, regardless of how clever the algorithm is. For searching in a sorted list, the lower bound is , proving that Binary Search is asymptotically optimal.


The Decision Tree Model

To prove a lower bound for any comparison-based search, we use a Decision Tree. This is a conceptual model where:

  • Nodes represent a comparison between the target and an element .
  • Edges represent the outcome ( or ).
  • Leaves represent the final result (the index of the element or “Not Found”).

Properties of the Tree

For a list of size , there are possible outcomes:

  1. The item is at index .
  2. The item is at index .
  3. The item is at index .
  4. The item is not in the list.

Therefore, any valid decision tree for searching must have at least leaves.


The Mathematical Proof

We use the relationship between the number of leaves () and the height of a binary tree (). The height represents the worst-case number of comparisons.

  1. Binary Tree Property: A binary tree of height can have at most leaves.

  2. Substitution: Since we need at least leaves:

  3. Solve for :

IMPORTANT

This proves that any algorithm that searches by comparing elements must perform at least comparisons in the worst case.


Optimal vs. Sub-optimal

We can now categorize algorithms based on how close they get to this theoretical floor:

AlgorithmWorst CaseLower BoundStatus
Linear SearchSub-optimal (for sorted data)
Binary SearchAsymptotically Optimal

Why is Linear Search ?

Linear Search does not utilize the sorted property. It effectively builds a “degenerate” decision tree (a long chain) where the height is rather than .


Limitations: Can we go faster?

Can we ever search faster than ?

  • Non-Comparison Sorts: If we use the value of the data as an index (like a Hash Table), we can achieve average time.
  • The Constraint: The bound only applies to comparison-based algorithms where we only learn information through “is ?“.