On this page
The operator norm of a sum of independent random matrices
Imports 7 library modules and 24 external
- GaussianAnalysis.matrix.euclidean
- GaussianAnalysis.matrix.real_spectral
- GaussianAnalysis.matrix.opnorm
- GaussianAnalysis.matrix.nets
- GaussianAnalysis.probability.lindeberg
- GaussianAnalysis.probability.symmetrization
- GaussianAnalysis.probability.subgaussian
External: HB.structures, mathcomp.classical.all_ssreflect_compat, mathcomp.algebra.algebraic_hierarchy.ssralg, mathcomp.algebra.numeric_hierarchy.ssrnum, mathcomp.algebra.matrix, mathcomp.algebra.sesquilinear, mathcomp.algebra.arithmetic_tactic, mathcomp.algebra.ring_tactic, mathcomp.algebra.field_tactic, mathcomp.classical.boolp, mathcomp.classical.classical_sets, mathcomp.classical.functions, mathcomp.reals.reals, mathcomp.analysis.ereal, mathcomp.analysis.topology_theory.topology, mathcomp.analysis.normedtype_theory.normedtype, mathcomp.analysis.sequences, mathcomp.analysis.exp, mathcomp.analysis.measure_theory.measure, mathcomp.analysis.lebesgue_measure, mathcomp.analysis.measurable_realfun, mathcomp.analysis.numfun, mathcomp.analysis.lebesgue_integral_theory.lebesgue_integral, mathcomp.analysis.probability_theory.probability
Required by 1 files of the paper proofs
A bound by nets and the moment generating function of sums of independent subexponential variables, used for Lemma 4.3 of Koehler and Sohn (arXiv 2608.27372, lines 4604-4615) in place of the matrix Bernstein inequality that the paper cites; it gives the bound without the logarithmic factor.
Main results:
- Quadratic forms, mxdot_psd_le: for S symmetric positive semidefinite and any square A, |<A, S>| <= opnorm (sym_part A) tr S, where <., .> is the Frobenius product mxdot; sym_part_form, mxdot_sym_part: v^T A v and <A, S> only see the symmetric part.
- Nets, unit_ball_quarter_net: the unit ball of 'cV[R]_n has a 1/4-net of at most (18 e)^n of its points; opnorm_sym_part_net: for such a net V, opnorm (sym_part A) <= 2 max_{v in V} |v^T A v|.
- Maximal inequality, subexponential_max_sum: for x of law tuple_prod mu n, a finite family of functions g_v, each centered and subexponential with constant L under every mu i, and |a_i| <= 1,
E max_v |sum_i a_i g_v(x_i)| <= 8 L (sqrt (n Lam) + Lam)
with Lam = 1 + ln (1 + 2 N), N the size of the family. Proof: the moment generating function of each sum (subexponential_sum_mgf of subgaussian.v), expR_bigmax_le (exp (l max_v |S_v|) is at most 1 + sum_v (exp (l S_v) + exp (- l S_v))), expectation_le_ln_mgf (if E exp (l Z) <= B with ln B >= 1, then E Z <= ln B / l, from e^y >= 1 + y), and a choice of l.
- Random matrices, opnorm_sum_subexponential: for x of law tuple_prod mu n and Y : T -> 'M[R]_m whose quadratic forms v^T Y v (|v| <= 1) are centered and subexponential with constant L under every mu k, there are measurable functions N a such that, for all weights with |a_k| <= 1, opnorm (sym_part (sum_k a_k Y(x_k))) <= N a x and
E N a <= 96 L (sqrt (n (m + 1)) + m + 1).
N a x is 2 max_{v in V} |v^T (sum_k a_k Y(x_k)) v| on the net V; net_log_le bounds the logarithm of the size of the net by 6 (m + 1).
sym_ | (A + A^T) / 2, the symmetric part of a square matrix |
Main results
| Results | Statement |
|---|---|
For S symmetric positive semidefinite and any square A, |<A, S>| <= opnorm (sym_part A) tr S, where sym_part A = (A + A^T) / 2 and <., .> is the Frobenius product. The unit ball of 'cV[R]_n has a 1/4-net V of at most (18 e)^n of its points, and opnorm (sym_part A) <= 2 max_{v in V} |v^T A v|. | |
Maximal inequality: for x of law tuple_prod mu n, a family of N functions g_v, each centered and subexponential with constant L under every mu i, and |a_i| <= 1, E max_v |sum_i a_i g_v(x_i)| <= 8 L (sqrt (n Lam) + Lam) with Lam = 1 + ln (1 + 2 N). Proved with the moment generating function of each sum and e^y >= 1 + y. | |
For x of law tuple_prod mu n and Y : T -> 'M[R]_m whose quadratic forms v^T Y v (|v| <= 1) are centered and subexponential with constant L under every mu k, there are measurable N a with opnorm (sym_part (sum_k a_k Y(x_k))) <= N a x and E N a <= 96 L (sqrt (n (m + 1)) + m + 1) for all weights with |a_k| <= 1. Unlike the matrix Bernstein inequality, the bound has no logarithmic factor. |
Declarations14 exported
Context {R : realType}.
forall {R : realType} [n : nat], 'M_n -> 'M_nDefinition sym_part n (A : 'M[R]_n) : 'M[R]_n := 2^-1 *: (A + A^T).
The symmetric part (A + A^T) / 2 of a square matrix.
For S symmetric positive semidefinite and any square A, |<A, S>| <= opnorm (sym_part A) tr S, where sym_part A = (A + A^T) / 2 and <., .> is the Frobenius product. The unit ball of 'cV[R]_n has a 1/4-net V of at most (18 e)^n of its points, and opnorm (sym_part A) <= 2 max_{v in V} |v^T A v|.
Used by 6 declarations in 1 file
forall {R : realType} [n : nat] (A : 'M_n), sym_part A \is symmetricmx
Statement as written in the source
Lemma sym_part_sym n (A : 'M[R]_n) : sym_part A \is symmetricmx.
Used by 1 declaration in 1 file
- this file: opnorm_sym_part_net
Statement as written in the source
Used by 1 declaration in 1 file
- this file: sym_part_form
forall {R : realType} [n : nat] (A : 'M_n) (v : 'cV_n), mxdot v (sym_part A *m v) = mxdot v (A *m v)
Statement as written in the source
Used by 1 declaration in 1 file
- this file: opnorm_sym_part_net
forall {R : realType} [n : nat] (A : 'M_n) [S : 'M_n], S \is symmetricmx -> mxdot (sym_part A) S = mxdot A S
Statement as written in the source
Used by 1 declaration in 1 file
- this file: mxdot_psd_le
forall {R : realType} [n : nat] (A : 'M_n) [S0 : 'M_n], S0 \is symmetricmx -> (forall x : 'cV_n, 0 <= mxdot x (S0 *m x)) -> `|mxdot A S0| <= opnorm (sym_part A) * \tr S0
The Frobenius product with a positive semidefinite matrix.
Stated in the README together with sym_part.
forall {R : realType} [n : nat] (A : 'M_n) [V : seq 'cV_n], is_net (unit_ball (n:=n)) V 4^-1 -> (forall v : 'cV[R]_n, v \in V -> frobenius v <= 1) -> opnorm (sym_part A) <= 2 * \big[maxr/0]_(v <- V) `|mxdot v (A *m v)|
On a net of the unit ball, the quadratic forms bound the operator norm of the symmetric part.
Stated in the README together with sym_part.
Statement as written in the source
Used by 1 declaration in 1 file
- this file: opnorm_sum_subexponential
forall {R : realType} (n : nat), exists V : seq 'cV_n, [/\ is_net (unit_ball (n:=n)) V 4^-1, forall v : 'cV[R]_n, v \in V -> frobenius v <= 1 & ((size V)%:R : R) <= ((18 * expR 1) ^+ n : R)]
Stated in the README together with sym_part.
Statement as written in the source
Used by 1 declaration in 1 file
- this file: opnorm_sum_subexponential
Context d (T : measurableType d) (R : realType). Local Open Scope ereal_scope.
forall [d : measure_display] [T : measurableType d] [R : realType] [P : probability T R] [Z : T -> R] [l B : R], measurable_fun [set: T] Z -> (forall x : T, 0 <= Z x) -> 0 < l -> 1 <= ln B -> (\int[P]_x (expR (l * Z x))%:E <= B%:E)%E -> (\int[P]_x (Z x)%:E <= (ln B / l)%:E)%E
Jensen's inequality for exp, from e^y >= 1 + y: if E e^(l Z) <= B with ln B >= 1, then l E Z <= ln B.
Statement as written in the source
Lemma expectation_le_ln_mgf (P : probability T R) (Z : T -> R) (l B : R) : measurable_fun [set: T] Z -> (forall x, 0 <= Z x)%R -> (0 < l)%R -> (1 <= ln B)%R -> \int[P]_x (expR (l * Z x))%:E <= B%:E -> \int[P]_x (Z x)%:E <= (ln B / l)%:E.
Used by 1 declaration in 1 file
- this file: subexponential_max_sum
forall [d : measure_display] [T : measurableType d] [R : realType] [I : Type] (V : seq I) [F : I -> T -> R], (forall v : I, measurable_fun [set: T] (F v)) -> measurable_fun [set: T] (fun x : T => \big[maxr/0]_(v <- V) F v x)
Statement as written in the source
Lemma measurable_bigmax_seq (I : Type) (V : seq I) (F : I -> T -> R) : (forall v, measurable_fun [set: T] (F v)) -> measurable_fun [set: T] (fun x => \big[Num.max/0%R]_(v <- V) F v x).
Used by 2 declarations in 1 file
- this file: subexponential_max_sum, opnorm_sum_subexponential
forall [R : realType] [I : Type] (V : seq I) [l : R] (S : I -> R), 0 <= l -> expR (l * \big[maxr/0]_(v <- V) `|S v|) <= 1 + \sum_(v <- V) (expR (l * S v) + expR (- (l * S v)))
Statement as written in the source
Lemma expR_bigmax_le (I : Type) (V : seq I) (l : R) (S : I -> R) : (0 <= l)%R -> (expR (l * \big[Num.max/0%R]_(v <- V) `|S v|) <= 1 + \sum_(v <- V) (expR (l * S v) + expR (- (l * S v))))%R.
Used by 1 declaration in 1 file
- this file: subexponential_max_sum
Context d (T : measurableType d) (R : realType). Local Open Scope ereal_scope.
forall [d : measure_display] [T : measurableType d] [R : realType] [mu : nat -> probability T R] [n : nat] [I : Type] (V : seq I) [g : I -> T -> R] [a : nat -> R] [L : R], 0 < L -> (forall (v : I) (i : nat), (i < n)%N -> subexponential (mu i) (g v) L) -> (forall (v : I) (i : nat), (i < n)%N -> \int[mu i]_t g v t = 0) -> (forall i : nat, (i < n)%N -> `|a i| <= 1) -> (\int[tuple_prod mu n]_x (\big[maxr/0]_(v <- V) `|\sum_(i < n) a i * g v (tnth x i)|)%:E <= (8 * L * (Num.ExtraDef.sqrtr (n%:R * (1 + ln (1 + 2 * (size V)%:R))) + (1 + ln (1 + 2 * (size V)%:R))))%:E)%E
A maximal inequality for sums of independent centered subexponential variables over a finite family.
Maximal inequality: for x of law tuple_prod mu n, a family of N functions g_v, each centered and subexponential with constant L under every mu i, and |a_i| <= 1, E max_v |sum_i a_i g_v(x_i)| <= 8 L (sqrt (n Lam) + Lam) with Lam = 1 + ln (1 + 2 N). Proved with the moment generating function of each sum and e^y >= 1 + y.
Statement as written in the source
Theorem subexponential_max_sum (mu : nat -> probability T R) n (I : Type) (V : seq I) (g : I -> T -> R) (a : nat -> R) (L : R) : (0 < L)%R -> (forall v i, (i < n)%N -> subexponential (mu i) (g v) L) -> (forall v i, (i < n)%N -> \int[mu i]_t g v t = 0)%R -> (forall i, (i < n)%N -> `|a i| <= 1)%R -> \int[tuple_prod mu n]_x (\big[Num.max/0]_(v <- V) `|\sum_(i < n) a i * g v (tnth x i)|)%:E <= (8 * L * (Num.sqrt (n%:R * (1 + ln (1 + 2 * (size V)%:R))) + (1 + ln (1 + 2 * (size V)%:R))))%:E.
Used by 1 declaration in 1 file
- this file: opnorm_sum_subexponential
Context d (T : measurableType d) (R : realType). Local Open Scope ereal_scope.
forall [R : realType] [m : nat] [N : R], 0 <= N -> N <= (18 * expR 1) ^+ m -> 1 + ln (1 + 2 * N) <= 6 * m.+1%:R
The logarithm of the number of points of the 1/4-net of the unit ball, as it enters subexponential_max_sum.
Statement as written in the source
Lemma net_log_le m (N : R) : (0 <= N)%R -> (N <= (18 * expR 1) ^+ m)%R -> (1 + ln (1 + 2 * N) <= 6 * m.+1%:R)%R.
Used by 1 declaration in 1 file
- this file: opnorm_sum_subexponential
forall [d : measure_display] [T : measurableType d] [R : realType] [mu : nat -> probability T R] [n m : nat] [Y : T -> 'M_m] [L : R], 0 < L -> (forall (v : 'cV_m) (k : nat), frobenius v <= 1 -> (k < n)%N -> subexponential (mu k) (fun t : T => mxdot v (Y t *m v)) L) -> (forall (v : 'cV_m) (k : nat), frobenius v <= 1 -> (k < n)%N -> \int[mu k]_t mxdot v (Y t *m v) = 0) -> exists N : (nat -> R) -> n.-tuple T -> R, forall a : nat -> R, (forall k : nat, (k < n)%N -> `|a k| <= 1) -> [/\ measurable_fun [set: n.-tuple T] (N a), forall x : n.-tuple T, opnorm (sym_part (\sum_(k < n) a k *: Y (tnth x k))) <= N a x & (\int[tuple_prod mu n]_x (N a x)%:E <= (96 * L * (Num.ExtraDef.sqrtr (n%:R * m.+1%:R) + m.+1%:R))%:E)%E]
The operator norm of a weighted sum of independent random matrices whose quadratic forms are centered and subexponential, through a measurable majorant (the operator norm is a supremum over the unit ball), the same for all weights.
For x of law tuple_prod mu n and Y : T -> 'M[R]_m whose quadratic forms v^T Y v (|v| <= 1) are centered and subexponential with constant L under every mu k, there are measurable N a with opnorm (sym_part (sum_k a_k Y(x_k))) <= N a x and E N a <= 96 L (sqrt (n (m + 1)) + m + 1) for all weights with |a_k| <= 1. Unlike the matrix Bernstein inequality, the bound has no logarithmic factor.
Statement as written in the source
Theorem opnorm_sum_subexponential (mu : nat -> probability T R) n m (Y : T -> 'M[R]_m) (L : R) : (0 < L)%R -> (forall (v : 'cV[R]_m) k, (frobenius v <= 1)%R -> (k < n)%N -> subexponential (mu k) (fun t => mxdot v (Y t *m v)) L) -> (forall (v : 'cV[R]_m) k, (frobenius v <= 1)%R -> (k < n)%N -> \int[mu k]_t mxdot v (Y t *m v) = 0)%R -> exists N : (nat -> R) -> n.-tuple T -> R, forall a : nat -> R, (forall k, (k < n)%N -> `|a k| <= 1)%R -> [/\ measurable_fun [set: n.-tuple T] (N a), (forall x, opnorm (sym_part (\sum_(k < n) a k *: Y (tnth x k))) <= N a x)%R & \int[tuple_prod mu n]_x (N a x)%:E <= (96 * L * (Num.sqrt (n%:R * m.+1%:R) + m.+1%:R))%:E].