measure_theory.measure.ae_disjointMathlib.MeasureTheory.Measure.AEDisjoint

This file has been ported!

Changes since the initial port

The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(last sync)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -34,7 +34,7 @@ def AEDisjoint (s t : Set α) :=
 
 variable {μ} {s t u v : Set α}
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (j «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (j «expr ≠ » i) -/
 #print MeasureTheory.exists_null_pairwise_disjoint_diff /-
 /-- If `s : ι → set α` is a countable family of pairwise a.e. disjoint sets, then there exists a
 family of measurable null sets `t i` such that `s i \ t i` are pairwise disjoint. -/
Diff
@@ -51,7 +51,7 @@ theorem exists_null_pairwise_disjoint_diff [Countable ι] {s : ι → Set α}
   · simp only [Pairwise, disjoint_left, on_fun, mem_diff, not_and, and_imp, Classical.not_not]
     intro i j hne x hi hU hj
     replace hU : x ∉ s i ∩ ⋃ (j) (_ : j ≠ i), s j := fun h => hU (subset_to_measurable _ _ h)
-    simp only [mem_inter_iff, mem_Union, not_and, not_exists] at hU 
+    simp only [mem_inter_iff, mem_Union, not_and, not_exists] at hU
     exact (hU hi j hne.symm hj).elim
 #align measure_theory.exists_null_pairwise_disjoint_diff MeasureTheory.exists_null_pairwise_disjoint_diff
 -/
Diff
@@ -3,7 +3,7 @@ Copyright (c) 2022 Yury Kudryashov. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Yury Kudryashov
 -/
-import Mathbin.MeasureTheory.Measure.MeasureSpaceDef
+import MeasureTheory.Measure.MeasureSpaceDef
 
 #align_import measure_theory.measure.ae_disjoint from "leanprover-community/mathlib"@"b5ad141426bb005414324f89719c77c0aa3ec612"
 
@@ -34,7 +34,7 @@ def AEDisjoint (s t : Set α) :=
 
 variable {μ} {s t u v : Set α}
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (j «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (j «expr ≠ » i) -/
 #print MeasureTheory.exists_null_pairwise_disjoint_diff /-
 /-- If `s : ι → set α` is a countable family of pairwise a.e. disjoint sets, then there exists a
 family of measurable null sets `t i` such that `s i \ t i` are pairwise disjoint. -/
Diff
@@ -2,14 +2,11 @@
 Copyright (c) 2022 Yury Kudryashov. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Yury Kudryashov
-
-! This file was ported from Lean 3 source module measure_theory.measure.ae_disjoint
-! leanprover-community/mathlib commit b5ad141426bb005414324f89719c77c0aa3ec612
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.MeasureTheory.Measure.MeasureSpaceDef
 
+#align_import measure_theory.measure.ae_disjoint from "leanprover-community/mathlib"@"b5ad141426bb005414324f89719c77c0aa3ec612"
+
 /-!
 # Almost everywhere disjoint sets
 
@@ -37,7 +34,7 @@ def AEDisjoint (s t : Set α) :=
 
 variable {μ} {s t u v : Set α}
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (j «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (j «expr ≠ » i) -/
 #print MeasureTheory.exists_null_pairwise_disjoint_diff /-
 /-- If `s : ι → set α` is a countable family of pairwise a.e. disjoint sets, then there exists a
 family of measurable null sets `t i` such that `s i \ t i` are pairwise disjoint. -/
Diff
@@ -38,6 +38,7 @@ def AEDisjoint (s t : Set α) :=
 variable {μ} {s t u v : Set α}
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (j «expr ≠ » i) -/
+#print MeasureTheory.exists_null_pairwise_disjoint_diff /-
 /-- If `s : ι → set α` is a countable family of pairwise a.e. disjoint sets, then there exists a
 family of measurable null sets `t i` such that `s i \ t i` are pairwise disjoint. -/
 theorem exists_null_pairwise_disjoint_diff [Countable ι] {s : ι → Set α}
@@ -56,12 +57,15 @@ theorem exists_null_pairwise_disjoint_diff [Countable ι] {s : ι → Set α}
     simp only [mem_inter_iff, mem_Union, not_and, not_exists] at hU 
     exact (hU hi j hne.symm hj).elim
 #align measure_theory.exists_null_pairwise_disjoint_diff MeasureTheory.exists_null_pairwise_disjoint_diff
+-/
 
 namespace AeDisjoint
 
+#print MeasureTheory.AEDisjoint.eq /-
 protected theorem eq (h : AEDisjoint μ s t) : μ (s ∩ t) = 0 :=
   h
 #align measure_theory.ae_disjoint.eq MeasureTheory.AEDisjoint.eq
+-/
 
 #print MeasureTheory.AEDisjoint.symm /-
 @[symm]
@@ -80,19 +84,25 @@ protected theorem comm : AEDisjoint μ s t ↔ AEDisjoint μ t s :=
 #align measure_theory.ae_disjoint.comm MeasureTheory.AEDisjoint.comm
 -/
 
+#print Disjoint.aedisjoint /-
 protected theorem Disjoint.aedisjoint (h : Disjoint s t) : AEDisjoint μ s t := by
   rw [ae_disjoint, disjoint_iff_inter_eq_empty.1 h, measure_empty]
 #align disjoint.ae_disjoint Disjoint.aedisjoint
+-/
 
+#print Pairwise.aedisjoint /-
 protected theorem Pairwise.aedisjoint {f : ι → Set α} (hf : Pairwise (Disjoint on f)) :
     Pairwise (AEDisjoint μ on f) :=
   hf.mono fun i j h => h.AEDisjoint
 #align pairwise.ae_disjoint Pairwise.aedisjoint
+-/
 
+#print Set.PairwiseDisjoint.aedisjoint /-
 protected theorem Set.PairwiseDisjoint.aedisjoint {f : ι → Set α} {s : Set ι}
     (hf : s.PairwiseDisjoint f) : s.Pairwise (AEDisjoint μ on f) :=
   hf.mono' fun i j h => h.AEDisjoint
 #align set.pairwise_disjoint.ae_disjoint Set.PairwiseDisjoint.aedisjoint
+-/
 
 #print MeasureTheory.AEDisjoint.mono_ae /-
 theorem mono_ae (h : AEDisjoint μ s t) (hu : u ≤ᵐ[μ] s) (hv : v ≤ᵐ[μ] t) : AEDisjoint μ u v :=
@@ -113,52 +123,73 @@ protected theorem congr (h : AEDisjoint μ s t) (hu : u =ᵐ[μ] s) (hv : v =ᵐ
 #align measure_theory.ae_disjoint.congr MeasureTheory.AEDisjoint.congr
 -/
 
+#print MeasureTheory.AEDisjoint.iUnion_left_iff /-
 @[simp]
 theorem iUnion_left_iff [Countable ι] {s : ι → Set α} :
     AEDisjoint μ (⋃ i, s i) t ↔ ∀ i, AEDisjoint μ (s i) t := by
   simp only [ae_disjoint, Union_inter, measure_Union_null_iff]
 #align measure_theory.ae_disjoint.Union_left_iff MeasureTheory.AEDisjoint.iUnion_left_iff
+-/
 
+#print MeasureTheory.AEDisjoint.iUnion_right_iff /-
 @[simp]
 theorem iUnion_right_iff [Countable ι] {t : ι → Set α} :
     AEDisjoint μ s (⋃ i, t i) ↔ ∀ i, AEDisjoint μ s (t i) := by
   simp only [ae_disjoint, inter_Union, measure_Union_null_iff]
 #align measure_theory.ae_disjoint.Union_right_iff MeasureTheory.AEDisjoint.iUnion_right_iff
+-/
 
+#print MeasureTheory.AEDisjoint.union_left_iff /-
 @[simp]
 theorem union_left_iff : AEDisjoint μ (s ∪ t) u ↔ AEDisjoint μ s u ∧ AEDisjoint μ t u := by
   simp [union_eq_Union, and_comm]
 #align measure_theory.ae_disjoint.union_left_iff MeasureTheory.AEDisjoint.union_left_iff
+-/
 
+#print MeasureTheory.AEDisjoint.union_right_iff /-
 @[simp]
 theorem union_right_iff : AEDisjoint μ s (t ∪ u) ↔ AEDisjoint μ s t ∧ AEDisjoint μ s u := by
   simp [union_eq_Union, and_comm]
 #align measure_theory.ae_disjoint.union_right_iff MeasureTheory.AEDisjoint.union_right_iff
+-/
 
+#print MeasureTheory.AEDisjoint.union_left /-
 theorem union_left (hs : AEDisjoint μ s u) (ht : AEDisjoint μ t u) : AEDisjoint μ (s ∪ t) u :=
   union_left_iff.mpr ⟨hs, ht⟩
 #align measure_theory.ae_disjoint.union_left MeasureTheory.AEDisjoint.union_left
+-/
 
+#print MeasureTheory.AEDisjoint.union_right /-
 theorem union_right (ht : AEDisjoint μ s t) (hu : AEDisjoint μ s u) : AEDisjoint μ s (t ∪ u) :=
   union_right_iff.2 ⟨ht, hu⟩
 #align measure_theory.ae_disjoint.union_right MeasureTheory.AEDisjoint.union_right
+-/
 
+#print MeasureTheory.AEDisjoint.diff_ae_eq_left /-
 theorem diff_ae_eq_left (h : AEDisjoint μ s t) : (s \ t : Set α) =ᵐ[μ] s :=
   @diff_self_inter _ s t ▸ diff_null_ae_eq_self h
 #align measure_theory.ae_disjoint.diff_ae_eq_left MeasureTheory.AEDisjoint.diff_ae_eq_left
+-/
 
+#print MeasureTheory.AEDisjoint.diff_ae_eq_right /-
 theorem diff_ae_eq_right (h : AEDisjoint μ s t) : (t \ s : Set α) =ᵐ[μ] t :=
   h.symm.diff_ae_eq_left
 #align measure_theory.ae_disjoint.diff_ae_eq_right MeasureTheory.AEDisjoint.diff_ae_eq_right
+-/
 
+#print MeasureTheory.AEDisjoint.measure_diff_left /-
 theorem measure_diff_left (h : AEDisjoint μ s t) : μ (s \ t) = μ s :=
   measure_congr h.diff_ae_eq_left
 #align measure_theory.ae_disjoint.measure_diff_left MeasureTheory.AEDisjoint.measure_diff_left
+-/
 
+#print MeasureTheory.AEDisjoint.measure_diff_right /-
 theorem measure_diff_right (h : AEDisjoint μ s t) : μ (t \ s) = μ t :=
   measure_congr h.diff_ae_eq_right
 #align measure_theory.ae_disjoint.measure_diff_right MeasureTheory.AEDisjoint.measure_diff_right
+-/
 
+#print MeasureTheory.AEDisjoint.exists_disjoint_diff /-
 /-- If `s` and `t` are `μ`-a.e. disjoint, then `s \ u` and `t` are disjoint for some measurable null
 set `u`. -/
 theorem exists_disjoint_diff (h : AEDisjoint μ s t) :
@@ -167,24 +198,33 @@ theorem exists_disjoint_diff (h : AEDisjoint μ s t) :
     disjoint_sdiff_self_left.mono_left fun x hx =>
       ⟨hx.1, fun hxt => hx.2 <| subset_toMeasurable _ _ ⟨hx.1, hxt⟩⟩⟩
 #align measure_theory.ae_disjoint.exists_disjoint_diff MeasureTheory.AEDisjoint.exists_disjoint_diff
+-/
 
+#print MeasureTheory.AEDisjoint.of_null_right /-
 theorem of_null_right (h : μ t = 0) : AEDisjoint μ s t :=
   measure_mono_null (inter_subset_right _ _) h
 #align measure_theory.ae_disjoint.of_null_right MeasureTheory.AEDisjoint.of_null_right
+-/
 
+#print MeasureTheory.AEDisjoint.of_null_left /-
 theorem of_null_left (h : μ s = 0) : AEDisjoint μ s t :=
   (of_null_right h).symm
 #align measure_theory.ae_disjoint.of_null_left MeasureTheory.AEDisjoint.of_null_left
+-/
 
 end AeDisjoint
 
+#print MeasureTheory.aedisjoint_compl_left /-
 theorem aedisjoint_compl_left : AEDisjoint μ (sᶜ) s :=
   (@disjoint_compl_left _ _ s).AEDisjoint
 #align measure_theory.ae_disjoint_compl_left MeasureTheory.aedisjoint_compl_left
+-/
 
+#print MeasureTheory.aedisjoint_compl_right /-
 theorem aedisjoint_compl_right : AEDisjoint μ s (sᶜ) :=
   (@disjoint_compl_right _ _ s).AEDisjoint
 #align measure_theory.ae_disjoint_compl_right MeasureTheory.aedisjoint_compl_right
+-/
 
 end MeasureTheory
 
Diff
@@ -37,7 +37,7 @@ def AEDisjoint (s t : Set α) :=
 
 variable {μ} {s t u v : Set α}
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (j «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (j «expr ≠ » i) -/
 /-- If `s : ι → set α` is a countable family of pairwise a.e. disjoint sets, then there exists a
 family of measurable null sets `t i` such that `s i \ t i` are pairwise disjoint. -/
 theorem exists_null_pairwise_disjoint_diff [Countable ι] {s : ι → Set α}
Diff
@@ -53,7 +53,7 @@ theorem exists_null_pairwise_disjoint_diff [Countable ι] {s : ι → Set α}
   · simp only [Pairwise, disjoint_left, on_fun, mem_diff, not_and, and_imp, Classical.not_not]
     intro i j hne x hi hU hj
     replace hU : x ∉ s i ∩ ⋃ (j) (_ : j ≠ i), s j := fun h => hU (subset_to_measurable _ _ h)
-    simp only [mem_inter_iff, mem_Union, not_and, not_exists] at hU
+    simp only [mem_inter_iff, mem_Union, not_and, not_exists] at hU 
     exact (hU hi j hne.symm hj).elim
 #align measure_theory.exists_null_pairwise_disjoint_diff MeasureTheory.exists_null_pairwise_disjoint_diff
 
Diff
@@ -37,12 +37,6 @@ def AEDisjoint (s t : Set α) :=
 
 variable {μ} {s t u v : Set α}
 
-/- warning: measure_theory.exists_null_pairwise_disjoint_diff -> MeasureTheory.exists_null_pairwise_disjoint_diff is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} [_inst_1 : Countable.{succ u1} ι] {s : ι -> (Set.{u2} α)}, (Pairwise.{u1} ι (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (MeasureTheory.AEDisjoint.{u2} α m μ) s)) -> (Exists.{max (succ u1) (succ u2)} (ι -> (Set.{u2} α)) (fun (t : ι -> (Set.{u2} α)) => And (forall (i : ι), MeasurableSet.{u2} α m (t i)) (And (forall (i : ι), Eq.{1} ENNReal (coeFn.{succ u2, succ u2} (MeasureTheory.Measure.{u2} α m) (fun (_x : MeasureTheory.Measure.{u2} α m) => (Set.{u2} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u2} α m) μ (t i)) (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero)))) (Pairwise.{u1} ι (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (Disjoint.{u2} (Set.{u2} α) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.completeBooleanAlgebra.{u2} α)))))) (GeneralizedBooleanAlgebra.toOrderBot.{u2} (Set.{u2} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u2} (Set.{u2} α) (Set.booleanAlgebra.{u2} α)))) (fun (i : ι) => SDiff.sdiff.{u2} (Set.{u2} α) (BooleanAlgebra.toHasSdiff.{u2} (Set.{u2} α) (Set.booleanAlgebra.{u2} α)) (s i) (t i)))))))
-but is expected to have type
-  forall {ι : Type.{u2}} {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} [_inst_1 : Countable.{succ u2} ι] {s : ι -> (Set.{u1} α)}, (Pairwise.{u2} ι (Function.onFun.{succ u2, succ u1, 1} ι (Set.{u1} α) Prop (MeasureTheory.AEDisjoint.{u1} α m μ) s)) -> (Exists.{max (succ u2) (succ u1)} (ι -> (Set.{u1} α)) (fun (t : ι -> (Set.{u1} α)) => And (forall (i : ι), MeasurableSet.{u1} α m (t i)) (And (forall (i : ι), Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) (t i)) (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero))) (Pairwise.{u2} ι (Function.onFun.{succ u2, succ u1, 1} ι (Set.{u1} α) Prop (Disjoint.{u1} (Set.{u1} α) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))) (BoundedOrder.toOrderBot.{u1} (Set.{u1} α) (Preorder.toLE.{u1} (Set.{u1} α) (PartialOrder.toPreorder.{u1} (Set.{u1} α) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))))) (CompleteLattice.toBoundedOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α))))))) (fun (i : ι) => SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) (s i) (t i)))))))
-Case conversion may be inaccurate. Consider using '#align measure_theory.exists_null_pairwise_disjoint_diff MeasureTheory.exists_null_pairwise_disjoint_diffₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (j «expr ≠ » i) -/
 /-- If `s : ι → set α` is a countable family of pairwise a.e. disjoint sets, then there exists a
 family of measurable null sets `t i` such that `s i \ t i` are pairwise disjoint. -/
