The time function is:
We can make this substitution:
And thus:
Now the i + 1
th expansion of the time function gives a term:
And the termination index of i
, assuming T(0) = 0
:
And so the time complexity is given by:
Unfortunately, this is non-analytical (no elementary function representation).
Instead, however, we can make an extremely crude approximation which will almost certainly flabbergast every math-mo out there. Taking the terms at either end of the sum:
Assuming m
is large, the first term is much much larger than the last. So we can make a lower bound on the series:
EDIT: Apologies, the sum starts from i = 0
, including the last 2^(1.5*m)
term. BUT the time complexity bound is still the same. Also I should have used big-Omega notation not big-O…