File: Mathlib/MeasureTheory/OuterMeasure/Caratheodory.lean

full_name: MeasureTheory.OuterMeasure.IsCaratheodory
code: /-- A set `s` is Carathéodory-measurable for an outer measure `m` if for all sets `t` we have
  `m t = m (t ∩ s) + m (t \ s)`. -/
def IsCaratheodory (s : Set α) : Prop 
goal: Prop

full_name: MeasureTheory.OuterMeasure.isCaratheodory_iff_le'
code: theorem isCaratheodory_iff_le' {s : Set α} :
    IsCaratheodory m s ↔ ∀ t, m (t ∩ s) + m (t \ s) ≤ m t 
goal: m.IsCaratheodory s ↔ ∀ (t : Set α), m (t ∩ s) + m (t \ s) ≤ m t

full_name: MeasureTheory.OuterMeasure.isCaratheodory_empty
code: @[simp]
theorem isCaratheodory_empty : IsCaratheodory m ∅ 
goal: m.IsCaratheodory ∅

full_name: MeasureTheory.OuterMeasure.isCaratheodory_compl
code: theorem isCaratheodory_compl : IsCaratheodory m s₁ → IsCaratheodory m s₁ᶜ 
goal: m.IsCaratheodory s₁ → m.IsCaratheodory s₁ᶜ

full_name: MeasureTheory.OuterMeasure.isCaratheodory_compl_iff
code: @[simp]
theorem isCaratheodory_compl_iff : IsCaratheodory m sᶜ ↔ IsCaratheodory m s 
goal: m.IsCaratheodory sᶜ ↔ m.IsCaratheodory s

full_name: MeasureTheory.OuterMeasure.isCaratheodory_union
code: theorem isCaratheodory_union (h₁ : IsCaratheodory m s₁) (h₂ : IsCaratheodory m s₂) :
    IsCaratheodory m (s₁ ∪ s₂) 
goal: m.IsCaratheodory (s₁ ∪ s₂)

full_name: MeasureTheory.OuterMeasure.measure_inter_union
code: theorem measure_inter_union (h : s₁ ∩ s₂ ⊆ ∅) (h₁ : IsCaratheodory m s₁) {t : Set α} :
    m (t ∩ (s₁ ∪ s₂)) = m (t ∩ s₁) + m (t ∩ s₂) 
goal: m (t ∩ (s₁ ∪ s₂)) = m (t ∩ s₁) + m (t ∩ s₂)

full_name: MeasureTheory.OuterMeasure.isCaratheodory_iUnion_lt
code: theorem isCaratheodory_iUnion_lt {s : ℕ → Set α} :
    ∀ {n : ℕ}, (∀ i < n, IsCaratheodory m (s i)) → IsCaratheodory m (⋃ i < n, s i)
  
goal: (∀ i < n, m.IsCaratheodory (s i)) → m.IsCaratheodory (⋃ i, ⋃ (_ : i < n), s i)

full_name: MeasureTheory.OuterMeasure.isCaratheodory_inter
code: theorem isCaratheodory_inter (h₁ : IsCaratheodory m s₁) (h₂ : IsCaratheodory m s₂) :
    IsCaratheodory m (s₁ ∩ s₂) 
goal: m.IsCaratheodory (s₁ ∩ s₂)

full_name: MeasureTheory.OuterMeasure.isCaratheodory_sum
code: theorem isCaratheodory_sum {s : ℕ → Set α} (h : ∀ i, IsCaratheodory m (s i))
    (hd : Pairwise (Disjoint on s)) {t : Set α} :
    ∀ {n}, (∑ i ∈ Finset.range n, m (t ∩ s i)) = m (t ∩ ⋃ i < n, s i)
  
goal: ∑ i ∈ Finset.range n, m (t ∩ s i) = m (t ∩ ⋃ i, ⋃ (_ : i < n), s i)

full_name: MeasureTheory.OuterMeasure.isCaratheodory_iUnion_nat
code: theorem isCaratheodory_iUnion_nat {s : ℕ → Set α} (h : ∀ i, IsCaratheodory m (s i))
    (hd : Pairwise (Disjoint on s)) : IsCaratheodory m (⋃ i, s i) 
goal: m.IsCaratheodory (⋃ i, s i)

full_name: MeasureTheory.OuterMeasure.f_iUnion
code: theorem f_iUnion {s : ℕ → Set α} (h : ∀ i, IsCaratheodory m (s i)) (hd : Pairwise (Disjoint on s)) :
    m (⋃ i, s i) = ∑' i, m (s i) 
goal: m (⋃ i, s i) = ∑' (i : ℕ), m (s i)