@@ -65,12 +59,6 @@ theorem exists_null_pairwise_disjoint_diff [Countable ι] {s : ι → Set α}
 
 namespace AeDisjoint
 
-/- warning: measure_theory.ae_disjoint.eq -> MeasureTheory.AEDisjoint.eq is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) s t)) (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero))))
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) (Inter.inter.{u1} (Set.{u1} α) (Set.instInterSet.{u1} α) s t)) (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero)))
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.eq MeasureTheory.AEDisjoint.eqₓ'. -/
 protected theorem eq (h : AEDisjoint μ s t) : μ (s ∩ t) = 0 :=
   h
 #align measure_theory.ae_disjoint.eq MeasureTheory.AEDisjoint.eq
@@ -92,33 +80,15 @@ protected theorem comm : AEDisjoint μ s t ↔ AEDisjoint μ t s :=
 #align measure_theory.ae_disjoint.comm MeasureTheory.AEDisjoint.comm
 -/
 
-/- warning: disjoint.ae_disjoint -> Disjoint.aedisjoint is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (Disjoint.{u1} (Set.{u1} α) (CompleteSemilatticeInf.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.completeBooleanAlgebra.{u1} α)))))) (GeneralizedBooleanAlgebra.toOrderBot.{u1} (Set.{u1} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α))) s t) -> (MeasureTheory.AEDisjoint.{u1} α m μ s t)
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (Disjoint.{u1} (Set.{u1} α) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))) (BoundedOrder.toOrderBot.{u1} (Set.{u1} α) (Preorder.toLE.{u1} (Set.{u1} α) (PartialOrder.toPreorder.{u1} (Set.{u1} α) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))))) (CompleteLattice.toBoundedOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))) s t) -> (MeasureTheory.AEDisjoint.{u1} α m μ s t)
-Case conversion may be inaccurate. Consider using '#align disjoint.ae_disjoint Disjoint.aedisjointₓ'. -/
 protected theorem Disjoint.aedisjoint (h : Disjoint s t) : AEDisjoint μ s t := by
   rw [ae_disjoint, disjoint_iff_inter_eq_empty.1 h, measure_empty]
 #align disjoint.ae_disjoint Disjoint.aedisjoint
 
-/- warning: pairwise.ae_disjoint -> Pairwise.aedisjoint is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {f : ι -> (Set.{u2} α)}, (Pairwise.{u1} ι (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (Disjoint.{u2} (Set.{u2} α) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.completeBooleanAlgebra.{u2} α)))))) (GeneralizedBooleanAlgebra.toOrderBot.{u2} (Set.{u2} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u2} (Set.{u2} α) (Set.booleanAlgebra.{u2} α)))) f)) -> (Pairwise.{u1} ι (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (MeasureTheory.AEDisjoint.{u2} α m μ) f))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {f : ι -> (Set.{u2} α)}, (Pairwise.{u1} ι (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (Disjoint.{u2} (Set.{u2} α) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))) (BoundedOrder.toOrderBot.{u2} (Set.{u2} α) (Preorder.toLE.{u2} (Set.{u2} α) (PartialOrder.toPreorder.{u2} (Set.{u2} α) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))))) (CompleteLattice.toBoundedOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α))))))) f)) -> (Pairwise.{u1} ι (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (MeasureTheory.AEDisjoint.{u2} α m μ) f))
-Case conversion may be inaccurate. Consider using '#align pairwise.ae_disjoint Pairwise.aedisjointₓ'. -/
 protected theorem Pairwise.aedisjoint {f : ι → Set α} (hf : Pairwise (Disjoint on f)) :
     Pairwise (AEDisjoint μ on f) :=
   hf.mono fun i j h => h.AEDisjoint
 #align pairwise.ae_disjoint Pairwise.aedisjoint
 
-/- warning: set.pairwise_disjoint.ae_disjoint -> Set.PairwiseDisjoint.aedisjoint is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {f : ι -> (Set.{u2} α)} {s : Set.{u1} ι}, (Set.PairwiseDisjoint.{u2, u1} (Set.{u2} α) ι (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.completeBooleanAlgebra.{u2} α)))))) (GeneralizedBooleanAlgebra.toOrderBot.{u2} (Set.{u2} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u2} (Set.{u2} α) (Set.booleanAlgebra.{u2} α))) s f) -> (Set.Pairwise.{u1} ι s (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (MeasureTheory.AEDisjoint.{u2} α m μ) f))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {f : ι -> (Set.{u2} α)} {s : Set.{u1} ι}, (Set.PairwiseDisjoint.{u2, u1} (Set.{u2} α) ι (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))) (BoundedOrder.toOrderBot.{u2} (Set.{u2} α) (Preorder.toLE.{u2} (Set.{u2} α) (PartialOrder.toPreorder.{u2} (Set.{u2} α) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))))) (CompleteLattice.toBoundedOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))) s f) -> (Set.Pairwise.{u1} ι s (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (MeasureTheory.AEDisjoint.{u2} α m μ) f))
-Case conversion may be inaccurate. Consider using '#align set.pairwise_disjoint.ae_disjoint Set.PairwiseDisjoint.aedisjointₓ'. -/
 protected theorem Set.PairwiseDisjoint.aedisjoint {f : ι → Set α} {s : Set ι}
     (hf : s.PairwiseDisjoint f) : s.Pairwise (AEDisjoint μ on f) :=
   hf.mono' fun i j h => h.AEDisjoint
