When an algorithm contains a recursive call to itself, its running time can often be described by a recurrence. A recurrence is an equation or inequality that describes a function in terms of its value on smaller inputs. For example, we know that the worst-case running time T (n) of the MERGE-SORT procedure could be described by the recurrence