@@ -106,7 +106,7 @@ lemma is_measurable.congr {s t : set α} (hs : is_measurable s) (h : s = t) :
106
106
is_measurable t :=
107
107
by rwa ← h
108
108
109
- lemma is_measurable.Union [encodable β] {f : β → set α} (h : ∀b, is_measurable (f b)) :
109
+ lemma is_measurable.Union [encodable β] {{ f : β → set α} } (h : ∀b, is_measurable (f b)) :
110
110
is_measurable (⋃b, f b) :=
111
111
by { rw ← encodable.Union_decode2, exact
112
112
‹measurable_space α›.is_measurable_Union
@@ -123,39 +123,37 @@ end
123
123
124
124
lemma is_measurable.sUnion {s : set (set α)} (hs : countable s) (h : ∀t∈s, is_measurable t) :
125
125
is_measurable (⋃₀ s) :=
126
- by rw sUnion_eq_bUnion; exact is_measurable.bUnion hs h
126
+ by { rw sUnion_eq_bUnion, exact is_measurable.bUnion hs h }
127
127
128
128
lemma is_measurable.Union_Prop {p : Prop } {f : p → set α} (hf : ∀b, is_measurable (f b)) :
129
129
is_measurable (⋃b, f b) :=
130
- by by_cases p; simp [h, hf, is_measurable.empty]
130
+ by { by_cases p; simp [h, hf, is_measurable.empty] }
131
131
132
132
lemma is_measurable.Inter [encodable β] {f : β → set α} (h : ∀b, is_measurable (f b)) :
133
133
is_measurable (⋂b, f b) :=
134
134
is_measurable.compl_iff.1 $
135
- by rw compl_Inter; exact is_measurable.Union (λ b, (h b).compl)
135
+ by { rw compl_Inter, exact is_measurable.Union (λ b, (h b).compl) }
136
136
137
137
lemma is_measurable.bInter {f : β → set α} {s : set β} (hs : countable s)
138
138
(h : ∀b∈s, is_measurable (f b)) : is_measurable (⋂b∈s, f b) :=
139
139
is_measurable.compl_iff.1 $
140
- by rw compl_bInter; exact is_measurable.bUnion hs (λ b hb, (h b hb).compl)
140
+ by { rw compl_bInter, exact is_measurable.bUnion hs (λ b hb, (h b hb).compl) }
141
141
142
142
lemma is_measurable.sInter {s : set (set α)} (hs : countable s) (h : ∀t∈s, is_measurable t) :
143
143
is_measurable (⋂₀ s) :=
144
- by rw sInter_eq_bInter; exact is_measurable.bInter hs h
144
+ by { rw sInter_eq_bInter, exact is_measurable.bInter hs h }
145
145
146
146
lemma is_measurable.Inter_Prop {p : Prop } {f : p → set α} (hf : ∀b, is_measurable (f b)) :
147
147
is_measurable (⋂b, f b) :=
148
- by by_cases p; simp [h, hf, is_measurable.univ]
148
+ by { by_cases p; simp [h, hf, is_measurable.univ] }
149
149
150
150
lemma is_measurable.union {s₁ s₂ : set α}
151
151
(h₁ : is_measurable s₁) (h₂ : is_measurable s₂) : is_measurable (s₁ ∪ s₂) :=
152
- by rw union_eq_Union; exact
153
- is_measurable.Union (bool.forall_bool.2 ⟨h₂, h₁⟩)
152
+ by { rw union_eq_Union, exact is_measurable.Union (bool.forall_bool.2 ⟨h₂, h₁⟩) }
154
153
155
154
lemma is_measurable.inter {s₁ s₂ : set α}
156
155
(h₁ : is_measurable s₁) (h₂ : is_measurable s₂) : is_measurable (s₁ ∩ s₂) :=
157
- by rw inter_eq_compl_compl_union_compl; exact
158
- (h₁.compl.union h₂.compl).compl
156
+ by { rw inter_eq_compl_compl_union_compl, exact (h₁.compl.union h₂.compl).compl }
159
157
160
158
lemma is_measurable.diff {s₁ s₂ : set α}
161
159
(h₁ : is_measurable s₁) (h₂ : is_measurable s₂) : is_measurable (s₁ \ s₂) :=
@@ -166,7 +164,7 @@ lemma is_measurable.disjointed {f : ℕ → set α} (h : ∀i, is_measurable (f
166
164
disjointed_induct (h n) (assume t i ht, is_measurable.diff ht $ h _)
167
165
168
166
lemma is_measurable.const (p : Prop ) : is_measurable {a : α | p} :=
169
- by by_cases p; simp [h, is_measurable.empty]; apply is_measurable.univ
167
+ by { by_cases p; simp [h, is_measurable.empty]; apply is_measurable.univ }
170
168
171
169
end
172
170
@@ -262,7 +260,7 @@ protected def mk_of_closure (g : set (set α)) (hg : {t | (generate_from g).is_m
262
260
lemma mk_of_closure_sets {s : set (set α)}
263
261
{hs : {t | (generate_from s).is_measurable t} = s} :
264
262
measurable_space.mk_of_closure s hs = generate_from s :=
265
- measurable_space.ext $ assume t, show t ∈ s ↔ _, by rw [← hs] {occs := occurrences.pos [ 1 ] }; refl
263
+ measurable_space.ext $ assume t, show t ∈ s ↔ _, by { conv_lhs { rw [← hs] }, refl }
266
264
267
265
/-- We get a Galois insertion between `σ`-algebras on `α` and `set (set α)` by using `generate_from`
268
266
on one side and the collection of measurable sets on the other side. -/
@@ -306,7 +304,8 @@ show s ∈ (⋂m∈ms, {t | @is_measurable _ m t }) ↔ _, by simp
306
304
307
305
@[simp] theorem is_measurable_infi {ι} {m : ι → measurable_space α} {s : set α} :
308
306
@is_measurable _ (infi m) s ↔ ∀ i, @is_measurable _ (m i) s :=
309
- show s ∈ (λm, {s | @is_measurable _ m s }) (infi m) ↔ _, by rw (@gi_generate_from α).gc.u_infi; simp; refl
307
+ show s ∈ (λm, {s | @is_measurable _ m s }) (infi m) ↔ _,
308
+ by { rw (@gi_generate_from α).gc.u_infi, simp }
310
309
311
310
theorem is_measurable_sup {m₁ m₂ : measurable_space α} {s : set α} :
312
311
@is_measurable _ (m₁ ⊔ m₂) s ↔ generate_measurable (m₁.is_measurable ∪ m₂.is_measurable) s :=
@@ -341,7 +340,7 @@ protected def map (f : α → β) (m : measurable_space α) : measurable_space
341
340
{ is_measurable := λs, m.is_measurable $ f ⁻¹' s,
342
341
is_measurable_empty := m.is_measurable_empty,
343
342
is_measurable_compl := assume s hs, m.is_measurable_compl _ hs,
344
- is_measurable_Union := assume f hf, by rw [preimage_Union]; exact m.is_measurable_Union _ hf }
343
+ is_measurable_Union := assume f hf, by { rw [preimage_Union], exact m.is_measurable_Union _ hf } }
345
344
346
345
@[simp] lemma map_id : m.map id = m :=
347
346
measurable_space.ext $ assume s, iff.rfl
@@ -415,7 +414,7 @@ open measurable_space
415
414
416
415
/-- A function `f` between measurable spaces is measurable if the preimage of every
417
416
measurable set is measurable. -/
418
- def measurable [measurable_space α] [ measurable_space β] (f : α → β) : Prop :=
417
+ def measurable [measurable_space α] [measurable_space β] (f : α → β) : Prop :=
419
418
∀ ⦃t : set β⦄, is_measurable t → is_measurable (f ⁻¹' t)
420
419
421
420
lemma measurable_iff_le_map {m₁ : measurable_space α} {m₂ : measurable_space β} {f : α → β} :
497
496
498
497
lemma measurable_unit [measurable_space α] (f : unit → α) : measurable f :=
499
498
have f = (λu, f ()) := funext $ assume ⟨⟩, rfl,
500
- by rw this ; exact measurable_const
499
+ by { rw this , exact measurable_const }
501
500
502
501
section nat
503
502
@@ -601,8 +600,8 @@ lemma measurable.prod [measurable_space α] [measurable_space β] [measurable_sp
601
600
{f : α → β × γ} (hf₁ : measurable (λa, (f a).1 )) (hf₂ : measurable (λa, (f a).2 )) :
602
601
measurable f :=
603
602
measurable.of_le_map $ sup_le
604
- (by rw [measurable_space.comap_le_iff_le_map, measurable_space.map_comp]; exact hf₁)
605
- (by rw [measurable_space.comap_le_iff_le_map, measurable_space.map_comp]; exact hf₂)
603
+ (by { rw [measurable_space.comap_le_iff_le_map, measurable_space.map_comp], exact hf₁ } )
604
+ (by { rw [measurable_space.comap_le_iff_le_map, measurable_space.map_comp], exact hf₂ } )
606
605
607
606
lemma measurable.prod_mk [measurable_space α] [measurable_space β] [measurable_space γ]
608
607
{f : α → β} {g : α → γ} (hf : measurable f) (hg : measurable g) : measurable (λa:α, (f a, g a)) :=
@@ -654,23 +653,23 @@ measurable_sum hf hg
654
653
655
654
lemma is_measurable.inl_image {s : set α} (hs : is_measurable s) :
656
655
is_measurable (sum.inl '' s : set (α ⊕ β)) :=
657
- ⟨show is_measurable (sum.inl ⁻¹' _), by rwa [preimage_image_eq]; exact (assume a b, sum.inl.inj),
656
+ ⟨show is_measurable (sum.inl ⁻¹' _), by { rwa [preimage_image_eq], exact (λ a b, sum.inl.inj) } ,
658
657
have sum.inr ⁻¹' (sum.inl '' s : set (α ⊕ β)) = ∅ :=
659
658
eq_empty_of_subset_empty $ assume x ⟨y, hy, eq⟩, by contradiction,
660
- show is_measurable (sum.inr ⁻¹' _), by rw [this ]; exact is_measurable.empty⟩
659
+ show is_measurable (sum.inr ⁻¹' _), by { rw [this ], exact is_measurable.empty } ⟩
661
660
662
661
lemma is_measurable_range_inl : is_measurable (range sum.inl : set (α ⊕ β)) :=
663
- by rw [← image_univ]; exact is_measurable.univ.inl_image
662
+ by { rw [← image_univ], exact is_measurable.univ.inl_image }
664
663
665
664
lemma is_measurable_inr_image {s : set β} (hs : is_measurable s) :
666
665
is_measurable (sum.inr '' s : set (α ⊕ β)) :=
667
666
⟨ have sum.inl ⁻¹' (sum.inr '' s : set (α ⊕ β)) = ∅ :=
668
667
eq_empty_of_subset_empty $ assume x ⟨y, hy, eq⟩, by contradiction,
669
- show is_measurable (sum.inl ⁻¹' _), by rw [this ]; exact is_measurable.empty,
670
- show is_measurable (sum.inr ⁻¹' _), by rwa [preimage_image_eq]; exact (assume a b, sum.inr.inj) ⟩
668
+ show is_measurable (sum.inl ⁻¹' _), by { rw [this ], exact is_measurable.empty } ,
669
+ show is_measurable (sum.inr ⁻¹' _), by { rwa [preimage_image_eq], exact λ a b, sum.inr.inj } ⟩
671
670
672
671
lemma is_measurable_range_inr : is_measurable (range sum.inr : set (α ⊕ β)) :=
673
- by rw [← image_univ]; exact is_measurable_inr_image is_measurable.univ
672
+ by { rw [← image_univ], exact is_measurable_inr_image is_measurable.univ }
674
673
675
674
end sum
676
675
@@ -725,8 +724,8 @@ lemma symm_to_equiv {α β} [measurable_space α] [measurable_space β] (e : mea
725
724
protected def cast {α β} [i₁ : measurable_space α] [i₂ : measurable_space β]
726
725
(h : α = β) (hi : i₁ == i₂) : measurable_equiv α β :=
727
726
{ to_equiv := equiv.cast h,
728
- measurable_to_fun := by substI h; substI hi; exact measurable_id,
729
- measurable_inv_fun := by substI h; substI hi; exact measurable_id }
727
+ measurable_to_fun := by { substI h, substI hi, exact measurable_id } ,
728
+ measurable_inv_fun := by { substI h, substI hi, exact measurable_id } }
730
729
731
730
protected lemma measurable {α β} [measurable_space α] [measurable_space β]
732
731
(e : measurable_equiv α β) : measurable (e : α → β) :=
@@ -807,14 +806,8 @@ noncomputable def set.image [measurable_space α] [measurable_space β]
807
806
{ to_equiv := equiv.set.image f s hf,
808
807
measurable_to_fun := (hfm.comp measurable_id.subtype_coe).subtype_mk,
809
808
measurable_inv_fun :=
810
- assume t ⟨u, (hu : is_measurable u), eq⟩,
811
809
begin
812
- clear_, subst eq,
813
- show is_measurable {x : f '' s | ((equiv.set.image f s hf).inv_fun x).val ∈ u},
814
- have : ∀(a ∈ s) (h : ∃a', a' ∈ s ∧ a' = a), classical.some h = a :=
815
- λa ha h, (classical.some_spec h).2 ,
816
- rw show {x:f '' s | ((equiv.set.image f s hf).inv_fun x).val ∈ u} = subtype.val ⁻¹' (f '' u),
817
- by ext ⟨b, a, hbs, rfl⟩; simp [equiv.set.image, equiv.set.image_of_inj_on, hf, this _ hbs],
810
+ rintro t ⟨u, hu, rfl⟩, simp [preimage_preimage, equiv.set.image_symm_preimage hf],
818
811
exact measurable_subtype_coe (hfi u hu)
819
812
end }
820
813
@@ -833,10 +826,10 @@ def set.range_inl [measurable_space α] [measurable_space β] :
833
826
measurable_equiv (range sum.inl : set (α ⊕ β)) α :=
834
827
{ to_fun := λab, match ab with
835
828
| ⟨sum.inl a, _⟩ := a
836
- | ⟨sum.inr b, p⟩ := have false, by cases p; contradiction, this.elim
829
+ | ⟨sum.inr b, p⟩ := have false, by { cases p, contradiction } , this.elim
837
830
end ,
838
831
inv_fun := λa, ⟨sum.inl a, a, rfl⟩,
839
- left_inv := assume ⟨ab, a, eq ⟩, by subst eq; refl,
832
+ left_inv := by { rintro ⟨ab, a, rfl ⟩, refl } ,
840
833
right_inv := assume a, rfl,
841
834
measurable_to_fun := assume s (hs : is_measurable s),
842
835
begin
@@ -851,10 +844,10 @@ def set.range_inr [measurable_space α] [measurable_space β] :
851
844
measurable_equiv (range sum.inr : set (α ⊕ β)) β :=
852
845
{ to_fun := λab, match ab with
853
846
| ⟨sum.inr b, _⟩ := b
854
- | ⟨sum.inl a, p⟩ := have false, by cases p; contradiction, this.elim
847
+ | ⟨sum.inl a, p⟩ := have false, by { cases p, contradiction } , this.elim
855
848
end ,
856
849
inv_fun := λb, ⟨sum.inr b, b, rfl⟩,
857
- left_inv := assume ⟨ab, b, eq ⟩, by subst eq; refl,
850
+ left_inv := by { rintro ⟨ab, b, rfl ⟩, refl } ,
858
851
right_inv := assume b, rfl,
859
852
measurable_to_fun := assume s (hs : is_measurable s),
860
853
begin
@@ -875,7 +868,7 @@ def sum_prod_distrib (α β γ) [measurable_space α] [measurable_space β] [mea
875
868
((range sum.inr).prod univ)
876
869
(is_measurable_range_inl.prod is_measurable.univ)
877
870
(is_measurable_range_inr.prod is_measurable.univ)
878
- (assume ⟨ab , c⟩ s, by cases ab ; simp [set.prod_eq])
871
+ (by { rintro ⟨a|b , c⟩; simp [set.prod_eq] } )
879
872
_
880
873
_,
881
874
{ refine (set.prod (range sum.inl) univ).symm.measurable_coe_iff.1 _,
@@ -929,11 +922,8 @@ structure dynkin_system (α : Type*) :=
929
922
930
923
namespace dynkin_system
931
924
932
- @[ext] lemma ext :
933
- ∀{d₁ d₂ : dynkin_system α}, (∀s:set α, d₁.has s ↔ d₂.has s) → d₁ = d₂
934
- | ⟨s₁, _, _, _⟩ ⟨s₂, _, _, _⟩ h :=
935
- have s₁ = s₂, from funext $ assume x, propext $ h x,
936
- by subst this
925
+ @[ext] lemma ext : ∀{d₁ d₂ : dynkin_system α}, (∀s:set α, d₁.has s ↔ d₂.has s) → d₁ = d₂
926
+ | ⟨s₁, _, _, _⟩ ⟨s₂, _, _, _⟩ h := have s₁ = s₂, from funext $ assume x, propext $ h x, by subst this
937
927
938
928
variable (d : dynkin_system α)
939
929
@@ -946,17 +936,17 @@ by simpa using d.has_compl d.has_empty
946
936
theorem has_Union {β} [encodable β] {f : β → set α}
947
937
(hd : pairwise (disjoint on f)) (h : ∀i, d.has (f i)) : d.has (⋃i, f i) :=
948
938
by { rw ← encodable.Union_decode2, exact
949
- d.has_Union_nat (Union_decode2_disjoint_on hd)
950
- (λ n, encodable.Union_decode2_cases d.has_empty h) }
939
+ d.has_Union_nat (Union_decode2_disjoint_on hd)
940
+ (λ n, encodable.Union_decode2_cases d.has_empty h) }
951
941
952
942
theorem has_union {s₁ s₂ : set α}
953
943
(h₁ : d.has s₁) (h₂ : d.has s₂) (h : s₁ ∩ s₂ ⊆ ∅) : d.has (s₁ ∪ s₂) :=
954
- by rw union_eq_Union; exact
955
- d.has_Union (pairwise_disjoint_on_bool.2 h)
956
- (bool.forall_bool.2 ⟨h₂, h₁⟩)
944
+ by { rw union_eq_Union, exact
945
+ d.has_Union (pairwise_disjoint_on_bool.2 h) (bool.forall_bool.2 ⟨h₂, h₁⟩) }
957
946
958
947
lemma has_diff {s₁ s₂ : set α} (h₁ : d.has s₁) (h₂ : d.has s₂) (h : s₂ ⊆ s₁) : d.has (s₁ \ s₂) :=
959
- d.has_compl_iff.1 begin
948
+ begin
949
+ apply d.has_compl_iff.1 ,
960
950
simp [diff_eq, compl_inter],
961
951
exact d.has_union (d.has_compl h₁) h₂ (λ x ⟨h₁, h₂⟩, h₁ (h h₂)),
962
952
end
@@ -1020,9 +1010,9 @@ def restrict_on {s : set α} (h : d.has s) : dynkin_system α :=
1020
1010
has_empty := by simp [d.has_empty],
1021
1011
has_compl := assume t hts,
1022
1012
have tᶜ ∩ s = ((t ∩ s)ᶜ) \ sᶜ,
1023
- from set.ext $ assume x, by by_cases x ∈ s; simp [h],
1024
- by rw [this ]; from d.has_diff (d.has_compl hts) (d.has_compl h)
1025
- (compl_subset_compl.mpr $ inter_subset_right _ _),
1013
+ from set.ext $ assume x, by { by_cases x ∈ s; simp [h] } ,
1014
+ by { rw [this ], exact d.has_diff (d.has_compl hts) (d.has_compl h)
1015
+ (compl_subset_compl.mpr $ inter_subset_right _ _) } ,
1026
1016
has_Union_nat := assume f hd hf,
1027
1017
begin
1028
1018
rw [inter_comm, inter_Union],
@@ -1058,8 +1048,8 @@ generate_from s = (generate s).to_measurable_space (assume t₁ t₂, generate_i
1058
1048
le_antisymm
1059
1049
(generate_from_le $ assume t ht, generate_has.basic t ht)
1060
1050
(of_measurable_space_le_of_measurable_space_iff.mp $
1061
- by rw [of_measurable_space_to_measurable_space];
1062
- from (generate_le _ $ assume t ht, is_measurable_generate_from ht))
1051
+ by { rw [of_measurable_space_to_measurable_space],
1052
+ exact (generate_le _ $ assume t ht, is_measurable_generate_from ht) } )
1063
1053
1064
1054
end dynkin_system
1065
1055
@@ -1071,12 +1061,12 @@ lemma induction_on_inter {C : set α → Prop} {s : set (set α)} {m : measurabl
1071
1061
(∀i, m.is_measurable (f i)) → (∀i, C (f i)) → C (⋃i, f i)) :
1072
1062
∀{t}, m.is_measurable t → C t :=
1073
1063
have eq : m.is_measurable = dynkin_system.generate_has s,
1074
- by rw [h_eq, dynkin_system.generate_from_eq h_inter]; refl,
1064
+ by { rw [h_eq, dynkin_system.generate_from_eq h_inter], refl } ,
1075
1065
assume t ht,
1076
1066
have dynkin_system.generate_has s t, by rwa [eq] at ht,
1077
1067
this.rec_on h_basic h_empty
1078
- (assume t ht, h_compl t $ by rw [eq]; exact ht)
1079
- (assume f hf ht, h_union f hf $ assume i, by rw [eq]; exact ht _)
1068
+ (assume t ht, h_compl t $ by { rw [eq], exact ht } )
1069
+ (assume f hf ht, h_union f hf $ assume i, by { rw [eq], exact ht _ } )
1080
1070
1081
1071
end measurable_space
1082
1072
0 commit comments