The Picard Condition

Before you pour weeks into reconstructing a hidden image, a subsurface structure, or a deblurred photograph, wouldn't you love a quick test that says "this data can be sensibly inverted" — or "give up, there is no stable answer hiding in here"? That is exactly what the discrete Picard condition gives you: a single, honest go/no-go diagnostic for an ill-posed inverse problem, run before you waste any effort.

The trick is to look at the data through the eyes of the SVD. The reconstruction is \hat m = \sum_i \dfrac{u_i^{\mathsf T} d}{\sigma_i}\, v_i, a sum of terms, each one a data coefficient |u_i^{\mathsf T} d| divided by a singular value \sigma_i. Since the singular values march downhill toward zero, the only way each ratio stays small — the only way the sum converges to something sensible — is if the data coefficients decay faster than the singular values. That is the Picard condition, in one sentence.

When it holds, every ratio |u_i^{\mathsf T} d|/\sigma_i stays under control and the reconstruction is meaningful. When it fails — as noise always eventually forces it to — the ratios blow up and the answer is meaningless static.

The signature of noise

Why should a real signal satisfy Picard while noise wrecks it? Because the two live in completely different parts of the spectrum. Real, physical signals are smooth: their content sits in the first few singular directions, so the high-index coefficients |u_i^{\mathsf T} d| fall away quickly — often even faster than the singular values. Noise has no such courtesy. It is roughly white: it spreads about equally across all the singular directions, so the noise contribution |u_i^{\mathsf T} e| does not decay at all — it flattens out at a noise floor while \sigma_i keeps plunging.

The result is a tug of war with a clear winner. For small i the true signal dominates the coefficient and everything is fine. Past the index where the flat noise floor overtakes the shrinking singular values, the ratio |u_i^{\mathsf T} d|/\sigma_i turns upward and diverges. That crossover index is precious: it is exactly where to stop trusting the data — it tells you how many singular components are worth keeping, and so sets the truncation level and the strength of regularization.

Worked example: reading the crossover on a log scale

Here is the practical recipe. Compute the SVD, then plot two sequences together against the singular index i, always on a logarithmic y-axis (the numbers span many orders of magnitude): the singular values \sigma_i, and the data coefficients |u_i^{\mathsf T} d|. Take a concrete toy spectrum where \sigma_i = e^{-i} and the noise floor sits at 10^{-3}:

\begin{array}{c|c|c|c} i & \sigma_i = e^{-i} & |u_i^{\mathsf T} d| & \text{ratio} \\ \hline 1 & 0.368 & 0.368 & 1.0 \\ 3 & 0.050 & 0.050 & 1.0 \\ 5 & 0.0067 & 0.0067 & 1.0 \\ 7 & 0.0009 & 0.001\ (\text{floor}) & 1.1 \\ 9 & 0.00012 & 0.001\ (\text{floor}) & 8.1 \end{array}

Read the table left to right. While the data coefficient tracks the singular value (rows i = 1 to 5), the ratio holds steady at about 1 — Picard is satisfied and those components are gold. Around i = 7 the coefficient stops falling and pins to the noise floor of 10^{-3}, while \sigma_i keeps shrinking. From there the ratio climbs — 1.1, then 8.1, and it will keep exploding. The crossover near i \approx 7 is your cutoff: keep the first six or seven components, throw the rest away.

Worked example: what "levelling off" really means

The single most important visual cue on a Picard plot is the moment the data coefficients level off. Think about what is happening physically. Each coefficient u_i^{\mathsf T} d = u_i^{\mathsf T}(\text{signal}) + u_i^{\mathsf T}(\text{noise}) is a signal part plus a noise part. Early on, the signal part is much bigger, so the coefficient rides down with the true signal. Later, the signal part has decayed below the noise part, so the coefficient can fall no further — it flattens at |u_i^{\mathsf T} e| \approx the noise level.

Beyond that flattening point, dividing by an ever-tinier \sigma_i does nothing but amplify noise. So the flattening index is not a nuisance — it is a gift. It draws a bright line on the plot: everything to the left is recoverable signal, everything to the right is noise wearing a signal's clothes. That line is precisely where to truncate. Move the noise slider in the figure below and watch the flattening point — and hence the safe cutoff — slide left as the noise floor rises.

The Picard plot

Three quantities versus singular index: the singular values \sigma_i (decaying), the data coefficients |u_i^{\mathsf T} d| (decaying until they hit the noise floor), and their ratio. With no noise the ratio stays flat — Picard satisfied. Add noise and the coefficients flatten; past the crossover the ratio shoots up, marking the useful components from the hopeless ones.

It is tempting to hope that with careful enough measurement your data might satisfy Picard all the way out. It won't. Real noisy data always eventually violates the Picard condition. No matter how clean your instrument, beyond some index the coefficients |u_i^{\mathsf T} d| flatten out at the noise level and stop decaying, while the singular values keep marching to zero. From that point on, every extra term you include divides a fixed lump of noise by a smaller and smaller \sigma_i.

So blindly summing all the SVD components — which is exactly what the plain pseudoinverse does — is not "using all your information"; it is a guaranteed noise-dominated disaster. The Picard plot is not a warning you might ignore; it shows you precisely where the useful data ends and where you must stop.

The condition is named after the French mathematician Émile Picard, whose early-1900s work on integral equations asked, in the continuous world of infinitely many singular values, when a Fredholm equation of the first kind actually has a square-integrable solution. His answer — the generalized Fourier coefficients of the data must decay fast enough relative to the singular values — was a piece of pure functional analysis, about as far from an engineering worksheet as you could imagine.

A century later that same abstract criterion, discretized, has become one of the most practical tools in the inverse-problems toolbox. Practitioners routinely compute the SVD and glance at the "Picard plot" the way a mechanic glances at a dashboard gauge: is the ratio flat (good), and where does it turn up (there is my cutoff)? It is a lovely example of deep theory quietly graduating into an everyday, visual go/no-go check.