@@ -143,118 +113,52 @@ protected theorem congr (h : AEDisjoint μ s t) (hu : u =ᵐ[μ] s) (hv : v =ᵐ
 #align measure_theory.ae_disjoint.congr MeasureTheory.AEDisjoint.congr
 -/
 
-/- warning: measure_theory.ae_disjoint.Union_left_iff -> MeasureTheory.AEDisjoint.iUnion_left_iff is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {t : Set.{u2} α} [_inst_1 : Countable.{succ u1} ι] {s : ι -> (Set.{u2} α)}, Iff (MeasureTheory.AEDisjoint.{u2} α m μ (Set.iUnion.{u2, succ u1} α ι (fun (i : ι) => s i)) t) (forall (i : ι), MeasureTheory.AEDisjoint.{u2} α m μ (s i) t)
-but is expected to have type
-  forall {ι : Type.{u2}} {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {t : Set.{u1} α} [_inst_1 : Countable.{succ u2} ι] {s : ι -> (Set.{u1} α)}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ (Set.iUnion.{u1, succ u2} α ι (fun (i : ι) => s i)) t) (forall (i : ι), MeasureTheory.AEDisjoint.{u1} α m μ (s i) t)
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.Union_left_iff MeasureTheory.AEDisjoint.iUnion_left_iffₓ'. -/
 @[simp]
 theorem iUnion_left_iff [Countable ι] {s : ι → Set α} :
     AEDisjoint μ (⋃ i, s i) t ↔ ∀ i, AEDisjoint μ (s i) t := by
   simp only [ae_disjoint, Union_inter, measure_Union_null_iff]
 #align measure_theory.ae_disjoint.Union_left_iff MeasureTheory.AEDisjoint.iUnion_left_iff
 
-/- warning: measure_theory.ae_disjoint.Union_right_iff -> MeasureTheory.AEDisjoint.iUnion_right_iff is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {s : Set.{u2} α} [_inst_1 : Countable.{succ u1} ι] {t : ι -> (Set.{u2} α)}, Iff (MeasureTheory.AEDisjoint.{u2} α m μ s (Set.iUnion.{u2, succ u1} α ι (fun (i : ι) => t i))) (forall (i : ι), MeasureTheory.AEDisjoint.{u2} α m μ s (t i))
-but is expected to have type
-  forall {ι : Type.{u2}} {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} [_inst_1 : Countable.{succ u2} ι] {t : ι -> (Set.{u1} α)}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ s (Set.iUnion.{u1, succ u2} α ι (fun (i : ι) => t i))) (forall (i : ι), MeasureTheory.AEDisjoint.{u1} α m μ s (t i))
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.Union_right_iff MeasureTheory.AEDisjoint.iUnion_right_iffₓ'. -/
 @[simp]
 theorem iUnion_right_iff [Countable ι] {t : ι → Set α} :
     AEDisjoint μ s (⋃ i, t i) ↔ ∀ i, AEDisjoint μ s (t i) := by
   simp only [ae_disjoint, inter_Union, measure_Union_null_iff]
 #align measure_theory.ae_disjoint.Union_right_iff MeasureTheory.AEDisjoint.iUnion_right_iff
 
-/- warning: measure_theory.ae_disjoint.union_left_iff -> MeasureTheory.AEDisjoint.union_left_iff is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) s t) u) (And (MeasureTheory.AEDisjoint.{u1} α m μ s u) (MeasureTheory.AEDisjoint.{u1} α m μ t u))
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) s t) u) (And (MeasureTheory.AEDisjoint.{u1} α m μ s u) (MeasureTheory.AEDisjoint.{u1} α m μ t u))
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.union_left_iff MeasureTheory.AEDisjoint.union_left_iffₓ'. -/
 @[simp]
 theorem union_left_iff : AEDisjoint μ (s ∪ t) u ↔ AEDisjoint μ s u ∧ AEDisjoint μ t u := by
   simp [union_eq_Union, and_comm]
 #align measure_theory.ae_disjoint.union_left_iff MeasureTheory.AEDisjoint.union_left_iff
 
-/- warning: measure_theory.ae_disjoint.union_right_iff -> MeasureTheory.AEDisjoint.union_right_iff is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ s (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) t u)) (And (MeasureTheory.AEDisjoint.{u1} α m μ s t) (MeasureTheory.AEDisjoint.{u1} α m μ s u))
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ s (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) t u)) (And (MeasureTheory.AEDisjoint.{u1} α m μ s t) (MeasureTheory.AEDisjoint.{u1} α m μ s u))
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.union_right_iff MeasureTheory.AEDisjoint.union_right_iffₓ'. -/
 @[simp]
 theorem union_right_iff : AEDisjoint μ s (t ∪ u) ↔ AEDisjoint μ s t ∧ AEDisjoint μ s u := by
   simp [union_eq_Union, and_comm]
 #align measure_theory.ae_disjoint.union_right_iff MeasureTheory.AEDisjoint.union_right_iff
 
-/- warning: measure_theory.ae_disjoint.union_left -> MeasureTheory.AEDisjoint.union_left is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s u) -> (MeasureTheory.AEDisjoint.{u1} α m μ t u) -> (MeasureTheory.AEDisjoint.{u1} α m μ (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) s t) u)
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s u) -> (MeasureTheory.AEDisjoint.{u1} α m μ t u) -> (MeasureTheory.AEDisjoint.{u1} α m μ (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) s t) u)
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.union_left MeasureTheory.AEDisjoint.union_leftₓ'. -/
 theorem union_left (hs : AEDisjoint μ s u) (ht : AEDisjoint μ t u) : AEDisjoint μ (s ∪ t) u :=
   union_left_iff.mpr ⟨hs, ht⟩
 #align measure_theory.ae_disjoint.union_left MeasureTheory.AEDisjoint.union_left
 
-/- warning: measure_theory.ae_disjoint.union_right -> MeasureTheory.AEDisjoint.union_right is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (MeasureTheory.AEDisjoint.{u1} α m μ s u) -> (MeasureTheory.AEDisjoint.{u1} α m μ s (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) t u))
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (MeasureTheory.AEDisjoint.{u1} α m μ s u) -> (MeasureTheory.AEDisjoint.{u1} α m μ s (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) t u))
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.union_right MeasureTheory.AEDisjoint.union_rightₓ'. -/
 theorem union_right (ht : AEDisjoint μ s t) (hu : AEDisjoint μ s u) : AEDisjoint μ s (t ∪ u) :=
   union_right_iff.2 ⟨ht, hu⟩
 #align measure_theory.ae_disjoint.union_right MeasureTheory.AEDisjoint.union_right
 
-/- warning: measure_theory.ae_disjoint.diff_ae_eq_left -> MeasureTheory.AEDisjoint.diff_ae_eq_left is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Filter.EventuallyEq.{u1, 0} α Prop (MeasureTheory.Measure.ae.{u1} α m μ) (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s t) s)
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Filter.EventuallyEq.{u1, 0} α Prop (MeasureTheory.Measure.ae.{u1} α m μ) (SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) s t) s)
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.diff_ae_eq_left MeasureTheory.AEDisjoint.diff_ae_eq_leftₓ'. -/
 theorem diff_ae_eq_left (h : AEDisjoint μ s t) : (s \ t : Set α) =ᵐ[μ] s :=
   @diff_self_inter _ s t ▸ diff_null_ae_eq_self h
 #align measure_theory.ae_disjoint.diff_ae_eq_left MeasureTheory.AEDisjoint.diff_ae_eq_left
 
-/- warning: measure_theory.ae_disjoint.diff_ae_eq_right -> MeasureTheory.AEDisjoint.diff_ae_eq_right is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Filter.EventuallyEq.{u1, 0} α Prop (MeasureTheory.Measure.ae.{u1} α m μ) (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) t s) t)
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Filter.EventuallyEq.{u1, 0} α Prop (MeasureTheory.Measure.ae.{u1} α m μ) (SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) t s) t)
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.diff_ae_eq_right MeasureTheory.AEDisjoint.diff_ae_eq_rightₓ'. -/
 theorem diff_ae_eq_right (h : AEDisjoint μ s t) : (t \ s : Set α) =ᵐ[μ] t :=
   h.symm.diff_ae_eq_left
 #align measure_theory.ae_disjoint.diff_ae_eq_right MeasureTheory.AEDisjoint.diff_ae_eq_right
 
-/- warning: measure_theory.ae_disjoint.measure_diff_left -> MeasureTheory.AEDisjoint.measure_diff_left is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s t)) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s))
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) (SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) s t)) (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) s))
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.measure_diff_left MeasureTheory.AEDisjoint.measure_diff_leftₓ'. -/
 theorem measure_diff_left (h : AEDisjoint μ s t) : μ (s \ t) = μ s :=
   measure_congr h.diff_ae_eq_left
 #align measure_theory.ae_disjoint.measure_diff_left MeasureTheory.AEDisjoint.measure_diff_left
 
-/- warning: measure_theory.ae_disjoint.measure_diff_right -> MeasureTheory.AEDisjoint.measure_diff_right is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) t s)) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ t))
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) (SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) t s)) (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) t))
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.measure_diff_right MeasureTheory.AEDisjoint.measure_diff_rightₓ'. -/
 theorem measure_diff_right (h : AEDisjoint μ s t) : μ (t \ s) = μ t :=
   measure_congr h.diff_ae_eq_right
 #align measure_theory.ae_disjoint.measure_diff_right MeasureTheory.AEDisjoint.measure_diff_right
 
-/- warning: measure_theory.ae_disjoint.exists_disjoint_diff -> MeasureTheory.AEDisjoint.exists_disjoint_diff is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Exists.{succ u1} (Set.{u1} α) (fun (u : Set.{u1} α) => And (MeasurableSet.{u1} α m u) (And (Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ u) (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero)))) (Disjoint.{u1} (Set.{u1} α) (CompleteSemilatticeInf.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.completeBooleanAlgebra.{u1} α)))))) (GeneralizedBooleanAlgebra.toOrderBot.{u1} (Set.{u1} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α))) (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s u) t))))
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Exists.{succ u1} (Set.{u1} α) (fun (u : Set.{u1} α) => And (MeasurableSet.{u1} α m u) (And (Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) u) (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero))) (Disjoint.{u1} (Set.{u1} α) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))) (BoundedOrder.toOrderBot.{u1} (Set.{u1} α) (Preorder.toLE.{u1} (Set.{u1} α) (PartialOrder.toPreorder.{u1} (Set.{u1} α) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))))) (CompleteLattice.toBoundedOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))) (SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) s u) t))))
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.exists_disjoint_diff MeasureTheory.AEDisjoint.exists_disjoint_diffₓ'. -/
 /-- If `s` and `t` are `μ`-a.e. disjoint, then `s \ u` and `t` are disjoint for some measurable null
 set `u`. -/
 theorem exists_disjoint_diff (h : AEDisjoint μ s t) :
@@ -264,44 +168,20 @@ theorem exists_disjoint_diff (h : AEDisjoint μ s t) :
       ⟨hx.1, fun hxt => hx.2 <| subset_toMeasurable _ _ ⟨hx.1, hxt⟩⟩⟩
 #align measure_theory.ae_disjoint.exists_disjoint_diff MeasureTheory.AEDisjoint.exists_disjoint_diff
 
-/- warning: measure_theory.ae_disjoint.of_null_right -> MeasureTheory.AEDisjoint.of_null_right is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ t) (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero)))) -> (MeasureTheory.AEDisjoint.{u1} α m μ s t)
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) t) (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero))) -> (MeasureTheory.AEDisjoint.{u1} α m μ s t)
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.of_null_right MeasureTheory.AEDisjoint.of_null_rightₓ'. -/
 theorem of_null_right (h : μ t = 0) : AEDisjoint μ s t :=
   measure_mono_null (inter_subset_right _ _) h
 #align measure_theory.ae_disjoint.of_null_right MeasureTheory.AEDisjoint.of_null_right
 
-/- warning: measure_theory.ae_disjoint.of_null_left -> MeasureTheory.AEDisjoint.of_null_left is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero)))) -> (MeasureTheory.AEDisjoint.{u1} α m μ s t)
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) s) (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero))) -> (MeasureTheory.AEDisjoint.{u1} α m μ s t)
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.of_null_left MeasureTheory.AEDisjoint.of_null_leftₓ'. -/
 theorem of_null_left (h : μ s = 0) : AEDisjoint μ s t :=
   (of_null_right h).symm
 #align measure_theory.ae_disjoint.of_null_left MeasureTheory.AEDisjoint.of_null_left
 
 end AeDisjoint
 
