Skip to content

Commit c39f23b

Browse files
committed
feat: covariance lemmas (leanprover-community#36615)
Covariance of variables divided by a constant, expanded versions of covariance of a subtraction.
1 parent f0e87e9 commit c39f23b

1 file changed

Lines changed: 16 additions & 0 deletions

File tree

Mathlib/Probability/Moments/Covariance.lean

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,14 @@ lemma covariance_mul_const_left (c : ℝ) : cov[fun ω ↦ X ω * c, Y; μ] = co
145145
lemma covariance_mul_const_right (c : ℝ) : cov[X, fun ω ↦ Y ω * c; μ] = cov[X, Y; μ] * c := by
146146
simp [mul_comm, covariance_const_mul_right]
147147

148+
lemma covariance_fun_div_left (c : ℝ) :
149+
cov[fun ω ↦ X ω / c, Y; μ] = cov[X, Y; μ] / c := by
150+
simp_rw [← inv_mul_eq_div, covariance_const_mul_left]
151+
152+
lemma covariance_fun_div_right (c : ℝ) :
153+
cov[X, fun ω ↦ Y ω / c; μ] = cov[X, Y; μ] / c := by
154+
simp_rw [← inv_mul_eq_div, covariance_const_mul_right]
155+
148156
@[deprecated (since := "2025-11-29")] alias covariance_mul_left := covariance_const_mul_left
149157
@[deprecated (since := "2025-11-29")] alias covariance_mul_right := covariance_const_mul_right
150158

@@ -173,11 +181,19 @@ lemma covariance_sub_left [IsFiniteMeasure μ]
173181
cov[X - Y, Z; μ] = cov[X, Z; μ] - cov[Y, Z; μ] := by
174182
simp_rw [sub_eq_add_neg, covariance_add_left hX hY.neg hZ, covariance_neg_left]
175183

184+
lemma covariance_fun_sub_left [IsFiniteMeasure μ]
185+
(hX : MemLp X 2 μ) (hY : MemLp Y 2 μ) (hZ : MemLp Z 2 μ) :
186+
cov[fun ω ↦ X ω - Y ω, Z; μ] = cov[X, Z; μ] - cov[Y, Z; μ] := covariance_sub_left hX hY hZ
187+
176188
lemma covariance_sub_right [IsFiniteMeasure μ]
177189
(hX : MemLp X 2 μ) (hY : MemLp Y 2 μ) (hZ : MemLp Z 2 μ) :
178190
cov[X, Y - Z; μ] = cov[X, Y; μ] - cov[X, Z; μ] := by
179191
simp_rw [sub_eq_add_neg, covariance_add_right hX hY hZ.neg, covariance_neg_right]
180192

193+
lemma covariance_fun_sub_right [IsFiniteMeasure μ]
194+
(hX : MemLp X 2 μ) (hY : MemLp Y 2 μ) (hZ : MemLp Z 2 μ) :
195+
cov[X, fun ω ↦ Y ω - Z ω; μ] = cov[X, Y; μ] - cov[X, Z; μ] := covariance_sub_right hX hY hZ
196+
181197
@[simp]
182198
lemma covariance_sub_const_left [IsProbabilityMeasure μ] (hX : Integrable X μ) (c : ℝ) :
183199
cov[fun ω ↦ X ω - c, Y; μ] = cov[X, Y; μ] := by

0 commit comments

Comments
 (0)