Restricted isometry constants and restricted orthogonality constants (Definition 1.1)
DefinitionCandesTao_Decoding_RestrictedIsometryLet be a real matrix with columns , and let be the linear span of these columns (the paper's Hilbert space ). For an index set and real coefficients supported on , .
Definition 1.1 (restricted isometry constants). For an integer , the -restricted isometry constant is the smallest quantity such that
for all subsets of cardinality at most and all real coefficients (equation (1.7)). Similarly, the -restricted orthogonality constant is the smallest quantity such that
holds for all disjoint sets of cardinality and (equation (1.8)). The paper abbreviates to .
These numbers measure how close the columns of are to an orthonormal system when only sparse linear combinations, involving at most (resp. and ) columns, are considered. They are non-decreasing in and , and every hypothesis of the mission's theorems is expressed through them. The file also names the -th column of and the span of the columns.
Formalization Note Each constant is the infimum of the set of nonnegative (resp. ) that satisfy the defining inequalities for every admissible (and ) and every coefficient vector. That set is nonempty, closed and bounded below, so the infimum is attained and is the paper's "smallest quantity". On the paper's domain ( for , and with for ) the smallest such quantity is automatically nonnegative, so the clause changes nothing there and only fixes a harmless value in degenerate cases (for instance ). The definitions are total in and ; the theorems of the mission state the paper's domain conditions as explicit hypotheses.
import Mathlib.LinearAlgebra.Span.Defs
import Definitions.Def_CandesTao_Decoding_Norms
namespace CandesTao.Decoding
/-- The `j`-th column `v_j ∈ ℝ^p` of the `p × m` matrix `F`. -/
def column {p m : ℕ} (F : Matrix (Fin p) (Fin m) ℝ) (j : Fin m) : Fin p → ℝ :=
fun i => F i j
/-- The Hilbert space `H` spanned by the columns `v_j` of `F`. -/
def columnSpan {p m : ℕ} (F : Matrix (Fin p) (Fin m) ℝ) : Submodule ℝ (Fin p → ℝ) :=
Submodule.span ℝ (Set.range (column F))
/-- The `S`-restricted isometry constant `δ_S` of `F` (Definition 1.1, (1.7)): the least
`δ ≥ 0` such that `(1 - δ) ‖c‖² ≤ ‖F c‖² ≤ (1 + δ) ‖c‖²` for every real vector `c`
supported on a set of at most `S` columns. -/
noncomputable def restrictedIsometryConst {p m : ℕ} (F : Matrix (Fin p) (Fin m) ℝ) (S : ℕ) :
ℝ :=
sInf {δ : ℝ | 0 ≤ δ ∧ ∀ T : Finset (Fin m), T.card ≤ S → ∀ c : Fin m → ℝ, SupportedOn c T →
(1 - δ) * l2Norm c ^ 2 ≤ l2Norm (F.mulVec c) ^ 2 ∧
l2Norm (F.mulVec c) ^ 2 ≤ (1 + δ) * l2Norm c ^ 2}
/-- The `S, S'`-restricted orthogonality constant `θ_{S,S'}` of `F` (Definition 1.1, (1.8)):
the least `θ ≥ 0` such that `|⟨F c, F c'⟩| ≤ θ ‖c‖ ‖c'‖` for all real vectors `c`, `c'`
supported on disjoint sets of at most `S` and at most `S'` columns respectively. -/
noncomputable def restrictedOrthogonalityConst {p m : ℕ} (F : Matrix (Fin p) (Fin m) ℝ)
(S S' : ℕ) : ℝ :=
sInf {θ : ℝ | 0 ≤ θ ∧ ∀ T T' : Finset (Fin m), Disjoint T T' → T.card ≤ S → T'.card ≤ S' →
∀ c c' : Fin m → ℝ, SupportedOn c T → SupportedOn c' T' →
|dotProduct (F.mulVec c) (F.mulVec c')| ≤ θ * l2Norm c * l2Norm c'}
end CandesTao.DecodingRead-back
What the Lean code literally says, in plain math · claude-fable-5-1
column — Let and be natural numbers (implicit parameters; either may be ), let be a real matrix with rows and columns, rows indexed by and columns by , and let be a column index. Then is the vector in (a function ) whose -th entry is the entry of :
That is, it is the -th column of regarded as a vector. No hypothesis is placed on . If the result is the unique (empty) vector of ; if there is no admissible index , so the definition has no instances at all.
columnSpan — Let be natural numbers (implicit; either may be ) and a real matrix indexed as above. Then is the -linear subspace of (with the usual entrywise addition and scalar multiplication) spanned by the columns of :
Here the span is the smallest linear subspace containing the listed vectors, equivalently the set of all real linear combinations with ; the result is a subspace object (a submodule of over ), not merely a set of vectors. When the spanning set is empty and the result is the zero subspace ; when the ambient space is itself .
restrictedIsometryConst — Let be natural numbers (implicit; either may be ), a real matrix, and a natural number (possibly ; possibly larger than ). Notation: for write (the earlier file's norm; the radicand is nonnegative, so exactly); for write for the matrix–vector product ; and say that is supported on when for every (the earlier file's "SupportedOn"; may also vanish at some or all indices of , and is supported on every , including ). Define
Then
Both inequalities are non-strict; ranges over all subsets of of cardinality at most (not exactly ), including ; and has no upper bound, so is allowed (for such the first inequality holds automatically, its left side being ). The set is bounded below by and is upward closed: if and then , because . About the infimum: Mathlib's infimum of a set of reals returns whenever the set is empty or not bounded below. is always bounded below, so the value is the genuine greatest lower bound of when this set is nonempty, and by convention when it is empty; in fact for any real matrix every sufficiently large (e.g. any ) belongs to , so the set is nonempty. Nothing in the definition requires the infimum to be attained, nor requires the value to be . Degenerate cases: if the only admissible is , so must be and both inequalities read , giving and value ; the same happens when ; if then is the empty vector and for every , so the first inequality forces as soon as and , and the value is then exactly .
restrictedOrthogonalityConst — Let be natural numbers (implicit; either may be ), a real matrix, and natural numbers (each possibly ; no relation among , and is required). With , and "supported on" as in the previous paragraph, and with the standard dot product on , define
Then
The right-hand side of the constraint uses the norms themselves, not their squares; the inequality is non-strict; is the ordinary absolute value on ; the pair is ordered, with the bound attached to and to ; and may have fewer than , resp. , elements, including being empty; and has no upper bound. The set is bounded below by and upward closed (if satisfies the constraint so does every , since ). About the infimum: Mathlib's infimum of a set of reals returns whenever the set is empty or not bounded below; is always bounded below, so the value is its genuine greatest lower bound when it is nonempty and by convention when it is empty; in fact for any real matrix every satisfies the constraint (by the Cauchy–Schwarz inequality), so the set is nonempty. Whenever or both sides of the constraint are , so only pairs of nonzero vectors with disjoint supports of the stated sizes actually restrict . Degenerate cases: if or , one of must be , forcing or , so and the value is ; the same holds when (no nonzero vectors exist), when (two disjoint subsets of a one-element set cannot both be nonempty), and when (every dot product is an empty sum, i.e. ).
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.