ArticleslgStudy

computer science

Miller's recurrence algorithm

Miller's recurrence algorithm is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Miller's recurrence algorithm rather than just read about it. In short: Miller's recurrence algorithm is a procedure for the backward calculation of a rapidly decreasing solution of a three-term recurrence relation developed by J. C.

Key takeaways

  • Miller's recurrence algorithm belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Miller's recurrence algorithm to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Miller's recurrence algorithm from memory before moving on to harder problems.

Reference excerpt

Miller's recurrence algorithm is a procedure for the backward calculation of a rapidly decreasing solution of a three-term recurrence relation developed by J. C. P. Miller. It was originally developed to compute tables of the modified Bessel function but also applies to Bessel functions of the first kind and has other applications such as computation of the coefficients of Chebyshev expansions of other special functions. Many families of special functions satisfy a recurrence relation that relates the values of the functions of different orders with common argument x {\displaystyle x} . The modified Bessel functions of the first kind I n ( x ) {\displaystyle I_{n}(x)} satisfy the recurrence relation

I n − 1 ( x ) = 2 n x I n ( x ) + I n + 1 ( x ) {\displaystyle I_{n-1}(x)={\frac {2n}{x}}I_{n}(x)+I_{n+1}(x)} . However, the modified Bessel functions of the second kind K n ( x ) {\displaystyle K_{n}(x)} also satisfy the same recurrence relation

K n − 1 ( x ) = 2 n x K n ( x ) + K n + 1 ( x ) {\displaystyle K_{n-1}(x)={\frac {2n}{x}}K_{n}(x)+K_{n+1}(x)} . The first solution decreases rapidly with n {\displaystyle n} . The second solution increases rapidly with n {\displaystyle n} . Miller's algorithm provides a numerically stable procedure to obtain the decreasing solution. To compute the terms of a recurrence a 0 {\displaystyle a_{0}} through a N {\displaystyle a_{N}} according to Miller's algorithm, one first chooses a value M {\displaystyle M} much larger than N {\displaystyle N} and computes a trial solution taking initial condition a M {\displaystyle a_{M}} to an arbitrary non-zero value (such as 1) and taking a M + 1 {\displaystyle a_{M+1}} and later terms to be zero. Then the recurrence relation is used to successively compute trial values for a M − 1 {\displaystyle a_{M-1}} , a M − 2 {\displaystyle a_{M-2}} down to a 0 {\displaystyle a_{0}} . Noting that a second sequence obtained from the trial sequence by multiplication by a constant normalizing factor will still satisfy the same recurrence relation, one can then apply a separate normalizing relationship to determine the normalizing factor that yields the actual solution. In the example of the modified Bessel functions, a suitable normalizing relation is a summation involving the even terms of the recurrence:

I 0 ( x ) + 2 ∑ m = 1 ∞ ( − 1 ) m I 2 m ( x ) = 1 {\displaystyle I_{0}(x)+2\sum _{m=1}^{\infty }(-1)^{m}I_{2m}(x)=1}

… excerpt ends here. Continue reading the full article.

Worked examples

Example 1 — a first encounter with Miller's recurrence algorithm

Start with the simplest possible case. Write down what Miller's recurrence algorithm claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Miller's recurrence algorithm before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Miller's recurrence algorithm ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Miller's recurrence algorithm

In research
Miller's recurrence algorithm appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Miller's recurrence algorithm in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Miller's recurrence algorithm is common in secondary-school and first-year university syllabi. It links to neighbouring topics Algorithms, Numerical analysis, so understanding it makes those chapters shorter.
In everyday life
Look for Miller's recurrence algorithm outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Miller's recurrence algorithm in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Miller's recurrence algorithm means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Miller's recurrence algorithm out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Miller's recurrence algorithm in simple terms?

Miller's recurrence algorithm is a procedure for the backward calculation of a rapidly decreasing solution of a three-term recurrence relation developed by J. C.

Why does Miller's recurrence algorithm matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Miller's recurrence algorithm?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Miller's recurrence algorithm.

Tags

  • Algorithms
  • Numerical analysis

Keep exploring