@@ -1213,6 +1213,9 @@ ext $ λ s hs, by simp [hs, tsum_fintype]
1213
1213
(sum μ).restrict s = sum (λ i, (μ i).restrict s) :=
1214
1214
ext $ λ t ht, by simp only [sum_apply, restrict_apply, ht, ht.inter hs]
1215
1215
1216
+ @[simp] lemma sum_of_empty [is_empty ι] (μ : ι → measure α) : sum μ = 0 :=
1217
+ by rw [← measure_univ_eq_zero, sum_apply _ measurable_set.univ, tsum_empty]
1218
+
1216
1219
lemma sum_congr {μ ν : ℕ → measure α} (h : ∀ n, μ n = ν n) : sum μ = sum ν :=
1217
1220
by { congr, ext1 n, exact h n }
1218
1221
@@ -1339,6 +1342,8 @@ rfl.absolutely_continuous
1339
1342
1340
1343
protected lemma rfl : μ ≪ μ := λ s hs, hs
1341
1344
1345
+ instance [measurable_space α] : is_refl (measure α) (≪) := ⟨λ μ, absolutely_continuous.rfl⟩
1346
+
1342
1347
@[trans] protected lemma trans (h1 : μ₁ ≪ μ₂) (h2 : μ₂ ≪ μ₃) : μ₁ ≪ μ₃ :=
1343
1348
λ s hs, h1 $ h2 hs
1344
1349
@@ -1449,45 +1454,60 @@ localized "infix ` ⊥ₘ `:60 := measure_theory.measure.mutually_singular" in m
1449
1454
1450
1455
namespace mutually_singular
1451
1456
1452
- lemma zero_right : μ ⊥ₘ 0 :=
1453
- ⟨∅, measurable_set.empty, measure_empty, rfl⟩
1457
+ lemma mk {s t : set α} (hs : μ s = 0 ) (ht : ν t = 0 ) (hst : univ ⊆ s ∪ t) :
1458
+ mutually_singular μ ν :=
1459
+ begin
1460
+ use [to_measurable μ s, measurable_set_to_measurable _ _, (measure_to_measurable _).trans hs],
1461
+ refine measure_mono_null (λ x hx, (hst trivial).resolve_left $ λ hxs, hx _) ht,
1462
+ exact subset_to_measurable _ _ hxs
1463
+ end
1464
+
1465
+ @[simp] lemma zero_right : μ ⊥ₘ 0 := ⟨∅, measurable_set.empty, measure_empty, rfl⟩
1454
1466
1455
- lemma symm (h : ν ⊥ₘ μ) : μ ⊥ₘ ν :=
1456
- let ⟨i, hi, his, hit⟩ := h in
1457
- ⟨iᶜ, measurable_set.compl hi, hit, (compl_compl i).symm ▸ his⟩
1467
+ @[symm] lemma symm (h : ν ⊥ₘ μ) : μ ⊥ₘ ν :=
1468
+ let ⟨i, hi, his, hit⟩ := h in ⟨iᶜ, hi.compl, hit, (compl_compl i).symm ▸ his⟩
1458
1469
1459
- lemma zero_left : 0 ⊥ₘ μ :=
1460
- zero_right.symm
1470
+ lemma comm : μ ⊥ₘ ν ↔ ν ⊥ₘ μ := ⟨λ h, h.symm, λ h, h.symm⟩
1461
1471
1462
- lemma add (h₁ : ν₁ ⊥ₘ μ) (h₂ : ν₂ ⊥ₘ μ) : ν₁ + ν₂ ⊥ₘ μ :=
1463
- begin
1464
- obtain ⟨s, hs, hs0, hs0'⟩ := h₁,
1465
- obtain ⟨t, ht, ht0, ht0'⟩ := h₂,
1466
- refine ⟨s ∩ t, hs.inter ht, _, _⟩,
1467
- { simp only [pi.add_apply, add_eq_zero_iff, coe_add],
1468
- exact ⟨measure_mono_null (inter_subset_left s t) hs0,
1469
- measure_mono_null (inter_subset_right s t) ht0⟩ },
1470
- { rw [compl_inter, ← nonpos_iff_eq_zero],
1471
- refine le_trans (measure_union_le _ _) _,
1472
- rw [hs0', ht0', zero_add],
1473
- exact le_refl _ }
1474
- end
1472
+ @[simp] lemma zero_left : 0 ⊥ₘ μ := zero_right.symm
1473
+
1474
+ lemma mono_ac (h : μ₁ ⊥ₘ ν₁) (hμ : μ₂ ≪ μ₁) (hν : ν₂ ≪ ν₁) : μ₂ ⊥ₘ ν₂ :=
1475
+ let ⟨s, hs, h₁, h₂⟩ := h in ⟨s, hs, hμ h₁, hν h₂⟩
1475
1476
1476
- lemma add_iff : ν₁ + ν₂ ⊥ₘ μ ↔ ν₁ ⊥ₘ μ ∧ ν₂ ⊥ₘ μ :=
1477
+ lemma mono (h : μ₁ ⊥ₘ ν₁) (hμ : μ₂ ≤ μ₁) (hν : ν₂ ≤ ν₁) : μ₂ ⊥ₘ ν₂ :=
1478
+ h.mono_ac hμ.absolutely_continuous hν.absolutely_continuous
1479
+
1480
+ @[simp] lemma sum_left {ι : Type *} [encodable ι] {μ : ι → measure α} :
1481
+ (sum μ) ⊥ₘ ν ↔ ∀ i, μ i ⊥ₘ ν :=
1477
1482
begin
1478
- split,
1479
- { rintro ⟨u, hmeas, hu₁, hu₂⟩,
1480
- rw [measure.add_apply, add_eq_zero_iff] at hu₁,
1481
- exact ⟨⟨u, hmeas, hu₁.1 , hu₂⟩, u, hmeas, hu₁.2 , hu₂⟩ },
1482
- { exact λ ⟨h₁, h₂⟩, h₁.add h₂ }
1483
+ refine ⟨λ h i, h.mono (le_sum _ _) le_rfl, λ H, _⟩,
1484
+ choose s hsm hsμ hsν using H,
1485
+ refine ⟨⋂ i, s i, measurable_set.Inter hsm, _, _⟩,
1486
+ { rw [sum_apply _ (measurable_set.Inter hsm), ennreal.tsum_eq_zero],
1487
+ exact λ i, measure_mono_null (Inter_subset _ _) (hsμ i) },
1488
+ { rwa [compl_Inter, measure_Union_null_iff], }
1483
1489
end
1484
1490
1485
- lemma smul (r : ℝ≥0 ) (h : ν ⊥ₘ μ) : r • ν ⊥ₘ μ :=
1486
- let ⟨s, hs, hs0, hs0'⟩ := h in
1487
- ⟨s, hs, by simp only [coe_nnreal_smul, pi.smul_apply, hs0, smul_zero], hs0'⟩
1491
+ @[simp] lemma sum_right {ι : Type *} [encodable ι] {ν : ι → measure α} :
1492
+ μ ⊥ₘ sum ν ↔ ∀ i, μ ⊥ₘ ν i :=
1493
+ comm.trans $ sum_left.trans $ forall_congr $ λ i, comm
1494
+
1495
+ @[simp] lemma add_left_iff : μ₁ + μ₂ ⊥ₘ ν ↔ μ₁ ⊥ₘ ν ∧ μ₂ ⊥ₘ ν :=
1496
+ by rw [← sum_cond, sum_left, bool.forall_bool, cond, cond, and.comm]
1497
+
1498
+ @[simp] lemma add_right_iff : μ ⊥ₘ ν₁ + ν₂ ↔ μ ⊥ₘ ν₁ ∧ μ ⊥ₘ ν₂ :=
1499
+ comm.trans $ add_left_iff.trans $ and_congr comm comm
1500
+
1501
+ lemma add_left (h₁ : ν₁ ⊥ₘ μ) (h₂ : ν₂ ⊥ₘ μ) : ν₁ + ν₂ ⊥ₘ μ :=
1502
+ add_left_iff.2 ⟨h₁, h₂⟩
1503
+
1504
+ lemma add_right (h₁ : μ ⊥ₘ ν₁) (h₂ : μ ⊥ₘ ν₂) : μ ⊥ₘ ν₁ + ν₂ :=
1505
+ add_right_iff.2 ⟨h₁, h₂⟩
1506
+
1507
+ lemma smul (r : ℝ≥0 ∞) (h : ν ⊥ₘ μ) : r • ν ⊥ₘ μ :=
1508
+ h.mono_ac (absolutely_continuous.rfl.smul r) absolutely_continuous.rfl
1488
1509
1489
- lemma of_absolutely_continuous (hms : ν₂ ⊥ₘ μ) (hac : ν₁ ≪ ν₂) : ν₁ ⊥ₘ μ :=
1490
- let ⟨u, hmeas, hu₁, hu₂⟩ := hms in ⟨u, hmeas, hac hu₁, hu₂⟩
1510
+ lemma smul_nnreal (r : ℝ≥0 ) (h : ν ⊥ₘ μ) : r • ν ⊥ₘ μ := h.smul r
1491
1511
1492
1512
end mutually_singular
1493
1513
0 commit comments