Quant Memo
Core

Does This Recursion Converge

A quick test for whether a sequence defined by a_n+1 = f(a_n) settles down to a limit or spirals away, and how to find that limit without simulating the whole sequence.

Prerequisites: Sequences and Series Convergence, Mathematical Induction

An interviewer defines a1=1a_1 = 1 and an+1=12(an+2an)a_{n+1} = \tfrac{1}{2}\left(a_n + \tfrac{2}{a_n}\right), then asks: does this converge, and if so, to what? Simulating the sequence on paper for a few terms is a fine start, but the fast, reliable method is to assume it converges, solve for the limit algebraically, and separately check the assumption is valid.

Step 1: assume a limit exists and solve for it

If the sequence an+1=f(an)a_{n+1} = f(a_n) converges to some value LL, then as nn grows both ana_n and an+1a_{n+1} approach the same number LL. Taking the limit of both sides of the recurrence gives L=f(L)L = f(L) — the limit, if it exists, must be a fixed point of ff. For f(x)=12(x+2/x)f(x) = \tfrac{1}{2}(x + 2/x), solving L=12(L+2/L)L = \tfrac{1}{2}(L + 2/L) gives 2L=L+2/L2L = L + 2/L, so L=2/LL = 2/L, so L2=2L^2 = 2, so L=2L = \sqrt{2} (taking the positive root, since every term of the sequence is positive). In plain English: whatever the sequence settles on, that value has to reproduce itself under the recursion — which is a much easier equation to solve than tracking the sequence term by term.

Step 2: check convergence actually happens

Finding a candidate limit doesn't prove the sequence gets there — you need to verify the sequence is well-behaved near LL. Two checks cover almost every interview case:

  • Monotone + bounded. If you can show the sequence is always decreasing (or always increasing) and stays bounded below (or above), it must converge by the monotone convergence theorem — sequences that move in one direction and can't escape a boundary have nowhere to go but their limit.
  • Contraction near the fixed point. If f(L)<1|f'(L)| < 1, nearby points get pulled closer to LL at each step, so the iteration is locally stable and converges once it's close enough. If f(L)>1|f'(L)| > 1, nearby points get pushed away — the fixed point is real but unstable, and the sequence would only reach it from an exact starting value, never approximately.

Worked example: verifying 2\sqrt{2}

For f(x)=12(x+2/x)f(x) = \tfrac12(x + 2/x), compute f(x)=12(12/x2)f'(x) = \tfrac12(1 - 2/x^2), so f(2)=12(11)=0f'(\sqrt{2}) = \tfrac12(1 - 1) = 0. Since f(2)=0<1|f'(\sqrt2)| = 0 < 1, the fixed point is strongly attracting — this is Newton's method for 2\sqrt2, famous for doubling the number of correct digits every step. Tracing the numbers confirms it: a1=1a_1 = 1, a2=12(1+2)=1.5a_2 = \tfrac12(1+2) = 1.5, a3=12(1.5+1.333)=1.416a_3 = \tfrac12(1.5 + 1.333\ldots) = 1.41\overline{6}, a4=12(1.416+1.41176)1.41421568a_4 = \tfrac12(1.41\overline6 + 1.41176\ldots) \approx 1.41421\overline{568} — already matching 21.41421356\sqrt2 \approx 1.41421356 to four decimal places by the fourth term.

Convergence explorer
true meansamples →
after n = 200estimate -0.025error 0.025std error 0.071

Drag the sample size and watch how a running sequence value settles onto its limit, with the gap shrinking inside a shaded envelope — exactly the "settling down" behavior you're checking for algebraically above, just made visible instead of computed by hand.

What this means in practice

This two-step method — solve L=f(L)L = f(L), then check monotonicity or the derivative at LL — turns "does this recursive sequence converge" from a simulation exercise into an algebra-plus-calculus check you can do at a whiteboard. It's also exactly the reasoning behind fixed-point iteration schemes used to solve implied-volatility equations and other places where a model input has to be backed out from an equation that can't be inverted directly: you're relying on the same contraction argument to know the iteration will actually land somewhere.

To test whether an+1=f(an)a_{n+1} = f(a_n) converges: solve L=f(L)L = f(L) for the candidate limit, then confirm convergence either by showing the sequence is monotone and bounded, or by checking f(L)<1|f'(L)| < 1 so nearby points contract toward LL.

Solving L=f(L)L = f(L) only finds candidate limits — it does not prove the sequence reaches one. A recursion can have a valid fixed point that the sequence never approaches (if f(L)>1|f'(L)| > 1) or can oscillate between two values forever without settling at all. Always check convergence separately from finding the fixed point.

Related concepts

Practice in interviews

Further reading

  • Rudin, Principles of Mathematical Analysis, ch. 3
ShareTwitterLinkedIn