-/- warning: measure_theory.ae_disjoint_compl_left -> MeasureTheory.aedisjoint_compl_left is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α}, MeasureTheory.AEDisjoint.{u1} α m μ (HasCompl.compl.{u1} (Set.{u1} α) (BooleanAlgebra.toHasCompl.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s) s
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α}, MeasureTheory.AEDisjoint.{u1} α m μ (HasCompl.compl.{u1} (Set.{u1} α) (BooleanAlgebra.toHasCompl.{u1} (Set.{u1} α) (Set.instBooleanAlgebraSet.{u1} α)) s) s
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint_compl_left MeasureTheory.aedisjoint_compl_leftₓ'. -/
 theorem aedisjoint_compl_left : AEDisjoint μ (sᶜ) s :=
   (@disjoint_compl_left _ _ s).AEDisjoint
 #align measure_theory.ae_disjoint_compl_left MeasureTheory.aedisjoint_compl_left
 
-/- warning: measure_theory.ae_disjoint_compl_right -> MeasureTheory.aedisjoint_compl_right is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α}, MeasureTheory.AEDisjoint.{u1} α m μ s (HasCompl.compl.{u1} (Set.{u1} α) (BooleanAlgebra.toHasCompl.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s)
-but is expected to have type
-  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α}, MeasureTheory.AEDisjoint.{u1} α m μ s (HasCompl.compl.{u1} (Set.{u1} α) (BooleanAlgebra.toHasCompl.{u1} (Set.{u1} α) (Set.instBooleanAlgebraSet.{u1} α)) s)
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint_compl_right MeasureTheory.aedisjoint_compl_rightₓ'. -/
 theorem aedisjoint_compl_right : AEDisjoint μ s (sᶜ) :=
   (@disjoint_compl_right _ _ s).AEDisjoint
 #align measure_theory.ae_disjoint_compl_right MeasureTheory.aedisjoint_compl_right
Diff
@@ -143,29 +143,29 @@ protected theorem congr (h : AEDisjoint μ s t) (hu : u =ᵐ[μ] s) (hv : v =ᵐ
 #align measure_theory.ae_disjoint.congr MeasureTheory.AEDisjoint.congr
 -/
 
-/- warning: measure_theory.ae_disjoint.Union_left_iff -> MeasureTheory.AEDisjoint.unionᵢ_left_iff is a dubious translation:
+/- warning: measure_theory.ae_disjoint.Union_left_iff -> MeasureTheory.AEDisjoint.iUnion_left_iff is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {t : Set.{u2} α} [_inst_1 : Countable.{succ u1} ι] {s : ι -> (Set.{u2} α)}, Iff (MeasureTheory.AEDisjoint.{u2} α m μ (Set.unionᵢ.{u2, succ u1} α ι (fun (i : ι) => s i)) t) (forall (i : ι), MeasureTheory.AEDisjoint.{u2} α m μ (s i) t)
+  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {t : Set.{u2} α} [_inst_1 : Countable.{succ u1} ι] {s : ι -> (Set.{u2} α)}, Iff (MeasureTheory.AEDisjoint.{u2} α m μ (Set.iUnion.{u2, succ u1} α ι (fun (i : ι) => s i)) t) (forall (i : ι), MeasureTheory.AEDisjoint.{u2} α m μ (s i) t)
 but is expected to have type
-  forall {ι : Type.{u2}} {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {t : Set.{u1} α} [_inst_1 : Countable.{succ u2} ι] {s : ι -> (Set.{u1} α)}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ (Set.unionᵢ.{u1, succ u2} α ι (fun (i : ι) => s i)) t) (forall (i : ι), MeasureTheory.AEDisjoint.{u1} α m μ (s i) t)
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.Union_left_iff MeasureTheory.AEDisjoint.unionᵢ_left_iffₓ'. -/
+  forall {ι : Type.{u2}} {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {t : Set.{u1} α} [_inst_1 : Countable.{succ u2} ι] {s : ι -> (Set.{u1} α)}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ (Set.iUnion.{u1, succ u2} α ι (fun (i : ι) => s i)) t) (forall (i : ι), MeasureTheory.AEDisjoint.{u1} α m μ (s i) t)
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.Union_left_iff MeasureTheory.AEDisjoint.iUnion_left_iffₓ'. -/
 @[simp]
-theorem unionᵢ_left_iff [Countable ι] {s : ι → Set α} :
+theorem iUnion_left_iff [Countable ι] {s : ι → Set α} :
     AEDisjoint μ (⋃ i, s i) t ↔ ∀ i, AEDisjoint μ (s i) t := by
   simp only [ae_disjoint, Union_inter, measure_Union_null_iff]
-#align measure_theory.ae_disjoint.Union_left_iff MeasureTheory.AEDisjoint.unionᵢ_left_iff
+#align measure_theory.ae_disjoint.Union_left_iff MeasureTheory.AEDisjoint.iUnion_left_iff
 
-/- warning: measure_theory.ae_disjoint.Union_right_iff -> MeasureTheory.AEDisjoint.unionᵢ_right_iff is a dubious translation:
+/- warning: measure_theory.ae_disjoint.Union_right_iff -> MeasureTheory.AEDisjoint.iUnion_right_iff is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {s : Set.{u2} α} [_inst_1 : Countable.{succ u1} ι] {t : ι -> (Set.{u2} α)}, Iff (MeasureTheory.AEDisjoint.{u2} α m μ s (Set.unionᵢ.{u2, succ u1} α ι (fun (i : ι) => t i))) (forall (i : ι), MeasureTheory.AEDisjoint.{u2} α m μ s (t i))
+  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {s : Set.{u2} α} [_inst_1 : Countable.{succ u1} ι] {t : ι -> (Set.{u2} α)}, Iff (MeasureTheory.AEDisjoint.{u2} α m μ s (Set.iUnion.{u2, succ u1} α ι (fun (i : ι) => t i))) (forall (i : ι), MeasureTheory.AEDisjoint.{u2} α m μ s (t i))
 but is expected to have type
-  forall {ι : Type.{u2}} {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} [_inst_1 : Countable.{succ u2} ι] {t : ι -> (Set.{u1} α)}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ s (Set.unionᵢ.{u1, succ u2} α ι (fun (i : ι) => t i))) (forall (i : ι), MeasureTheory.AEDisjoint.{u1} α m μ s (t i))
-Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.Union_right_iff MeasureTheory.AEDisjoint.unionᵢ_right_iffₓ'. -/
+  forall {ι : Type.{u2}} {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} [_inst_1 : Countable.{succ u2} ι] {t : ι -> (Set.{u1} α)}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ s (Set.iUnion.{u1, succ u2} α ι (fun (i : ι) => t i))) (forall (i : ι), MeasureTheory.AEDisjoint.{u1} α m μ s (t i))
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.Union_right_iff MeasureTheory.AEDisjoint.iUnion_right_iffₓ'. -/
 @[simp]
-theorem unionᵢ_right_iff [Countable ι] {t : ι → Set α} :
+theorem iUnion_right_iff [Countable ι] {t : ι → Set α} :
     AEDisjoint μ s (⋃ i, t i) ↔ ∀ i, AEDisjoint μ s (t i) := by
   simp only [ae_disjoint, inter_Union, measure_Union_null_iff]
-#align measure_theory.ae_disjoint.Union_right_iff MeasureTheory.AEDisjoint.unionᵢ_right_iff
+#align measure_theory.ae_disjoint.Union_right_iff MeasureTheory.AEDisjoint.iUnion_right_iff
 
 /- warning: measure_theory.ae_disjoint.union_left_iff -> MeasureTheory.AEDisjoint.union_left_iff is a dubious translation:
 lean 3 declaration is
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Yury Kudryashov
 
 ! This file was ported from Lean 3 source module measure_theory.measure.ae_disjoint
-! leanprover-community/mathlib commit bc7d81beddb3d6c66f71449c5bc76c38cb77cf9e
+! leanprover-community/mathlib commit b5ad141426bb005414324f89719c77c0aa3ec612
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -13,6 +13,9 @@ import Mathbin.MeasureTheory.Measure.MeasureSpaceDef
 /-!
 # Almost everywhere disjoint sets
 
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
 We say that sets `s` and `t` are `μ`-a.e. disjoint (see `measure_theory.ae_disjoint`) if their
 intersection has measure zero. This assumption can be used instead of `disjoint` in most theorems in
 measure theory.
Diff
@@ -25,18 +25,26 @@ namespace MeasureTheory
 
 variable {ι α : Type _} {m : MeasurableSpace α} (μ : Measure α)
 
+#print MeasureTheory.AEDisjoint /-
 /-- Two sets are said to be `μ`-a.e. disjoint if their intersection has measure zero. -/
-def AeDisjoint (s t : Set α) :=
+def AEDisjoint (s t : Set α) :=
   μ (s ∩ t) = 0
-#align measure_theory.ae_disjoint MeasureTheory.AeDisjoint
+#align measure_theory.ae_disjoint MeasureTheory.AEDisjoint
+-/
 
 variable {μ} {s t u v : Set α}
 
+/- warning: measure_theory.exists_null_pairwise_disjoint_diff -> MeasureTheory.exists_null_pairwise_disjoint_diff is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} [_inst_1 : Countable.{succ u1} ι] {s : ι -> (Set.{u2} α)}, (Pairwise.{u1} ι (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (MeasureTheory.AEDisjoint.{u2} α m μ) s)) -> (Exists.{max (succ u1) (succ u2)} (ι -> (Set.{u2} α)) (fun (t : ι -> (Set.{u2} α)) => And (forall (i : ι), MeasurableSet.{u2} α m (t i)) (And (forall (i : ι), Eq.{1} ENNReal (coeFn.{succ u2, succ u2} (MeasureTheory.Measure.{u2} α m) (fun (_x : MeasureTheory.Measure.{u2} α m) => (Set.{u2} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u2} α m) μ (t i)) (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero)))) (Pairwise.{u1} ι (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (Disjoint.{u2} (Set.{u2} α) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.completeBooleanAlgebra.{u2} α)))))) (GeneralizedBooleanAlgebra.toOrderBot.{u2} (Set.{u2} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u2} (Set.{u2} α) (Set.booleanAlgebra.{u2} α)))) (fun (i : ι) => SDiff.sdiff.{u2} (Set.{u2} α) (BooleanAlgebra.toHasSdiff.{u2} (Set.{u2} α) (Set.booleanAlgebra.{u2} α)) (s i) (t i)))))))
+but is expected to have type
+  forall {ι : Type.{u2}} {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} [_inst_1 : Countable.{succ u2} ι] {s : ι -> (Set.{u1} α)}, (Pairwise.{u2} ι (Function.onFun.{succ u2, succ u1, 1} ι (Set.{u1} α) Prop (MeasureTheory.AEDisjoint.{u1} α m μ) s)) -> (Exists.{max (succ u2) (succ u1)} (ι -> (Set.{u1} α)) (fun (t : ι -> (Set.{u1} α)) => And (forall (i : ι), MeasurableSet.{u1} α m (t i)) (And (forall (i : ι), Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) (t i)) (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero))) (Pairwise.{u2} ι (Function.onFun.{succ u2, succ u1, 1} ι (Set.{u1} α) Prop (Disjoint.{u1} (Set.{u1} α) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))) (BoundedOrder.toOrderBot.{u1} (Set.{u1} α) (Preorder.toLE.{u1} (Set.{u1} α) (PartialOrder.toPreorder.{u1} (Set.{u1} α) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))))) (CompleteLattice.toBoundedOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α))))))) (fun (i : ι) => SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) (s i) (t i)))))))
+Case conversion may be inaccurate. Consider using '#align measure_theory.exists_null_pairwise_disjoint_diff MeasureTheory.exists_null_pairwise_disjoint_diffₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (j «expr ≠ » i) -/
 /-- If `s : ι → set α` is a countable family of pairwise a.e. disjoint sets, then there exists a
 family of measurable null sets `t i` such that `s i \ t i` are pairwise disjoint. -/
 theorem exists_null_pairwise_disjoint_diff [Countable ι] {s : ι → Set α}
-    (hd : Pairwise (AeDisjoint μ on s)) :
+    (hd : Pairwise (AEDisjoint μ on s)) :
     ∃ t : ι → Set α,
       (∀ i, MeasurableSet (t i)) ∧ (∀ i, μ (t i) = 0) ∧ Pairwise (Disjoint on fun i => s i \ t i) :=
   by
