Backward stability and perturbation bounds
Interpret residuals as data perturbations and turn backward accuracy into qualified forward-error estimates.
On this page
The question for today
What you’ll understand
- Distinguish residual, forward error, and a specified backward error.
- Apply a perturbation bound only when its denominator remains positive.
- Recognize why backward stability cannot repair ill-conditioned data.
A numerical answer need not solve the original equations exactly to be useful. It may solve equations whose input data differ by only a few rounding units. Backward error measures that difference, while forward error measures the difference from the desired solution. These are complementary views. Their relationship is controlled by conditioning, and the model of allowed data changes must be stated before a residual can be interpreted as a backward-error certificate.
Residual and error live in different spaces
For Ax=b and a candidate solution xhat, define the residual as b−Axhat. The forward error is xhat−x, where x is the unknown exact solution. For nonsingular A, the error equals minus A inverse times the residual. Consequently a small residual can coexist with a large solution error when the inverse amplifies its direction strongly. Residuals are attractive because they can be computed without knowing x, but evaluating them in the same working precision as the solve can hide cancellation or rounding. Higher-precision residual accumulation can make a diagnostic more trustworthy.
If only b may change while A stays fixed, xhat exactly solves Axhat=b+δb for the unique perturbation δb=−r. Its relative backward error is therefore the residual norm divided by the norm of b, assuming b is nonzero. Allowing perturbations to A as well gives a different, often smaller, backward error. Componentwise restrictions produce another measure again. A statement that a solution has tiny backward error is incomplete unless it says which inputs may change and how those changes are scaled.
Perturbing the matrix requires a smallness condition
Suppose the perturbed system is (A+δA)(x+δx)=b+δb. Rearranging and bounding the inverse of I+A inverse δA produces a finite perturbation estimate. The essential condition is that κ(A) times the relative matrix perturbation is less than one. A Neumann-series argument then guarantees that A+δA remains invertible and bounds the inverse correction. The denominator is meaningful: when the perturbation can approach a singular matrix, a uniform small forward-error guarantee can disappear.
Let εA be the matrix perturbation norm divided by the matrix norm, and εb the right-hand-side perturbation norm divided by the right-hand-side norm. The displayed bound uses the inequality between b, A, and x, so it may be conservative for a particular problem. It is not legitimate to use the formula after its denominator becomes zero or negative. Nor should a first-order slogan about condition times backward error replace the finite bound when that product is no longer small. Sensitivity estimates have an operating regime just as iterative methods do.
Algorithm guarantees and accuracy checks answer separate questions
An algorithm is normwise backward stable when its result is the exact solution of an allowed nearby problem with perturbations bounded by a modest dimension-dependent multiple of unit roundoff, under its stated assumptions. That guarantee is about the algorithm. A problem can still be ill conditioned, producing substantial forward uncertainty from that tiny perturbation. Conversely, a well-conditioned problem can be solved inaccurately by an unstable algorithm. Assessing both properties avoids blaming intrinsic data sensitivity on a reliable factorization or excusing a poor computation because the equations are difficult.
Iterative refinement combines these ideas operationally. Compute a residual, approximately solve for a correction using existing factors, and update the candidate. A more accurate residual can improve the final answer even when the factors were obtained in lower precision. Success depends on the correction quality, conditioning, scaling, and arithmetic; it is not automatic for arbitrary factors. Report a scaled residual alongside a suitable condition estimate and, when possible, an error bound. Preserve structure in the backward model if the original physical or statistical problem requires it.
Work it through
A tiny residual with a large solution error
Use A=diag(1,0.001), b=(1,0), and candidate xhat=(1,1). Evaluate the two-norm right-hand-side backward error and forward error.
The exact solution is x=(1,0). Multiplying the candidate gives Axhat=(1,0.001), so residual r=(0,−0.001).
The right-hand-side-only relative backward error is ‖r‖₂/‖b‖₂=0.001. The candidate exactly solves the system with perturbed right-hand side (1,0.001).
The forward error is (0,1), whose relative norm is 1. Since κ₂(A)=1000, the condition bound gives 1000·0.001=1, attained in this example.
A 0.1% data perturbation can create 100% relative solution error here. The residual correctly certifies a nearby problem without certifying a nearby solution.
The living notebook
Explore the model
Interactive lab · matrix
Inspect the factor that links residual to error
Reset, set a=0.25 and b=0, and predict singular values 1 and 0.25, giving κ₂=4. For a fresh comparison, Reset, set a=1 and b=0, predicting κ₂=1. This geometry illustrates possible inverse amplification; it does not introduce rounding errors, accept a residual, or run iterative refinement.
- Area scale · det A
- 1.4
- Singular values · σmax, σmin
- 1.597, 0.876
- Condition number · κ₂(A)
- 1.823
The selected matrix is A = [[a,b],[0,1]]. Playback interpolates geometry between the identity and A; readouts always describe A. Its determinant is a and its singular values come from AᵀA. Positive a makes every supported matrix invertible. This two-dimensional family is not a general eigensolver or a learned network. Parameter changes pause playback and recompute the model at the current elapsed time. Reset restores both parameters and returns time to zero. Playback starts paused. Adjust either parameter, then choose Play or Step.
Look forThe same backward accuracy supports different forward-error bounds when the inverse geometry changes.
Pause & reason
Check your understanding
Your turn
Try it yourself
In the infinity-norm, use A=diag(2,1), b=(2,1), and xhat=(1.01,0.98). Compute ηb, relative forward error, and the condition bound.
Take a moment to make a prediction or work it out on paper. Open a hint when you need one.
Give me a hint
The exact solution is (1,1). Infinity-norms are maximum absolute entries, while the induced matrix infinity-norm uses row sums.
Compare with the solution
The residual is (−0.02,0.02), so ηb=0.02/2=0.01. The forward error is (0.01,−0.02), with relative infinity-norm 0.02. Matrix norms are ‖A‖∞=2 and ‖A⁻¹‖∞=1, giving κ∞=2. Thus κ∞ηb=0.02, again matching the actual error. These values use a right-hand-side-only backward model, not a joint matrix-and-vector minimization.
Keep the idea
Take it with you
- A residual becomes a backward error only after declaring allowed data perturbations.
- Finite matrix-perturbation bounds require a positive denominator.
- Backward stability and good conditioning together support forward accuracy.
Read further
Original sources and deeper explanations to follow at your own pace.
Optional progress, saved in this browser when available. Revisit any lesson at any time.
Lesson not marked complete.