Recurrences & the Master Theorem

the regularity condition

Case 3 of the Master Theorem says 'the top level dominates, so the answer is Theta(f(n))'. But that story only holds if the work really does shrink as you go down the tree. The regularity condition is the fine-print requirement that makes sure it does — a small check that f does not misbehave on smaller inputs.

The condition is: a f(n/b) <= c f(n) for some constant c < 1 and all sufficiently large n. Read it as 'all the children's combine work, a f(n/b), is at most a constant fraction c of the parent's combine work f(n)'. If this holds, then each level of the recursion tree costs at most c times the level above it, so the level totals form a decreasing geometric series; summing a geometric series with ratio c < 1 gives a total that is just a constant times the first term, namely Theta(f(n)). Without the condition, the per-level work might not decay, and you could not conclude that the root dominates.

In practice, for any ordinary polynomial f(n) = n^k that is polynomially larger than n^(log_b a), the condition holds automatically (you can compute a (n/b)^k = (a / b^k) n^k and the factor a/b^k is < 1 precisely because k > log_b a). That is why textbooks often apply Case 3 without mentioning it. The honest point of keeping it in view: it CAN fail for strange f — for example functions that oscillate or have non-monotone pieces — and in those cases Case 3 is simply not available even though f is polynomially bigger. The condition is the guard rail, not a formality.

For T(n) = 4 T(n/2) + n^3: log_2 4 = 2, f(n) = n^3 > n^2. Check regularity: 4 (n/2)^3 = 4 n^3 / 8 = n^3 / 2 = (1/2) f(n), so c = 1/2 < 1. It holds, so Case 3 gives T(n) = Theta(n^3).

Regularity means the children's total combine work is a constant fraction (< 1) of the parent's.

The condition is automatic for plain polynomials but not for all functions — it is precisely what can break Case 3. If f is non-monotone or oscillatory, do not assume regularity holds; verify it.

Also called
smoothness conditionregularity check for Case 3規則性條件