@@ -54,120 +62,246 @@ theorem exists_null_pairwise_disjoint_diff [Countable ι] {s : ι → Set α}
 
 namespace AeDisjoint
 
-protected theorem eq (h : AeDisjoint μ s t) : μ (s ∩ t) = 0 :=
+/- warning: measure_theory.ae_disjoint.eq -> MeasureTheory.AEDisjoint.eq is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) s t)) (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero))))
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) (Inter.inter.{u1} (Set.{u1} α) (Set.instInterSet.{u1} α) s t)) (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero)))
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.eq MeasureTheory.AEDisjoint.eqₓ'. -/
+protected theorem eq (h : AEDisjoint μ s t) : μ (s ∩ t) = 0 :=
   h
-#align measure_theory.ae_disjoint.eq MeasureTheory.AeDisjoint.eq
+#align measure_theory.ae_disjoint.eq MeasureTheory.AEDisjoint.eq
 
+#print MeasureTheory.AEDisjoint.symm /-
 @[symm]
-protected theorem symm (h : AeDisjoint μ s t) : AeDisjoint μ t s := by rwa [ae_disjoint, inter_comm]
-#align measure_theory.ae_disjoint.symm MeasureTheory.AeDisjoint.symm
+protected theorem symm (h : AEDisjoint μ s t) : AEDisjoint μ t s := by rwa [ae_disjoint, inter_comm]
+#align measure_theory.ae_disjoint.symm MeasureTheory.AEDisjoint.symm
+-/
 
-protected theorem symmetric : Symmetric (AeDisjoint μ) := fun s t h => h.symm
-#align measure_theory.ae_disjoint.symmetric MeasureTheory.AeDisjoint.symmetric
+#print MeasureTheory.AEDisjoint.symmetric /-
+protected theorem symmetric : Symmetric (AEDisjoint μ) := fun s t h => h.symm
+#align measure_theory.ae_disjoint.symmetric MeasureTheory.AEDisjoint.symmetric
+-/
 
-protected theorem comm : AeDisjoint μ s t ↔ AeDisjoint μ t s :=
+#print MeasureTheory.AEDisjoint.comm /-
+protected theorem comm : AEDisjoint μ s t ↔ AEDisjoint μ t s :=
   ⟨fun h => h.symm, fun h => h.symm⟩
-#align measure_theory.ae_disjoint.comm MeasureTheory.AeDisjoint.comm
+#align measure_theory.ae_disjoint.comm MeasureTheory.AEDisjoint.comm
+-/
 
-protected theorem Disjoint.aeDisjoint (h : Disjoint s t) : AeDisjoint μ s t := by
+/- warning: disjoint.ae_disjoint -> Disjoint.aedisjoint is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (Disjoint.{u1} (Set.{u1} α) (CompleteSemilatticeInf.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.completeBooleanAlgebra.{u1} α)))))) (GeneralizedBooleanAlgebra.toOrderBot.{u1} (Set.{u1} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α))) s t) -> (MeasureTheory.AEDisjoint.{u1} α m μ s t)
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (Disjoint.{u1} (Set.{u1} α) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))) (BoundedOrder.toOrderBot.{u1} (Set.{u1} α) (Preorder.toLE.{u1} (Set.{u1} α) (PartialOrder.toPreorder.{u1} (Set.{u1} α) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))))) (CompleteLattice.toBoundedOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))) s t) -> (MeasureTheory.AEDisjoint.{u1} α m μ s t)
+Case conversion may be inaccurate. Consider using '#align disjoint.ae_disjoint Disjoint.aedisjointₓ'. -/
+protected theorem Disjoint.aedisjoint (h : Disjoint s t) : AEDisjoint μ s t := by
   rw [ae_disjoint, disjoint_iff_inter_eq_empty.1 h, measure_empty]
-#align disjoint.ae_disjoint Disjoint.aeDisjoint
-
-protected theorem Pairwise.aeDisjoint {f : ι → Set α} (hf : Pairwise (Disjoint on f)) :
-    Pairwise (AeDisjoint μ on f) :=
-  hf.mono fun i j h => h.AeDisjoint
-#align pairwise.ae_disjoint Pairwise.aeDisjoint
-
-protected theorem Set.PairwiseDisjoint.aeDisjoint {f : ι → Set α} {s : Set ι}
-    (hf : s.PairwiseDisjoint f) : s.Pairwise (AeDisjoint μ on f) :=
-  hf.mono' fun i j h => h.AeDisjoint
-#align set.pairwise_disjoint.ae_disjoint Set.PairwiseDisjoint.aeDisjoint
-
-theorem mono_ae (h : AeDisjoint μ s t) (hu : u ≤ᵐ[μ] s) (hv : v ≤ᵐ[μ] t) : AeDisjoint μ u v :=
+#align disjoint.ae_disjoint Disjoint.aedisjoint
+
+/- warning: pairwise.ae_disjoint -> Pairwise.aedisjoint is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {f : ι -> (Set.{u2} α)}, (Pairwise.{u1} ι (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (Disjoint.{u2} (Set.{u2} α) (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.completeBooleanAlgebra.{u2} α)))))) (GeneralizedBooleanAlgebra.toOrderBot.{u2} (Set.{u2} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u2} (Set.{u2} α) (Set.booleanAlgebra.{u2} α)))) f)) -> (Pairwise.{u1} ι (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (MeasureTheory.AEDisjoint.{u2} α m μ) f))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {f : ι -> (Set.{u2} α)}, (Pairwise.{u1} ι (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (Disjoint.{u2} (Set.{u2} α) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))) (BoundedOrder.toOrderBot.{u2} (Set.{u2} α) (Preorder.toLE.{u2} (Set.{u2} α) (PartialOrder.toPreorder.{u2} (Set.{u2} α) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))))) (CompleteLattice.toBoundedOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α))))))) f)) -> (Pairwise.{u1} ι (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (MeasureTheory.AEDisjoint.{u2} α m μ) f))
+Case conversion may be inaccurate. Consider using '#align pairwise.ae_disjoint Pairwise.aedisjointₓ'. -/
+protected theorem Pairwise.aedisjoint {f : ι → Set α} (hf : Pairwise (Disjoint on f)) :
+    Pairwise (AEDisjoint μ on f) :=
+  hf.mono fun i j h => h.AEDisjoint
+#align pairwise.ae_disjoint Pairwise.aedisjoint
+
+/- warning: set.pairwise_disjoint.ae_disjoint -> Set.PairwiseDisjoint.aedisjoint is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {f : ι -> (Set.{u2} α)} {s : Set.{u1} ι}, (Set.PairwiseDisjoint.{u2, u1} (Set.{u2} α) ι (CompleteSemilatticeInf.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.completeBooleanAlgebra.{u2} α)))))) (GeneralizedBooleanAlgebra.toOrderBot.{u2} (Set.{u2} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u2} (Set.{u2} α) (Set.booleanAlgebra.{u2} α))) s f) -> (Set.Pairwise.{u1} ι s (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (MeasureTheory.AEDisjoint.{u2} α m μ) f))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {f : ι -> (Set.{u2} α)} {s : Set.{u1} ι}, (Set.PairwiseDisjoint.{u2, u1} (Set.{u2} α) ι (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))) (BoundedOrder.toOrderBot.{u2} (Set.{u2} α) (Preorder.toLE.{u2} (Set.{u2} α) (PartialOrder.toPreorder.{u2} (Set.{u2} α) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))))) (CompleteLattice.toBoundedOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))) s f) -> (Set.Pairwise.{u1} ι s (Function.onFun.{succ u1, succ u2, 1} ι (Set.{u2} α) Prop (MeasureTheory.AEDisjoint.{u2} α m μ) f))
+Case conversion may be inaccurate. Consider using '#align set.pairwise_disjoint.ae_disjoint Set.PairwiseDisjoint.aedisjointₓ'. -/
+protected theorem Set.PairwiseDisjoint.aedisjoint {f : ι → Set α} {s : Set ι}
+    (hf : s.PairwiseDisjoint f) : s.Pairwise (AEDisjoint μ on f) :=
+  hf.mono' fun i j h => h.AEDisjoint
+#align set.pairwise_disjoint.ae_disjoint Set.PairwiseDisjoint.aedisjoint
+
+#print MeasureTheory.AEDisjoint.mono_ae /-
+theorem mono_ae (h : AEDisjoint μ s t) (hu : u ≤ᵐ[μ] s) (hv : v ≤ᵐ[μ] t) : AEDisjoint μ u v :=
   measure_mono_null_ae (hu.inter hv) h
-#align measure_theory.ae_disjoint.mono_ae MeasureTheory.AeDisjoint.mono_ae
+#align measure_theory.ae_disjoint.mono_ae MeasureTheory.AEDisjoint.mono_ae
+-/
 
-protected theorem mono (h : AeDisjoint μ s t) (hu : u ⊆ s) (hv : v ⊆ t) : AeDisjoint μ u v :=
+#print MeasureTheory.AEDisjoint.mono /-
+protected theorem mono (h : AEDisjoint μ s t) (hu : u ⊆ s) (hv : v ⊆ t) : AEDisjoint μ u v :=
   h.mono_ae hu.EventuallyLE hv.EventuallyLE
-#align measure_theory.ae_disjoint.mono MeasureTheory.AeDisjoint.mono
+#align measure_theory.ae_disjoint.mono MeasureTheory.AEDisjoint.mono
+-/
 
-protected theorem congr (h : AeDisjoint μ s t) (hu : u =ᵐ[μ] s) (hv : v =ᵐ[μ] t) :
-    AeDisjoint μ u v :=
+#print MeasureTheory.AEDisjoint.congr /-
+protected theorem congr (h : AEDisjoint μ s t) (hu : u =ᵐ[μ] s) (hv : v =ᵐ[μ] t) :
+    AEDisjoint μ u v :=
   h.mono_ae (Filter.EventuallyEq.le hu) (Filter.EventuallyEq.le hv)
-#align measure_theory.ae_disjoint.congr MeasureTheory.AeDisjoint.congr
+#align measure_theory.ae_disjoint.congr MeasureTheory.AEDisjoint.congr
+-/
 
+/- warning: measure_theory.ae_disjoint.Union_left_iff -> MeasureTheory.AEDisjoint.unionᵢ_left_iff is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {t : Set.{u2} α} [_inst_1 : Countable.{succ u1} ι] {s : ι -> (Set.{u2} α)}, Iff (MeasureTheory.AEDisjoint.{u2} α m μ (Set.unionᵢ.{u2, succ u1} α ι (fun (i : ι) => s i)) t) (forall (i : ι), MeasureTheory.AEDisjoint.{u2} α m μ (s i) t)
+but is expected to have type
+  forall {ι : Type.{u2}} {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {t : Set.{u1} α} [_inst_1 : Countable.{succ u2} ι] {s : ι -> (Set.{u1} α)}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ (Set.unionᵢ.{u1, succ u2} α ι (fun (i : ι) => s i)) t) (forall (i : ι), MeasureTheory.AEDisjoint.{u1} α m μ (s i) t)
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.Union_left_iff MeasureTheory.AEDisjoint.unionᵢ_left_iffₓ'. -/
 @[simp]
 theorem unionᵢ_left_iff [Countable ι] {s : ι → Set α} :
-    AeDisjoint μ (⋃ i, s i) t ↔ ∀ i, AeDisjoint μ (s i) t := by
+    AEDisjoint μ (⋃ i, s i) t ↔ ∀ i, AEDisjoint μ (s i) t := by
   simp only [ae_disjoint, Union_inter, measure_Union_null_iff]