full_name: MeasureTheory.OuterMeasure.caratheodoryDynkin
code: /-- The Carathéodory-measurable sets for an outer measure `m` form a Dynkin system.  -/
def caratheodoryDynkin : MeasurableSpace.DynkinSystem α 
goal: MeasurableSpace.DynkinSystem α

full_name: MeasureTheory.OuterMeasure.caratheodory
code: /-- Given an outer measure `μ`, the Carathéodory-measurable space is
  defined such that `s` is measurable if `∀t, μ t = μ (t ∩ s) + μ (t \ s)`. -/
protected def caratheodory : MeasurableSpace α 
goal: MeasurableSpace α

full_name: MeasureTheory.OuterMeasure.isCaratheodory_iff
code: theorem isCaratheodory_iff {s : Set α} :
    MeasurableSet[OuterMeasure.caratheodory m] s ↔ ∀ t, m t = m (t ∩ s) + m (t \ s) 
goal: MeasurableSet s ↔ ∀ (t : Set α), m t = m (t ∩ s) + m (t \ s)

full_name: MeasureTheory.OuterMeasure.isCaratheodory_iff_le
code: theorem isCaratheodory_iff_le {s : Set α} :
    MeasurableSet[OuterMeasure.caratheodory m] s ↔ ∀ t, m (t ∩ s) + m (t \ s) ≤ m t 
goal: MeasurableSet s ↔ ∀ (t : Set α), m (t ∩ s) + m (t \ s) ≤ m t

full_name: MeasureTheory.OuterMeasure.iUnion_eq_of_caratheodory
code: protected theorem iUnion_eq_of_caratheodory {s : ℕ → Set α}
    (h : ∀ i, MeasurableSet[OuterMeasure.caratheodory m] (s i)) (hd : Pairwise (Disjoint on s)) :
    m (⋃ i, s i) = ∑' i, m (s i) 
goal: m (⋃ i, s i) = ∑' (i : ℕ), m (s i)

full_name: MeasureTheory.OuterMeasure.ofFunction_caratheodory
code: theorem ofFunction_caratheodory {m : Set α → ℝ≥0∞} {s : Set α} {h₀ : m ∅ = 0}
    (hs : ∀ t, m (t ∩ s) + m (t \ s) ≤ m t) :
    MeasurableSet[(OuterMeasure.ofFunction m h₀).caratheodory] s 
goal: MeasurableSet s

full_name: MeasureTheory.OuterMeasure.boundedBy_caratheodory
code: theorem boundedBy_caratheodory {m : Set α → ℝ≥0∞} {s : Set α}
    (hs : ∀ t, m (t ∩ s) + m (t \ s) ≤ m t) : MeasurableSet[(boundedBy m).caratheodory] s 
goal: MeasurableSet s

full_name: MeasureTheory.OuterMeasure.zero_caratheodory
code: @[simp]
theorem zero_caratheodory : (0 : OuterMeasure α).caratheodory = ⊤ 
goal: MeasureTheory.OuterMeasure.caratheodory 0 = ⊤

full_name: MeasureTheory.OuterMeasure.top_caratheodory
code: theorem top_caratheodory : (⊤ : OuterMeasure α).caratheodory = ⊤ 
goal: ⊤.caratheodory = ⊤

full_name: MeasureTheory.OuterMeasure.le_add_caratheodory
code: theorem le_add_caratheodory (m₁ m₂ : OuterMeasure α) :
    m₁.caratheodory ⊓ m₂.caratheodory ≤ (m₁ + m₂ : OuterMeasure α).caratheodory 
goal: m₁.caratheodory ⊓ m₂.caratheodory ≤ (m₁ + m₂).caratheodory

full_name: MeasureTheory.OuterMeasure.le_sum_caratheodory
code: theorem le_sum_caratheodory {ι} (m : ι → OuterMeasure α) :
    ⨅ i, (m i).caratheodory ≤ (sum m).caratheodory 
goal: ⨅ i, (m i).caratheodory ≤ (MeasureTheory.OuterMeasure.sum m).caratheodory

full_name: MeasureTheory.OuterMeasure.le_smul_caratheodory
code: theorem le_smul_caratheodory (a : ℝ≥0∞) (m : OuterMeasure α) :
    m.caratheodory ≤ (a • m).caratheodory 
goal: m.caratheodory ≤ (a • m).caratheodory

full_name: MeasureTheory.OuterMeasure.dirac_caratheodory
code: @[simp]
theorem dirac_caratheodory (a : α) : (dirac a).caratheodory = ⊤ 
goal: (MeasureTheory.OuterMeasure.dirac a).caratheodory = ⊤