The Causal Wiener Filter
Real-Time Filtering: You Cannot Look Into the Future
In any real-time system β a radio receiver, a noise-cancelling headphone, a Kalman-filter navigation unit β the estimate must be computed from observations up to time . We must restrict the filter support to . The Wiener-Hopf equation is not a plain convolution: it holds only on the non-negative half-line. Taking the Fourier transform of both sides leaves the right-hand side unconstrained on , so we cannot simply divide. The strategy is to pre-whiten the observation using the innovations representation of Section 9.3, solve the easy problem in innovations space, then map back.
Theorem: Causal Wiener Filter
Let be jointly WSS with satisfying Paley-Wiener, and let be the spectral factorization of the observation. The MMSE causal linear estimator has transfer function where is the causal projection operator: if , then . The causal MMSE is
Read the formula from right to left, as a three-step recipe. (1) Whiten the observation by dividing the cross-spectrum by the anti-causal factor β this effectively re-expresses in terms of the innovations . (2) Discard the anti-causal components of the result: that is what does. (3) Color the output back by dividing by the causal factor . The filter is the composition of a whitener, a causal truncator, and a recoloring stage.
Whiten the observation
Let be the innovations of . Because is white and , the causal MMSE estimate of from equals the causal MMSE estimate from .
Solve in innovations space
Because is white, the causal Wiener-Hopf equation decouples: for each , , so for and for . Equivalently, in the frequency domain, .
Compute the cross-spectrum $P_{xJ}$
Since passed through , , using .
Recolor and assemble
The total filter from to is the composition of the whitener with the innovation filter . Both are causal, so their composition is causal, and the frequency response is the product: .
Derive the MMSE
By TMMSE of the Wiener Estimator, (Parseval). Combine into a single integral to obtain the stated formula.
Causal MMSE Is Never Smaller Than Non-Causal MMSE
For any jointly WSS pair , where is the one-step prediction MMSE of (Section 9.5). The first inequality reflects the fact that the causal filter is a special case of the non-causal filter (with zero taps for ), so its MSE cannot be smaller. The second inequality is less obvious and requires the observation that the prediction problem is the causal Wiener problem for the specific target . The gap quantifies the price of real-time causality and depends on how much future information carries useful signal about .
Example: Closed-Form Causal Wiener Filter for AR(1)+Noise
Using the spectral factors from ESpectral Factorization of the AR(1)+Noise PSD, derive the causal Wiener filter for the AR(1)+noise problem in closed form.
Assemble the cross-spectrum term
, and . Dividing gives
Partial-fractions decomposition
Write the denominator product as with , and decompose into causal and anti-causal parts: The first term is causal (expands in , ); the second term is strictly anti-causal.
Apply the causal projector and recolor
. Now divide by :
Identify the recursive form
This is the transfer function of a first-order causal recursion: It has the exact form of a steady-state Kalman filter for this scalar state-space model β indeed, the steady-state Kalman filter is the causal Wiener filter. This is no coincidence; see Chapter 10.
Causal vs Non-Causal MMSE Ratio
For three AR(1) coefficients, the ratio as a function of SNR. The ratio is always at least 1; it measures how much the causal constraint costs. For weakly correlated signals ( small) the ratio stays near 1 because the past contains most of the information; for strongly correlated signals the gap opens at moderate SNRs.
Parameters
Design Flow for the Causal Wiener Filter (Rational PSDs)
Complexity: Spectral factorization is O(d^3) for degree-d rational PSDs. Projection and recoloring are O(d).For non-rational PSDs, step 2 becomes a numerical integration (of ) followed by cepstral recovery of the coefficients . This is the standard numerical route in real codes.
Non-Causal vs Causal Wiener Filter
| Aspect | Non-Causal | Causal |
|---|---|---|
| Support of | (all lags) | |
| Transfer function | ||
| Requires spectral factorization? | No | Yes |
| Requires Paley-Wiener? | No (only ) | Yes |
| MMSE | ||
| Ordering | always | equal iff is already causal |
| Real-time? | No (batch) | Yes |
| Implementation | FFT block | Recursive (IIR) or FIR truncation |
Common Mistake: Is Not the Same as the Real Part
Mistake:
Replacing the causal projector with or with a zero-phase truncation.
Correction:
The causal projector keeps the Fourier coefficients for and throws away those for . In the frequency domain this is not a linear-phase operation β it produces a complex function even when is real. The only exact way to compute is to take the inverse DTFT, multiply by the unit step, and take the DTFT back (or do partial fractions for rational ).
Stability of the Causal Wiener IIR Implementation
Because the causal Wiener filter involves , its impulse response may be IIR. The filter is guaranteed stable (all poles inside the unit circle) precisely because is minimum-phase. In finite-precision arithmetic, however, poles close to the unit circle can produce numerically unstable recursions; in DSP practice one often uses a second-order cascade implementation and monitors the pole radii. For very-high-order rational PSDs, balanced-truncation model reduction can yield a lower-order filter with negligible loss in MMSE.
- β’
Minimum-phase spectral factor guarantees mathematical stability.
- β’
Numerical stability requires care when poles approach the unit circle.
Key Takeaway
The causal Wiener filter is obtained by a three-stage procedure: whiten the observation with the inverse minimum-phase factor , project onto the causal subspace, then recolor. The resulting filter is causal, stable, and minimum-MSE over all causal linear estimators. Its recursive implementation coincides with the steady-state Kalman filter for rational spectra.
Quick Check
Which of the following is always TRUE about the causal and non-causal Wiener MMSE?
with equality iff is already causal.
because the causal filter uses less information.
whenever the signal is white.
The causal filter is a constrained version of the non-causal filter, so its MMSE is never smaller. Equality holds precisely when the causal projector in the closed-form expression is a no-op β i.e., when has no anti-causal Fourier components.