-#align measure_theory.ae_disjoint.Union_left_iff MeasureTheory.AeDisjoint.unionᵢ_left_iff
-
+#align measure_theory.ae_disjoint.Union_left_iff MeasureTheory.AEDisjoint.unionᵢ_left_iff
+
+/- warning: measure_theory.ae_disjoint.Union_right_iff -> MeasureTheory.AEDisjoint.unionᵢ_right_iff is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} {m : MeasurableSpace.{u2} α} {μ : MeasureTheory.Measure.{u2} α m} {s : Set.{u2} α} [_inst_1 : Countable.{succ u1} ι] {t : ι -> (Set.{u2} α)}, Iff (MeasureTheory.AEDisjoint.{u2} α m μ s (Set.unionᵢ.{u2, succ u1} α ι (fun (i : ι) => t i))) (forall (i : ι), MeasureTheory.AEDisjoint.{u2} α m μ s (t i))
+but is expected to have type
+  forall {ι : Type.{u2}} {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} [_inst_1 : Countable.{succ u2} ι] {t : ι -> (Set.{u1} α)}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ s (Set.unionᵢ.{u1, succ u2} α ι (fun (i : ι) => t i))) (forall (i : ι), MeasureTheory.AEDisjoint.{u1} α m μ s (t i))
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.Union_right_iff MeasureTheory.AEDisjoint.unionᵢ_right_iffₓ'. -/
 @[simp]
 theorem unionᵢ_right_iff [Countable ι] {t : ι → Set α} :
-    AeDisjoint μ s (⋃ i, t i) ↔ ∀ i, AeDisjoint μ s (t i) := by
+    AEDisjoint μ s (⋃ i, t i) ↔ ∀ i, AEDisjoint μ s (t i) := by
   simp only [ae_disjoint, inter_Union, measure_Union_null_iff]
-#align measure_theory.ae_disjoint.Union_right_iff MeasureTheory.AeDisjoint.unionᵢ_right_iff
-
+#align measure_theory.ae_disjoint.Union_right_iff MeasureTheory.AEDisjoint.unionᵢ_right_iff
+
+/- warning: measure_theory.ae_disjoint.union_left_iff -> MeasureTheory.AEDisjoint.union_left_iff is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) s t) u) (And (MeasureTheory.AEDisjoint.{u1} α m μ s u) (MeasureTheory.AEDisjoint.{u1} α m μ t u))
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) s t) u) (And (MeasureTheory.AEDisjoint.{u1} α m μ s u) (MeasureTheory.AEDisjoint.{u1} α m μ t u))
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.union_left_iff MeasureTheory.AEDisjoint.union_left_iffₓ'. -/
 @[simp]
-theorem union_left_iff : AeDisjoint μ (s ∪ t) u ↔ AeDisjoint μ s u ∧ AeDisjoint μ t u := by
+theorem union_left_iff : AEDisjoint μ (s ∪ t) u ↔ AEDisjoint μ s u ∧ AEDisjoint μ t u := by
   simp [union_eq_Union, and_comm]
-#align measure_theory.ae_disjoint.union_left_iff MeasureTheory.AeDisjoint.union_left_iff
-
+#align measure_theory.ae_disjoint.union_left_iff MeasureTheory.AEDisjoint.union_left_iff
+
+/- warning: measure_theory.ae_disjoint.union_right_iff -> MeasureTheory.AEDisjoint.union_right_iff is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ s (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) t u)) (And (MeasureTheory.AEDisjoint.{u1} α m μ s t) (MeasureTheory.AEDisjoint.{u1} α m μ s u))
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, Iff (MeasureTheory.AEDisjoint.{u1} α m μ s (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) t u)) (And (MeasureTheory.AEDisjoint.{u1} α m μ s t) (MeasureTheory.AEDisjoint.{u1} α m μ s u))
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.union_right_iff MeasureTheory.AEDisjoint.union_right_iffₓ'. -/
 @[simp]
-theorem union_right_iff : AeDisjoint μ s (t ∪ u) ↔ AeDisjoint μ s t ∧ AeDisjoint μ s u := by
+theorem union_right_iff : AEDisjoint μ s (t ∪ u) ↔ AEDisjoint μ s t ∧ AEDisjoint μ s u := by
   simp [union_eq_Union, and_comm]
-#align measure_theory.ae_disjoint.union_right_iff MeasureTheory.AeDisjoint.union_right_iff
-
-theorem union_left (hs : AeDisjoint μ s u) (ht : AeDisjoint μ t u) : AeDisjoint μ (s ∪ t) u :=
+#align measure_theory.ae_disjoint.union_right_iff MeasureTheory.AEDisjoint.union_right_iff
+
+/- warning: measure_theory.ae_disjoint.union_left -> MeasureTheory.AEDisjoint.union_left is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s u) -> (MeasureTheory.AEDisjoint.{u1} α m μ t u) -> (MeasureTheory.AEDisjoint.{u1} α m μ (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) s t) u)
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s u) -> (MeasureTheory.AEDisjoint.{u1} α m μ t u) -> (MeasureTheory.AEDisjoint.{u1} α m μ (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) s t) u)
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.union_left MeasureTheory.AEDisjoint.union_leftₓ'. -/
+theorem union_left (hs : AEDisjoint μ s u) (ht : AEDisjoint μ t u) : AEDisjoint μ (s ∪ t) u :=
   union_left_iff.mpr ⟨hs, ht⟩
-#align measure_theory.ae_disjoint.union_left MeasureTheory.AeDisjoint.union_left
-
-theorem union_right (ht : AeDisjoint μ s t) (hu : AeDisjoint μ s u) : AeDisjoint μ s (t ∪ u) :=
+#align measure_theory.ae_disjoint.union_left MeasureTheory.AEDisjoint.union_left
+
+/- warning: measure_theory.ae_disjoint.union_right -> MeasureTheory.AEDisjoint.union_right is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (MeasureTheory.AEDisjoint.{u1} α m μ s u) -> (MeasureTheory.AEDisjoint.{u1} α m μ s (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) t u))
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α} {u : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (MeasureTheory.AEDisjoint.{u1} α m μ s u) -> (MeasureTheory.AEDisjoint.{u1} α m μ s (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) t u))
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.union_right MeasureTheory.AEDisjoint.union_rightₓ'. -/
+theorem union_right (ht : AEDisjoint μ s t) (hu : AEDisjoint μ s u) : AEDisjoint μ s (t ∪ u) :=
   union_right_iff.2 ⟨ht, hu⟩
-#align measure_theory.ae_disjoint.union_right MeasureTheory.AeDisjoint.union_right
-
-theorem diff_ae_eq_left (h : AeDisjoint μ s t) : (s \ t : Set α) =ᵐ[μ] s :=
+#align measure_theory.ae_disjoint.union_right MeasureTheory.AEDisjoint.union_right
+
+/- warning: measure_theory.ae_disjoint.diff_ae_eq_left -> MeasureTheory.AEDisjoint.diff_ae_eq_left is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Filter.EventuallyEq.{u1, 0} α Prop (MeasureTheory.Measure.ae.{u1} α m μ) (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s t) s)
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Filter.EventuallyEq.{u1, 0} α Prop (MeasureTheory.Measure.ae.{u1} α m μ) (SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) s t) s)
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.diff_ae_eq_left MeasureTheory.AEDisjoint.diff_ae_eq_leftₓ'. -/
+theorem diff_ae_eq_left (h : AEDisjoint μ s t) : (s \ t : Set α) =ᵐ[μ] s :=
   @diff_self_inter _ s t ▸ diff_null_ae_eq_self h
-#align measure_theory.ae_disjoint.diff_ae_eq_left MeasureTheory.AeDisjoint.diff_ae_eq_left
-
-theorem diff_ae_eq_right (h : AeDisjoint μ s t) : (t \ s : Set α) =ᵐ[μ] t :=
+#align measure_theory.ae_disjoint.diff_ae_eq_left MeasureTheory.AEDisjoint.diff_ae_eq_left
+
+/- warning: measure_theory.ae_disjoint.diff_ae_eq_right -> MeasureTheory.AEDisjoint.diff_ae_eq_right is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Filter.EventuallyEq.{u1, 0} α Prop (MeasureTheory.Measure.ae.{u1} α m μ) (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) t s) t)
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Filter.EventuallyEq.{u1, 0} α Prop (MeasureTheory.Measure.ae.{u1} α m μ) (SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) t s) t)
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.diff_ae_eq_right MeasureTheory.AEDisjoint.diff_ae_eq_rightₓ'. -/
+theorem diff_ae_eq_right (h : AEDisjoint μ s t) : (t \ s : Set α) =ᵐ[μ] t :=
   h.symm.diff_ae_eq_left
-#align measure_theory.ae_disjoint.diff_ae_eq_right MeasureTheory.AeDisjoint.diff_ae_eq_right
-
-theorem measure_diff_left (h : AeDisjoint μ s t) : μ (s \ t) = μ s :=
+#align measure_theory.ae_disjoint.diff_ae_eq_right MeasureTheory.AEDisjoint.diff_ae_eq_right
+
+/- warning: measure_theory.ae_disjoint.measure_diff_left -> MeasureTheory.AEDisjoint.measure_diff_left is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s t)) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s))
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) (SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) s t)) (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) s))
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.measure_diff_left MeasureTheory.AEDisjoint.measure_diff_leftₓ'. -/
+theorem measure_diff_left (h : AEDisjoint μ s t) : μ (s \ t) = μ s :=
   measure_congr h.diff_ae_eq_left
-#align measure_theory.ae_disjoint.measure_diff_left MeasureTheory.AeDisjoint.measure_diff_left
-
-theorem measure_diff_right (h : AeDisjoint μ s t) : μ (t \ s) = μ t :=
+#align measure_theory.ae_disjoint.measure_diff_left MeasureTheory.AEDisjoint.measure_diff_left
+
+/- warning: measure_theory.ae_disjoint.measure_diff_right -> MeasureTheory.AEDisjoint.measure_diff_right is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) t s)) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ t))
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) (SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) t s)) (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) t))
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.measure_diff_right MeasureTheory.AEDisjoint.measure_diff_rightₓ'. -/
+theorem measure_diff_right (h : AEDisjoint μ s t) : μ (t \ s) = μ t :=
   measure_congr h.diff_ae_eq_right
-#align measure_theory.ae_disjoint.measure_diff_right MeasureTheory.AeDisjoint.measure_diff_right
-
+#align measure_theory.ae_disjoint.measure_diff_right MeasureTheory.AEDisjoint.measure_diff_right
+
+/- warning: measure_theory.ae_disjoint.exists_disjoint_diff -> MeasureTheory.AEDisjoint.exists_disjoint_diff is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Exists.{succ u1} (Set.{u1} α) (fun (u : Set.{u1} α) => And (MeasurableSet.{u1} α m u) (And (Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ u) (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero)))) (Disjoint.{u1} (Set.{u1} α) (CompleteSemilatticeInf.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.completeBooleanAlgebra.{u1} α)))))) (GeneralizedBooleanAlgebra.toOrderBot.{u1} (Set.{u1} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α))) (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s u) t))))
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (MeasureTheory.AEDisjoint.{u1} α m μ s t) -> (Exists.{succ u1} (Set.{u1} α) (fun (u : Set.{u1} α) => And (MeasurableSet.{u1} α m u) (And (Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) u) (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero))) (Disjoint.{u1} (Set.{u1} α) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))) (BoundedOrder.toOrderBot.{u1} (Set.{u1} α) (Preorder.toLE.{u1} (Set.{u1} α) (PartialOrder.toPreorder.{u1} (Set.{u1} α) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))))) (CompleteLattice.toBoundedOrder.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α)))))) (SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) s u) t))))
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.exists_disjoint_diff MeasureTheory.AEDisjoint.exists_disjoint_diffₓ'. -/
 /-- If `s` and `t` are `μ`-a.e. disjoint, then `s \ u` and `t` are disjoint for some measurable null
 set `u`. -/
