Measure spaces #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
This file defines measure spaces, the almost-everywhere filter and ae_measurable functions.
See measure_theory.measure_space
for their properties and for extended documentation.
Given a measurable space α
, a measure on α
is a function that sends measurable sets to the
extended nonnegative reals that satisfies the following conditions:
μ ∅ = 0
;μ
is countably additive. This means that the measure of a countable union of pairwise disjoint sets is equal to the sum of the measures of the individual sets.
Every measure can be canonically extended to an outer measure, so that it assigns values to all subsets, not just the measurable subsets. On the other hand, an outer measure that is countably additive on measurable sets can be restricted to measurable sets to obtain a measure. In this file a measure is defined to be an outer measure that is countably additive on measurable sets, with the additional assumption that the outer measure is the canonical extension of the restricted measure.
Measures on α
form a complete lattice, and are closed under scalar multiplication with ℝ≥0∞
.
Implementation notes #
Given μ : measure α
, μ s
is the value of the outer measure applied to s
.
This conveniently allows us to apply the measure to sets without proving that they are measurable.
We get countable subadditivity for all sets, but only countable additivity for measurable sets.
See the documentation of measure_theory.measure_space
for ways to construct measures and proving
that two measure are equal.
A measure_space
is a class that is a measurable space with a canonical measure.
The measure is denoted volume
.
This file does not import measure_theory.measurable_space
, but only measurable_space_def
.
References #
Tags #
measure, almost everywhere, measure space
- to_outer_measure : measure_theory.outer_measure α
- m_Union : ∀ ⦃f : ℕ → set α⦄, (∀ (i : ℕ), measurable_set (f i)) → pairwise (disjoint on f) → self.to_outer_measure.measure_of (⋃ (i : ℕ), f i) = ∑' (i : ℕ), self.to_outer_measure.measure_of (f i)
- trimmed : self.to_outer_measure.trim = self.to_outer_measure
A measure is defined to be an outer measure that is countably additive on measurable sets, with the additional assumption that the outer measure is the canonical extension of the restricted measure.
Instances for measure_theory.measure
- measure_theory.measure.has_sizeof_inst
- measure_theory.measure.has_coe_to_fun
- measure_theory.measure.has_zero
- measure_theory.measure.subsingleton
- measure_theory.measure.inhabited
- measure_theory.measure.has_add
- measure_theory.measure.has_smul
- measure_theory.measure.smul_comm_class
- measure_theory.measure.is_scalar_tower
- measure_theory.measure.is_central_scalar
- measure_theory.measure.mul_action
- measure_theory.measure.add_comm_monoid
- measure_theory.measure.distrib_mul_action
- measure_theory.measure.module
- measure_theory.measure.partial_order
- measure_theory.measure.covariant_add_le
- measure_theory.measure.has_Inf
- measure_theory.measure.complete_semilattice_Inf
- measure_theory.measure.complete_lattice
- measure_theory.measure.absolutely_continuous.is_refl
- measure_theory.measure.measurable_space
- measure_theory.measure.has_measurable_add₂
- measure_theory.measure.has_sub
- measure_theory.finite_measure.measure_theory.measure.has_coe
- measure_theory.probability_measure.measure_theory.measure.has_coe
Measure projections for a measure space.
For measurable sets this returns the measure assigned by the measure_of
field in measure
.
But we can extend this to all sets, but using the outer measure. This gives us monotonicity and
subadditivity for all sets.
Equations
- measure_theory.measure.has_coe_to_fun = {coe := λ (m : measure_theory.measure α), ⇑(m.to_outer_measure)}
General facts about measures #
Obtain a measure by giving a countably additive function that sends ∅
to 0
.
Equations
- measure_theory.measure.of_measurable m m0 mU = {to_outer_measure := {measure_of := (measure_theory.induced_outer_measure m measurable_set.empty m0).measure_of, empty := _, mono := _, Union_nat := _}, m_Union := _, trimmed := _}
A variant of measure_eq_infi
which has a single infi
. This is useful when applying a
lemma next that only works for non-empty infima, in which case you can use
nonempty_measurable_superset
.
For every set there exists a measurable superset of the same measure.
For every set s
and a countable collection of measures μ i
there exists a measurable
superset t ⊇ s
such that each measure μ i
takes the same value on s
and t
.
A version of measure_Union_null_iff
for unions indexed by Props
TODO: in the long run it would be better to combine this with measure_Union_null_iff
by
generalising to Sort
.
The almost everywhere filter #
The “almost everywhere” filter of co-null sets.
Equations
Instances for measure_theory.measure.ae
If s ⊆ t
modulo a set of measure 0
, then μ s ≤ μ t
.
Alias of measure_theory.measure_mono_ae
.
If two sets are equal modulo a set of measure zero, then μ s = μ t
.
Alias of measure_theory.measure_congr
.
A measurable set t ⊇ s
such that μ t = μ s
. It even satisfies μ (t ∩ u) = μ (s ∩ u)
for
any measurable set u
if μ s ≠ ∞
, see measure_to_measurable_inter
.
(This property holds without the assumption μ s ≠ ∞
when the space is sigma-finite,
see measure_to_measurable_inter_of_sigma_finite
).
If s
is a null measurable set, then
we also have t =ᵐ[μ] s
, see null_measurable_set.to_measurable_ae_eq
.
This notion is sometimes called a "measurable hull" in the literature.
Equations
- measure_theory.to_measurable μ s = dite (∃ (t : set α) (H : t ⊇ s), measurable_set t ∧ t =ᵐ[μ] s) (λ (h : ∃ (t : set α) (H : t ⊇ s), measurable_set t ∧ t =ᵐ[μ] s), h.some) (λ (h : ¬∃ (t : set α) (H : t ⊇ s), measurable_set t ∧ t =ᵐ[μ] s), dite (∃ (t : set α) (H : t ⊇ s), measurable_set t ∧ ∀ (u : set α), measurable_set u → ⇑μ (t ∩ u) = ⇑μ (s ∩ u)) (λ (h' : ∃ (t : set α) (H : t ⊇ s), measurable_set t ∧ ∀ (u : set α), measurable_set u → ⇑μ (t ∩ u) = ⇑μ (s ∩ u)), h'.some) (λ (h' : ¬∃ (t : set α) (H : t ⊇ s), measurable_set t ∧ ∀ (u : set α), measurable_set u → ⇑μ (t ∩ u) = ⇑μ (s ∩ u)), _.some))
- to_measurable_space : measurable_space α
- volume : measure_theory.measure α
A measure space is a measurable space equipped with a
measure, referred to as volume
.
Instances of this typeclass
- measure_space_of_inner_product_space
- measure_theory.measure.subtype.measure_space
- measure_theory.measure.punit.measure_theory.measure_space
- set_coe.measure_space
- measure_theory.measure.prod.measure_space
- measure_theory.measure_space.pi
- real.measure_space
- complex.measure_space
- add_circle.measure_space
- unit_add_circle.measure_space
- theorems_100.pi.measure_theory.measure_space
Instances of other typeclasses for measure_theory.measure_space
- measure_theory.measure_space.has_sizeof_inst
Almost everywhere measurable functions #
A function is almost everywhere measurable if it coincides almost everywhere with a measurable
function. We define this property, called ae_measurable f μ
. It's properties are discussed in
measure_theory.measure_space
.
A function is almost everywhere measurable if it coincides almost everywhere with a measurable function.
Equations
- ae_measurable f μ = ∃ (g : α → β), measurable g ∧ f =ᵐ[μ] g
Given an almost everywhere measurable function f
, associate to it a measurable function
that coincides with it almost everywhere. f
is explicit in the definition to make sure that
it shows in pretty-printing.
Equations
- ae_measurable.mk f h = classical.some h