Theorem 1.5: decoding by linear programming recovers the input from sparsely corrupted measurements
ProvedCandesTao.Decoding.decoding_by_lpLet be a real coding matrix with and full rank (the paper's standing assumption of Section 1.1), and let be a real matrix such that . Let obey the hypothesis of Theorem 1.4 for ,
Set , where is arbitrary and is a real vector supported on a set of size at most . Then is the unique minimizer of
This is the decoding statement of the paper's title: with an annihilator of the code (any matrix with , for instance the orthogonal projection onto the cokernel of ) obeying the restricted isometry condition, the plaintext is recovered exactly from the corrupted ciphertext by solving one linear program, whatever the positions and values of the at most errors.
Formalization Note Full rank of the matrix with is formalized as injectivity of ; the paper states and full rank once, in Section 1.1, and uses full rank to pass from the recovered error back to . "Unique minimizer" means that every has strictly larger residual norm. The hypothesis is the domain on which Definition 1.1 defines .
import Definitions.Def_CandesTao_Decoding_RestrictedIsometry import Definitions.Def_CandesTao_Decoding_L1Minimization
namespace CandesTao.Decoding
theorem decoding_by_lp {p m n : ℕ} (hmn : n < m)
(A : Matrix (Fin m) (Fin n) ℝ) (hA : Function.Injective A.mulVec)
(F : Matrix (Fin p) (Fin m) ℝ) (hFA : F * A = 0) (S : ℕ)
(hS : 1 ≤ S) (hSm : 3 * S ≤ m)
(h : restrictedIsometryConst F S + restrictedOrthogonalityConst F S S +
restrictedOrthogonalityConst F S (2 * S) < 1)
(f : Fin n → ℝ) (e : Fin m → ℝ) (T : Finset (Fin m)) (hT : T.card ≤ S)
(he : SupportedOn e T) :
IsUniqueResidualL1Minimizer A (A.mulVec f + e) f := by sorry
end CandesTao.DecodingRead-back
What the Lean code literally says, in plain math · claude-fable-5-1
Read-back of decoding_by_lp
Conventions. denotes real vectors indexed by the -element index set ; a matrix acts by ordinary matrix–vector multiplication. Two norms from the bundle are used, written out:
Because a sum of squares is non-negative, exactly, and no junk value of the square root arises. A vector is supported on a set of indices when for every index ; that is, the support of is contained in (it need not equal ; is supported on every , including ).
Universally quantified data and hypotheses. The statement quantifies over all of the following:
- natural numbers , , (each may a priori be ), with ;
- a real matrix such that is an injective map (i.e. implies ; equivalently has trivial kernel);
- a real matrix such that the matrix product is the zero matrix;
- a natural number with and (so );
- the inequality
where and are the bundle's own constants, unfolded below;
- a vector ;
- a vector ;
- a finite set with (this is a variable of the theorem, distinct from the bound variables of the same name inside the definitions below);
- the assumption that is supported on , i.e. for all . Together with this says has at most non-zero coordinates; and are permitted.
The two constants, unfolded. For a natural number ,
For natural numbers ,
where is the ordinary dot product on . In both definitions the index sets range over all subsets of size at most (resp. ), including the empty set, and range over all vectors supported there, not only unit vectors. In the two sets must be disjoint, but either may be empty; for only qualifies and the inequalities read .
About the infima. The infimum is Mathlib's infimum on , which returns the junk value when the set is empty or when it is not bounded below. Neither happens here: both sets lie in , so they are bounded below, and both are non-empty (every lies in the first set, because for the left side of the lower inequality is ; every lies in the second by Cauchy–Schwarz). Each set is also closed (its defining conditions are non-strict inequalities, continuous in resp. ), so the infimum is attained. Hence and , and the hypothesis forces each of the three constants to be .
Conclusion. Put . The theorem asserts that is a unique residual -minimiser for in the bundle's sense, which unfolds to
Since identically, this is the same as
with a strict inequality. The comparison is over all , with no constraint on . Nothing is asserted about itself, and nothing is asserted about how might be found.
Edge cases the quantifiers include.
- is allowed. Then has no rows, is the empty vector, and for all , and holds automatically. Consequently , whereas (since and supply a non-zero with a single non-zero coordinate) the lower inequality forces , so and the hypothesis is false. The theorem therefore asserts nothing when .
- is allowed (only is required). Then has a single element, is that element, no exists, and the conclusion holds vacuously; injectivity of and are likewise automatic.
- and always. Beyond no relation between and is assumed: nothing is assumed about the rank of , about the size of , or about relative to .
- The hypothesis is not referred to by any other hypothesis or by the conclusion; it stands as an additional assumption.
- The accompanying definitions of a matrix column and of the column span do not occur anywhere in the statement.
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.