-theorem exists_disjoint_diff (h : AeDisjoint μ s t) :
+theorem exists_disjoint_diff (h : AEDisjoint μ s t) :
     ∃ u, MeasurableSet u ∧ μ u = 0 ∧ Disjoint (s \ u) t :=
   ⟨toMeasurable μ (s ∩ t), measurableSet_toMeasurable _ _, (measure_toMeasurable _).trans h,
     disjoint_sdiff_self_left.mono_left fun x hx =>
       ⟨hx.1, fun hxt => hx.2 <| subset_toMeasurable _ _ ⟨hx.1, hxt⟩⟩⟩
-#align measure_theory.ae_disjoint.exists_disjoint_diff MeasureTheory.AeDisjoint.exists_disjoint_diff
-
-theorem of_null_right (h : μ t = 0) : AeDisjoint μ s t :=
+#align measure_theory.ae_disjoint.exists_disjoint_diff MeasureTheory.AEDisjoint.exists_disjoint_diff
+
+/- warning: measure_theory.ae_disjoint.of_null_right -> MeasureTheory.AEDisjoint.of_null_right is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ t) (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero)))) -> (MeasureTheory.AEDisjoint.{u1} α m μ s t)
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) t) (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero))) -> (MeasureTheory.AEDisjoint.{u1} α m μ s t)
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.of_null_right MeasureTheory.AEDisjoint.of_null_rightₓ'. -/
+theorem of_null_right (h : μ t = 0) : AEDisjoint μ s t :=
   measure_mono_null (inter_subset_right _ _) h
-#align measure_theory.ae_disjoint.of_null_right MeasureTheory.AeDisjoint.of_null_right
-
-theorem of_null_left (h : μ s = 0) : AeDisjoint μ s t :=
+#align measure_theory.ae_disjoint.of_null_right MeasureTheory.AEDisjoint.of_null_right
+
+/- warning: measure_theory.ae_disjoint.of_null_left -> MeasureTheory.AEDisjoint.of_null_left is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero)))) -> (MeasureTheory.AEDisjoint.{u1} α m μ s t)
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {t : Set.{u1} α}, (Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) s) (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero))) -> (MeasureTheory.AEDisjoint.{u1} α m μ s t)
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint.of_null_left MeasureTheory.AEDisjoint.of_null_leftₓ'. -/
+theorem of_null_left (h : μ s = 0) : AEDisjoint μ s t :=
   (of_null_right h).symm
-#align measure_theory.ae_disjoint.of_null_left MeasureTheory.AeDisjoint.of_null_left
+#align measure_theory.ae_disjoint.of_null_left MeasureTheory.AEDisjoint.of_null_left
 
 end AeDisjoint
 
