File: Mathlib/MeasureTheory/Measure/Trim.lean

full_name: MeasureTheory.Measure.trim
code: /-- Restriction of a measure to a sub-σ-algebra.
It is common to see a measure `μ` on a measurable space structure `m0` as being also a measure on
any `m ≤ m0`. Since measures in mathlib have to be trimmed to the measurable space, `μ` itself
cannot be a measure on `m`, hence the definition of `μ.trim hm`.

This notion is related to `OuterMeasure.trim`, see the lemma
`toOuterMeasure_trim_eq_trim_toOuterMeasure`. -/
noncomputable
def Measure.trim {m m0 : MeasurableSpace α} (μ : @Measure α m0) (hm : m ≤ m0) : @Measure α m 
goal: MeasureTheory.Measure α

full_name: MeasureTheory.trim_eq_self
code: @[simp]
theorem trim_eq_self [MeasurableSpace α] {μ : Measure α} : μ.trim le_rfl = μ 
goal: μ.trim ⋯ = μ

full_name: MeasureTheory.toOuterMeasure_trim_eq_trim_toOuterMeasure
code: theorem toOuterMeasure_trim_eq_trim_toOuterMeasure (μ : Measure α) (hm : m ≤ m0) :
    @Measure.toOuterMeasure _ m (μ.trim hm) = @OuterMeasure.trim _ m μ.toOuterMeasure 
goal: (μ.trim hm).toOuterMeasure = μ.trim

full_name: MeasureTheory.zero_trim
code: @[simp]
theorem zero_trim (hm : m ≤ m0) : (0 : Measure α).trim hm = (0 : @Measure α m) 
goal: MeasureTheory.Measure.trim 0 hm = 0

full_name: MeasureTheory.trim_measurableSet_eq
code: theorem trim_measurableSet_eq (hm : m ≤ m0) (hs : @MeasurableSet α m s) : μ.trim hm s = μ s 
goal: (μ.trim hm) s = μ s

full_name: MeasureTheory.le_trim
code: theorem le_trim (hm : m ≤ m0) : μ s ≤ μ.trim hm s 
goal: μ s ≤ (μ.trim hm) s

full_name: MeasureTheory.trim_add
code: lemma trim_add {ν : Measure α} (hm : m ≤ m0) : (μ + ν).trim hm = μ.trim hm + ν.trim hm 
goal: (μ + ν).trim hm = μ.trim hm + ν.trim hm

full_name: MeasureTheory.measure_eq_zero_of_trim_eq_zero
code: theorem measure_eq_zero_of_trim_eq_zero (hm : m ≤ m0) (h : μ.trim hm s = 0) : μ s = 0 
goal: μ s = 0

full_name: MeasureTheory.measure_trim_toMeasurable_eq_zero
code: theorem measure_trim_toMeasurable_eq_zero {hm : m ≤ m0} (hs : μ.trim hm s = 0) :
    μ (@toMeasurable α m (μ.trim hm) s) = 0 
goal: μ (MeasureTheory.toMeasurable (μ.trim hm) s) = 0

full_name: MeasureTheory.ae_of_ae_trim
code: theorem ae_of_ae_trim (hm : m ≤ m0) {μ : Measure α} {P : α → Prop} (h : ∀ᵐ x ∂μ.trim hm, P x) :
    ∀ᵐ x ∂μ, P x 
goal: ∀ᵐ (x : α) ∂μ, P x

full_name: MeasureTheory.ae_eq_of_ae_eq_trim
code: theorem ae_eq_of_ae_eq_trim {E} {hm : m ≤ m0} {f₁ f₂ : α → E}
    (h12 : f₁ =ᵐ[μ.trim hm] f₂) : f₁ =ᵐ[μ] f₂ 
goal: f₁ =ᵐ[μ] f₂

full_name: MeasureTheory.ae_le_of_ae_le_trim
code: theorem ae_le_of_ae_le_trim {E} [LE E] {hm : m ≤ m0} {f₁ f₂ : α → E}
    (h12 : f₁ ≤ᵐ[μ.trim hm] f₂) : f₁ ≤ᵐ[μ] f₂ 
goal: f₁ ≤ᵐ[μ] f₂

full_name: MeasureTheory.trim_trim
code: theorem trim_trim {m₁ m₂ : MeasurableSpace α} {hm₁₂ : m₁ ≤ m₂} {hm₂ : m₂ ≤ m0} :
    (μ.trim hm₂).trim hm₁₂ = μ.trim (hm₁₂.trans hm₂) 
goal: (μ.trim hm₂).trim hm₁₂ = μ.trim ⋯

full_name: MeasureTheory.restrict_trim
code: theorem restrict_trim (hm : m ≤ m0) (μ : Measure α) (hs : @MeasurableSet α m s) :
    @Measure.restrict α m (μ.trim hm) s = (μ.restrict s).trim hm 
goal: (μ.trim hm).restrict s = (μ.restrict s).trim hm

full_name: MeasureTheory.isFiniteMeasure_trim
code: instance isFiniteMeasure_trim (hm : m ≤ m0) [IsFiniteMeasure μ] : IsFiniteMeasure (μ.trim hm) 
goal: MeasureTheory.IsFiniteMeasure (μ.trim hm)

full_name: MeasureTheory.sigmaFiniteTrim_mono
code: theorem sigmaFiniteTrim_mono {m m₂ m0 : MeasurableSpace α} {μ : Measure α} (hm : m ≤ m0)
    (hm₂ : m₂ ≤ m) [SigmaFinite (μ.trim (hm₂.trans hm))] : SigmaFinite (μ.trim hm) 
goal: MeasureTheory.SigmaFinite (μ.trim hm)

full_name: MeasureTheory.sigmaFinite_trim_bot_iff
code: theorem sigmaFinite_trim_bot_iff : SigmaFinite (μ.trim bot_le) ↔ IsFiniteMeasure μ 
goal: MeasureTheory.SigmaFinite (μ.trim ⋯) ↔ MeasureTheory.IsFiniteMeasure μ

full_name: MeasureTheory.Measure.AbsolutelyContinuous.trim
code: lemma Measure.AbsolutelyContinuous.trim {ν : Measure α} (hμν : μ ≪ ν) (hm : m ≤ m0) :
    μ.trim hm ≪ ν.trim hm 
goal: (μ.trim hm).AbsolutelyContinuous (ν.trim hm)