Finite differences
A table of readings — voltage every second, population every decade, a rocket's altitude every tenth of a second — has no formula attached to it, so ordinary calculus cannot differentiate or integrate it. Finite differences fix this by replacing the derivative with a discrete cousin built purely from subtraction: take the next tabulated value, subtract the current one, and repeat on the results. Three operators do the bookkeeping — forward , backward , and central — together with a shift operator that ties them into one clean algebra. This machinery, organized into a difference table, is the entry point to the whole numerical-analysis block of MA10002: interpolation, numerical differentiation, and numerical integration all start by building exactly this table.
The forward difference operator (with and as its backward and central cousins, all tied together by the shift operator ) turns a table of function values into a difference table whose -th column is constant precisely when the underlying data is a degree- polynomial.
The core idea
Let be tabulated at equally spaced points with common spacing , and write . Three difference operators are defined directly on this table.
Forward difference:
where: the difference looks ahead, using the current row and the one below it.
Backward difference:
where: the difference looks behind, using the current row and the one above it; numerically , but the two are indexed differently.
Central difference:
where: the difference straddles symmetrically, which is why central differences give the best accuracy for a given spacing .
Shift operator: , so applying moves one row down the table. It links all three difference operators algebraically:
where: these are operator identities — means "shift two rows," i.e. , not "square ." Repeated application gives higher differences: , and in general expands as a signed sum of tabulated values (derived below). A forward difference table lays in the first column, then , , in successive columns, each entry equal to the difference of the two entries diagonally to its left. The single most useful fact about such a table: if is a polynomial of exact degree , its -th difference column is constant and every later column is zero — an instant check on tabulated data, and the reason finite differences are the natural language for interpolating polynomials through data points.
Show that the -th forward difference of a tabulated function can be written directly as a signed sum of function values, , using nothing more than the operator identity and the ordinary binomial theorem applied formally to operators.
Step 1. Start from the operator identity , where is the shift operator satisfying and, by repeated shifting, .
Step 2. Raise both sides to the -th power, treating and as if they were ordinary numbers for the purpose of algebraic expansion — this is legitimate because and the identity operator commute and combine linearly, exactly like real numbers, even though itself acts on functions:
Step 3. Apply both sides to . On the right, each term shifts steps forward, so :
Step 4. Check the formula against a case already known directly. For : , which matches the direct definition . The formula reproduces the by-hand result, confirming the binomial expansion is valid and, crucially, that can always be computed in one line from the raw table without building any intermediate difference columns.
Worked example
Reuse the table from the core idea, at giving values with spacing , and check the -th difference formula against the table built by hand.
Step 1. Build the table by direct subtraction (shown in the figure above): first differences ; second differences ; third differences ; fourth difference . Because the third-difference column is constant and the fourth vanishes, is exactly a cubic — indeed reproduces every entry.
Step 2. Compute using the Step 3 formula from the derivation, with : .
Step 3. Substitute the table values , , , : . This matches the value found by hand in Step 1 — the operator shortcut needs no intermediate columns at all.
Step 4. Since the third differences are constant at , the next one, , must also equal . Use to predict the missing entry that would appear if the table were extended: (already known), so , consistent with a genuine cubic and letting us extend the table to with confidence: , , so , matching at exactly ().
Final answer: , and the same constant-third-difference pattern predicts .
Common traps
- Confusing (uses ) with (uses ) — numerically related by , but indexed differently, so mixing them shifts every later formula by one row.
- Treating the operator relations , as ordinary arithmetic on numbers rather than as formal algebra on operators — means "shift three rows," never "cube the value."
- Assuming the constant--th-difference test proves a polynomial of exact degree whenever the differences merely look constant — real measured data with rounding error will show differences that wobble near zero rather than vanish cleanly.
- Applying , , or to unequally spaced data — all three assume a single constant spacing ; irregular spacing needs divided differences, which is outside this course's scope.
Ask the tutor: if the binomial expansion or the difference-table construction still feels shaky, ask the AI tutor to walk through building the table for a different data set or to explain how , , and relate on the very same row.
Why do we need three different difference operators instead of just one
Forward, backward, and central differences all measure the same underlying discrete rate of change but use different neighbouring rows, which matters at the edges of a table and for accuracy. Forward differences are natural near the start of a table (no earlier row exists), backward differences near the end, and central differences — being symmetric about — are the most accurate for interior points, which is why later interpolation formulae pick whichever operator fits the position in the table.
Is the shift operator E just a notational trick, or does it do real work
It does real work: writing turns "build a difference table row by row" into ordinary polynomial algebra on . Once is expanded as via the binomial theorem, you can read off as a single sum of function values without constructing any intermediate columns — exactly what the derivation above does. That algebraic shortcut is why earns its own name rather than being folded silently into .
Why does the spacing h have to be constant for these formulas to work
Every definition here — , and likewise for and — implicitly assumes each step from to covers the same distance , which is what lets you line differences up in clean columns and lets the operator algebra ( and so on) hold exactly. If the spacing varies, no longer means "shift by a fixed amount," so the whole operator toolkit breaks down; unequally spaced tables instead need divided differences, a related but separate construction.