-theorem aeDisjoint_compl_left : AeDisjoint μ (sᶜ) s :=
-  (@disjoint_compl_left _ _ s).AeDisjoint
-#align measure_theory.ae_disjoint_compl_left MeasureTheory.aeDisjoint_compl_left
-
-theorem aeDisjoint_compl_right : AeDisjoint μ s (sᶜ) :=
-  (@disjoint_compl_right _ _ s).AeDisjoint
-#align measure_theory.ae_disjoint_compl_right MeasureTheory.aeDisjoint_compl_right
+/- warning: measure_theory.ae_disjoint_compl_left -> MeasureTheory.aedisjoint_compl_left is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α}, MeasureTheory.AEDisjoint.{u1} α m μ (HasCompl.compl.{u1} (Set.{u1} α) (BooleanAlgebra.toHasCompl.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s) s
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α}, MeasureTheory.AEDisjoint.{u1} α m μ (HasCompl.compl.{u1} (Set.{u1} α) (BooleanAlgebra.toHasCompl.{u1} (Set.{u1} α) (Set.instBooleanAlgebraSet.{u1} α)) s) s
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint_compl_left MeasureTheory.aedisjoint_compl_leftₓ'. -/
+theorem aedisjoint_compl_left : AEDisjoint μ (sᶜ) s :=
+  (@disjoint_compl_left _ _ s).AEDisjoint
+#align measure_theory.ae_disjoint_compl_left MeasureTheory.aedisjoint_compl_left
+
+/- warning: measure_theory.ae_disjoint_compl_right -> MeasureTheory.aedisjoint_compl_right is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α}, MeasureTheory.AEDisjoint.{u1} α m μ s (HasCompl.compl.{u1} (Set.{u1} α) (BooleanAlgebra.toHasCompl.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s)
+but is expected to have type
+  forall {α : Type.{u1}} {m : MeasurableSpace.{u1} α} {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α}, MeasureTheory.AEDisjoint.{u1} α m μ s (HasCompl.compl.{u1} (Set.{u1} α) (BooleanAlgebra.toHasCompl.{u1} (Set.{u1} α) (Set.instBooleanAlgebraSet.{u1} α)) s)
+Case conversion may be inaccurate. Consider using '#align measure_theory.ae_disjoint_compl_right MeasureTheory.aedisjoint_compl_rightₓ'. -/
+theorem aedisjoint_compl_right : AEDisjoint μ s (sᶜ) :=
+  (@disjoint_compl_right _ _ s).AEDisjoint
+#align measure_theory.ae_disjoint_compl_right MeasureTheory.aedisjoint_compl_right
 
 end MeasureTheory
 
Diff
@@ -83,17 +83,17 @@ protected theorem Set.PairwiseDisjoint.aeDisjoint {f : ι → Set α} {s : Set 
   hf.mono' fun i j h => h.AeDisjoint
 #align set.pairwise_disjoint.ae_disjoint Set.PairwiseDisjoint.aeDisjoint
 
-theorem monoAe (h : AeDisjoint μ s t) (hu : u ≤ᵐ[μ] s) (hv : v ≤ᵐ[μ] t) : AeDisjoint μ u v :=
+theorem mono_ae (h : AeDisjoint μ s t) (hu : u ≤ᵐ[μ] s) (hv : v ≤ᵐ[μ] t) : AeDisjoint μ u v :=
   measure_mono_null_ae (hu.inter hv) h
-#align measure_theory.ae_disjoint.mono_ae MeasureTheory.AeDisjoint.monoAe
+#align measure_theory.ae_disjoint.mono_ae MeasureTheory.AeDisjoint.mono_ae
 
 protected theorem mono (h : AeDisjoint μ s t) (hu : u ⊆ s) (hv : v ⊆ t) : AeDisjoint μ u v :=
-  h.monoAe hu.EventuallyLE hv.EventuallyLE
+  h.mono_ae hu.EventuallyLE hv.EventuallyLE
 #align measure_theory.ae_disjoint.mono MeasureTheory.AeDisjoint.mono
 
 protected theorem congr (h : AeDisjoint μ s t) (hu : u =ᵐ[μ] s) (hv : v =ᵐ[μ] t) :
     AeDisjoint μ u v :=
-  h.monoAe (Filter.EventuallyEq.le hu) (Filter.EventuallyEq.le hv)
+  h.mono_ae (Filter.EventuallyEq.le hu) (Filter.EventuallyEq.le hv)
 #align measure_theory.ae_disjoint.congr MeasureTheory.AeDisjoint.congr
 
 @[simp]
@@ -118,13 +118,13 @@ theorem union_right_iff : AeDisjoint μ s (t ∪ u) ↔ AeDisjoint μ s t ∧ Ae
   simp [union_eq_Union, and_comm]
 #align measure_theory.ae_disjoint.union_right_iff MeasureTheory.AeDisjoint.union_right_iff
 
-theorem unionLeft (hs : AeDisjoint μ s u) (ht : AeDisjoint μ t u) : AeDisjoint μ (s ∪ t) u :=
+theorem union_left (hs : AeDisjoint μ s u) (ht : AeDisjoint μ t u) : AeDisjoint μ (s ∪ t) u :=
   union_left_iff.mpr ⟨hs, ht⟩
-#align measure_theory.ae_disjoint.union_left MeasureTheory.AeDisjoint.unionLeft
+#align measure_theory.ae_disjoint.union_left MeasureTheory.AeDisjoint.union_left
 
-theorem unionRight (ht : AeDisjoint μ s t) (hu : AeDisjoint μ s u) : AeDisjoint μ s (t ∪ u) :=
+theorem union_right (ht : AeDisjoint μ s t) (hu : AeDisjoint μ s u) : AeDisjoint μ s (t ∪ u) :=
   union_right_iff.2 ⟨ht, hu⟩
-#align measure_theory.ae_disjoint.union_right MeasureTheory.AeDisjoint.unionRight
+#align measure_theory.ae_disjoint.union_right MeasureTheory.AeDisjoint.union_right
 
 theorem diff_ae_eq_left (h : AeDisjoint μ s t) : (s \ t : Set α) =ᵐ[μ] s :=
   @diff_self_inter _ s t ▸ diff_null_ae_eq_self h
@@ -151,23 +151,23 @@ theorem exists_disjoint_diff (h : AeDisjoint μ s t) :
       ⟨hx.1, fun hxt => hx.2 <| subset_toMeasurable _ _ ⟨hx.1, hxt⟩⟩⟩
 #align measure_theory.ae_disjoint.exists_disjoint_diff MeasureTheory.AeDisjoint.exists_disjoint_diff
 
-theorem ofNullRight (h : μ t = 0) : AeDisjoint μ s t :=
+theorem of_null_right (h : μ t = 0) : AeDisjoint μ s t :=
   measure_mono_null (inter_subset_right _ _) h
-#align measure_theory.ae_disjoint.of_null_right MeasureTheory.AeDisjoint.ofNullRight
+#align measure_theory.ae_disjoint.of_null_right MeasureTheory.AeDisjoint.of_null_right
 
-theorem ofNullLeft (h : μ s = 0) : AeDisjoint μ s t :=
-  (ofNullRight h).symm
-#align measure_theory.ae_disjoint.of_null_left MeasureTheory.AeDisjoint.ofNullLeft
+theorem of_null_left (h : μ s = 0) : AeDisjoint μ s t :=
+  (of_null_right h).symm
+#align measure_theory.ae_disjoint.of_null_left MeasureTheory.AeDisjoint.of_null_left
 
 end AeDisjoint
 
-theorem aeDisjointComplLeft : AeDisjoint μ (sᶜ) s :=
+theorem aeDisjoint_compl_left : AeDisjoint μ (sᶜ) s :=
   (@disjoint_compl_left _ _ s).AeDisjoint
-#align measure_theory.ae_disjoint_compl_left MeasureTheory.aeDisjointComplLeft
+#align measure_theory.ae_disjoint_compl_left MeasureTheory.aeDisjoint_compl_left
 
-theorem aeDisjointComplRight : AeDisjoint μ s (sᶜ) :=
+theorem aeDisjoint_compl_right : AeDisjoint μ s (sᶜ) :=
   (@disjoint_compl_right _ _ s).AeDisjoint
-#align measure_theory.ae_disjoint_compl_right MeasureTheory.aeDisjointComplRight
+#align measure_theory.ae_disjoint_compl_right MeasureTheory.aeDisjoint_compl_right
 
 end MeasureTheory
 
Diff
@@ -88,7 +88,7 @@ theorem monoAe (h : AeDisjoint μ s t) (hu : u ≤ᵐ[μ] s) (hv : v ≤ᵐ[μ]
 #align measure_theory.ae_disjoint.mono_ae MeasureTheory.AeDisjoint.monoAe
 
 protected theorem mono (h : AeDisjoint μ s t) (hu : u ⊆ s) (hv : v ⊆ t) : AeDisjoint μ u v :=
-  h.monoAe hu.EventuallyLe hv.EventuallyLe
+  h.monoAe hu.EventuallyLE hv.EventuallyLE
 #align measure_theory.ae_disjoint.mono MeasureTheory.AeDisjoint.mono
 
 protected theorem congr (h : AeDisjoint μ s t) (hu : u =ᵐ[μ] s) (hv : v =ᵐ[μ] t) :
Diff
@@ -32,7 +32,7 @@ def AeDisjoint (s t : Set α) :=
 
 variable {μ} {s t u v : Set α}
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (j «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (j «expr ≠ » i) -/
 /-- If `s : ι → set α` is a countable family of pairwise a.e. disjoint sets, then there exists a
 family of measurable null sets `t i` such that `s i \ t i` are pairwise disjoint. -/
 theorem exists_null_pairwise_disjoint_diff [Countable ι] {s : ι → Set α}

Changes in mathlib4

mathlib3
mathlib4
chore: replace λ by fun (#11301)

Per the style guidelines, λ is disallowed in mathlib. This is close to exhaustive; I left some tactic code alone when it seemed to me that tactic could be upstreamed soon.

Notes

  • In lines I was modifying anyway, I also converted => to .
  • Also contains some mild in-passing indentation fixes in Mathlib/Order/SupClosed.
  • Some doc comments still contained Lean 3 syntax λ x, , which I also replaced.
Diff
@@ -40,7 +40,8 @@ theorem exists_null_pairwise_disjoint_diff [Countable ι] {s : ι → Set α}
     exact (measure_biUnion_null_iff <| to_countable _).2 fun j hj => hd (Ne.symm hj)
   · simp only [Pairwise, disjoint_left, onFun, mem_diff, not_and, and_imp, Classical.not_not]
     intro i j hne x hi hU hj
-    replace hU : x ∉ s i ∩ iUnion λ j => iUnion λ _ => s j := λ h => hU (subset_toMeasurable _ _ h)
+    replace hU : x ∉ s i ∩ iUnion fun j ↦ iUnion fun _ ↦ s j :=
+      fun h ↦ hU (subset_toMeasurable _ _ h)
     simp only [mem_inter_iff, mem_iUnion, not_and, not_exists] at hU
     exact (hU hi j hne.symm hj).elim
 #align measure_theory.exists_null_pairwise_disjoint_diff MeasureTheory.exists_null_pairwise_disjoint_diff
chore: banish Type _ and Sort _ (#6499)

We remove all possible occurences of Type _ and Sort _ in favor of Type* and Sort*.

This has nice performance benefits.

Diff
@@ -20,7 +20,7 @@ open Set Function
 
 namespace MeasureTheory
 
-variable {ι α : Type _} {m : MeasurableSpace α} (μ : Measure α)
+variable {ι α : Type*} {m : MeasurableSpace α} (μ : Measure α)
 
 /-- Two sets are said to be `μ`-a.e. disjoint if their intersection has measure zero. -/
 def AEDisjoint (s t : Set α) :=
chore: script to replace headers with #align_import statements (#5979)

Open in Gitpod

Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -2,14 +2,11 @@
 Copyright (c) 2022 Yury Kudryashov. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Yury Kudryashov
-
-! This file was ported from Lean 3 source module measure_theory.measure.ae_disjoint
-! leanprover-community/mathlib commit bc7d81beddb3d6c66f71449c5bc76c38cb77cf9e
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.MeasureTheory.Measure.MeasureSpaceDef
 
+#align_import measure_theory.measure.ae_disjoint from "leanprover-community/mathlib"@"bc7d81beddb3d6c66f71449c5bc76c38cb77cf9e"
+
 /-!
 # Almost everywhere disjoint sets
 
fix: change compl precedence (#5586)

Co-authored-by: Yury G. Kudryashov <urkud@urkud.name>

Diff
@@ -157,11 +157,11 @@ theorem of_null_left (h : μ s = 0) : AEDisjoint μ s t :=
 
 end AEDisjoint
 
-theorem aedisjoint_compl_left : AEDisjoint μ (sᶜ) s :=
+theorem aedisjoint_compl_left : AEDisjoint μ sᶜ s :=
   (@disjoint_compl_left _ _ s).aedisjoint
 #align measure_theory.ae_disjoint_compl_left MeasureTheory.aedisjoint_compl_left
 
-theorem aedisjoint_compl_right : AEDisjoint μ s (sᶜ) :=
+theorem aedisjoint_compl_right : AEDisjoint μ s sᶜ :=
   (@disjoint_compl_right _ _ s).aedisjoint
 #align measure_theory.ae_disjoint_compl_right MeasureTheory.aedisjoint_compl_right
 
chore: Rename to sSup/iSup (#3938)

As discussed on Zulip

Renames

  • supₛsSup
  • infₛsInf
  • supᵢiSup
  • infᵢiInf
  • bsupₛbsSup
  • binfₛbsInf
  • bsupᵢbiSup
  • binfᵢbiInf
  • csupₛcsSup
  • cinfₛcsInf
  • csupᵢciSup
  • cinfᵢciInf
  • unionₛsUnion
  • interₛsInter
  • unionᵢiUnion
  • interᵢiInter
  • bunionₛbsUnion
  • binterₛbsInter
  • bunionᵢbiUnion
  • binterᵢbiInter

Co-authored-by: Parcly Taxel <reddeloostw@gmail.com>

Diff
@@ -39,12 +39,12 @@ theorem exists_null_pairwise_disjoint_diff [Countable ι] {s : ι → Set α}
     (∀ i, μ (t i) = 0) ∧ Pairwise (Disjoint on fun i => s i \ t i) := by
   refine' ⟨fun i => toMeasurable μ (s i ∩ ⋃ j ∈ ({i}ᶜ : Set ι), s j), fun i =>
     measurableSet_toMeasurable _ _, fun i => _, _⟩
-  · simp only [measure_toMeasurable, inter_unionᵢ]
-    exact (measure_bunionᵢ_null_iff <| to_countable _).2 fun j hj => hd (Ne.symm hj)
+  · simp only [measure_toMeasurable, inter_iUnion]
+    exact (measure_biUnion_null_iff <| to_countable _).2 fun j hj => hd (Ne.symm hj)
   · simp only [Pairwise, disjoint_left, onFun, mem_diff, not_and, and_imp, Classical.not_not]
     intro i j hne x hi hU hj
-    replace hU : x ∉ s i ∩ unionᵢ λ j => unionᵢ λ _ => s j := λ h => hU (subset_toMeasurable _ _ h)
-    simp only [mem_inter_iff, mem_unionᵢ, not_and, not_exists] at hU
+    replace hU : x ∉ s i ∩ iUnion λ j => iUnion λ _ => s j := λ h => hU (subset_toMeasurable _ _ h)
+    simp only [mem_inter_iff, mem_iUnion, not_and, not_exists] at hU
     exact (hU hi j hne.symm hj).elim
 #align measure_theory.exists_null_pairwise_disjoint_diff MeasureTheory.exists_null_pairwise_disjoint_diff
 
@@ -93,25 +93,25 @@ protected theorem congr (h : AEDisjoint μ s t) (hu : u =ᵐ[μ] s) (hv : v =ᵐ
 #align measure_theory.ae_disjoint.congr MeasureTheory.AEDisjoint.congr
 
 @[simp]
-theorem unionᵢ_left_iff [Countable ι] {s : ι → Set α} :
+theorem iUnion_left_iff [Countable ι] {s : ι → Set α} :
     AEDisjoint μ (⋃ i, s i) t ↔ ∀ i, AEDisjoint μ (s i) t := by
-  simp only [AEDisjoint, unionᵢ_inter, measure_unionᵢ_null_iff]
-#align measure_theory.ae_disjoint.Union_left_iff MeasureTheory.AEDisjoint.unionᵢ_left_iff
+  simp only [AEDisjoint, iUnion_inter, measure_iUnion_null_iff]
+#align measure_theory.ae_disjoint.Union_left_iff MeasureTheory.AEDisjoint.iUnion_left_iff
 
 @[simp]
-theorem unionᵢ_right_iff [Countable ι] {t : ι → Set α} :
+theorem iUnion_right_iff [Countable ι] {t : ι → Set α} :
     AEDisjoint μ s (⋃ i, t i) ↔ ∀ i, AEDisjoint μ s (t i) := by
-  simp only [AEDisjoint, inter_unionᵢ, measure_unionᵢ_null_iff]
-#align measure_theory.ae_disjoint.Union_right_iff MeasureTheory.AEDisjoint.unionᵢ_right_iff
+  simp only [AEDisjoint, inter_iUnion, measure_iUnion_null_iff]
+#align measure_theory.ae_disjoint.Union_right_iff MeasureTheory.AEDisjoint.iUnion_right_iff
 
 @[simp]
 theorem union_left_iff : AEDisjoint μ (s ∪ t) u ↔ AEDisjoint μ s u ∧ AEDisjoint μ t u := by
-  simp [union_eq_unionᵢ, and_comm]
+  simp [union_eq_iUnion, and_comm]
 #align measure_theory.ae_disjoint.union_left_iff MeasureTheory.AEDisjoint.union_left_iff
 
 @[simp]
 theorem union_right_iff : AEDisjoint μ s (t ∪ u) ↔ AEDisjoint μ s t ∧ AEDisjoint μ s u := by
-  simp [union_eq_unionᵢ, and_comm]
+  simp [union_eq_iUnion, and_comm]
 #align measure_theory.ae_disjoint.union_right_iff MeasureTheory.AEDisjoint.union_right_iff
 
 theorem union_left (hs : AEDisjoint μ s u) (ht : AEDisjoint μ t u) : AEDisjoint μ (s ∪ t) u :=
chore: bye-bye, solo bys! (#3825)

This PR puts, with one exception, every single remaining by that lies all by itself on its own line to the previous line, thus matching the current behaviour of start-port.sh. The exception is when the by begins the second or later argument to a tuple or anonymous constructor; see https://github.com/leanprover-community/mathlib4/pull/3825#discussion_r1186702599.

Essentially this is s/\n *by$/ by/g, but with manual editing to satisfy the linter's max-100-char-line requirement. The Python style linter is also modified to catch these "isolated bys".

Diff
@@ -35,13 +35,10 @@ variable {μ} {s t u v : Set α}
 /-- If `s : ι → Set α` is a countable family of pairwise a.e. disjoint sets, then there exists a
 family of measurable null sets `t i` such that `s i \ t i` are pairwise disjoint. -/
 theorem exists_null_pairwise_disjoint_diff [Countable ι] {s : ι → Set α}
-    (hd : Pairwise (AEDisjoint μ on s)) :
-    ∃ t : ι → Set α,
-      (∀ i, MeasurableSet (t i)) ∧ (∀ i, μ (t i) = 0) ∧ Pairwise (Disjoint on fun i => s i \ t i) :=
-  by
-  refine'
-    ⟨fun i => toMeasurable μ (s i ∩ ⋃ j ∈ ({i}ᶜ : Set ι), s j), fun i =>
-      measurableSet_toMeasurable _ _, fun i => _, _⟩
+    (hd : Pairwise (AEDisjoint μ on s)) : ∃ t : ι → Set α, (∀ i, MeasurableSet (t i)) ∧
+    (∀ i, μ (t i) = 0) ∧ Pairwise (Disjoint on fun i => s i \ t i) := by
+  refine' ⟨fun i => toMeasurable μ (s i ∩ ⋃ j ∈ ({i}ᶜ : Set ι), s j), fun i =>
+    measurableSet_toMeasurable _ _, fun i => _, _⟩
   · simp only [measure_toMeasurable, inter_unionᵢ]
     exact (measure_bunionᵢ_null_iff <| to_countable _).2 fun j hj => hd (Ne.symm hj)
   · simp only [Pairwise, disjoint_left, onFun, mem_diff, not_and, and_imp, Classical.not_not]
feat: port MeasureTheory.Measure.AEDisjoint (#3351)

Co-authored-by: Jeremy Tan Jie Rui <reddeloostw@gmail.com> Co-authored-by: Komyyy <pol_tta@outlook.jp>

Dependencies 10 + 602

603 files ported (98.4%)
264980 lines ported (98.0%)
Show graph

The unported dependencies are

The following 1 dependencies have changed in mathlib3 since they were ported, which may complicate porting this file