@@ -133,38 +133,40 @@ lemma gen_ineq_aux2 :
133
133
ext p; simp
134
134
rw [this]
135
135
have J : IndepFun (Z₁ + Z₃) (Z₂ + Z₄) := by exact I.comp measurable_add measurable_add
136
- rw [J.measureReal_inter_preimage_eq_mul (.singleton x) (.singleton y), ENNReal.toReal_mul ]
137
- rcases eq_or_ne (ℙ ((Z₁ + Z₃) ⁻¹' {x})) 0 with h1|h1
136
+ rw [J.measureReal_inter_preimage_eq_mul (.singleton x) (.singleton y)]
137
+ rcases eq_or_ne (Measure.real ℙ ((Z₁ + Z₃) ⁻¹' {x})) 0 with h1|h1
138
138
· simp [h1]
139
- rcases eq_or_ne (ℙ ((Z₂ + Z₄) ⁻¹' {y})) 0 with h2|h2
139
+ rcases eq_or_ne (Measure.real ℙ ((Z₂ + Z₄) ⁻¹' {y})) 0 with h2|h2
140
140
· simp [h2]
141
141
congr 1
142
142
have A : IdentDistrib Z₁ Z₁ (ℙ[|(Z₁ + Z₃) ⁻¹' {x} ∩ (Z₂ + Z₄) ⁻¹' {y}])
143
143
(ℙ[|(Z₁ + Z₃) ⁻¹' {x}]) := by
144
144
rw [← cond_cond_eq_cond_inter']
145
- have : IsProbabilityMeasure (ℙ[|(Z₁ + Z₃) ⁻¹' {x}]) := cond_isProbabilityMeasure h1
145
+ have : IsProbabilityMeasure (ℙ[|(Z₁ + Z₃) ⁻¹' {x}]) := cond_isProbabilityMeasure_of_real h1
146
146
apply (IndepFun.identDistrib_cond _ (.singleton _) hZ₁ (by fun_prop) _).symm
147
147
· have : IndepFun (⟨Z₁, Z₃⟩) (⟨Z₂, Z₄⟩) (ℙ[|(⟨Z₁, Z₃⟩) ⁻¹' {p | p.1 + p.2 = x}]) :=
148
148
I.cond_left (measurable_add (.singleton x))
149
149
(hZ₁.prodMk hZ₃)
150
150
exact this.comp measurable_fst measurable_add
151
151
· rw [cond_apply, J.measure_inter_preimage_eq_mul _ _ (.singleton x) (.singleton y)]
152
- simp [h1, h2]
152
+ · simp only [ne_eq, measure_ne_top, not_false_eq_true, measureReal_eq_zero_iff] at h1 h2
153
+ simp [h1, h2]
153
154
· exact hZ₁.add hZ₃ (.singleton _)
154
155
· exact hZ₁.add hZ₃ (.singleton _)
155
156
· exact hZ₂.add hZ₄ (.singleton _)
156
157
· finiteness
157
158
have B : IdentDistrib Z₂ Z₂ (ℙ[|(Z₁ + Z₃) ⁻¹' {x} ∩ (Z₂ + Z₄) ⁻¹' {y}])
158
159
(ℙ[|(Z₂ + Z₄) ⁻¹' {y}]) := by
159
160
rw [Set.inter_comm, ← cond_cond_eq_cond_inter']
160
- have : IsProbabilityMeasure (ℙ[|(Z₂ + Z₄) ⁻¹' {y}]) := cond_isProbabilityMeasure h2
161
+ have : IsProbabilityMeasure (ℙ[|(Z₂ + Z₄) ⁻¹' {y}]) := cond_isProbabilityMeasure_of_real h2
161
162
apply (IndepFun.identDistrib_cond _ (.singleton _) hZ₂ (hZ₁.add hZ₃) _).symm
162
163
· have : IndepFun (⟨Z₂, Z₄⟩) (⟨Z₁, Z₃⟩) (ℙ[|(⟨Z₂, Z₄⟩) ⁻¹' {p | p.1 + p.2 = y}]) :=
163
164
I.symm.cond_left (measurable_add (.singleton y))
164
165
(hZ₂.prodMk hZ₄)
165
166
exact this.comp measurable_fst measurable_add
166
167
· rw [Pi.add_def, cond_apply (hZ₂.add hZ₄ (.singleton y)), ← Pi.add_def, ← Pi.add_def,
167
168
J.symm.measure_inter_preimage_eq_mul _ _ (.singleton _) (.singleton _)]
169
+ simp only [ne_eq, measure_ne_top, not_false_eq_true, measureReal_eq_zero_iff] at h1 h2
168
170
simp [h1, h2]
169
171
· exact hZ₂.add hZ₄ (.singleton _)
170
172
· exact hZ₁.add hZ₃ (.singleton _)
0 commit comments