# mathlibdocumentation

measure_theory.content

# Contents

In this file we work with contents. A content λ is a function from a certain class of subsets (such as the the compact subsets) to ennreal (or nnreal) that is

• additive: If K₁ and K₂ are disjoint sets in the domain of λ, then λ(K₁ ∪ K₂) = λ(K₁) + λ(K₂);
• subadditive: If K₁ and K₂ are in the domain of λ, then λ(K₁ ∪ K₂) ≤ λ(K₁) + λ(K₂);
• monotone: If K₁ ⊆ K₂ are in the domain of λ, then λ(K₁) ≤ λ(K₂).

We show that:

• Given a content λ on compact sets, we get a countably subadditive map that vanishes at ∅. In Halmos (1950) this is called the inner content λ* of λ.
• Given an inner content, we define an outer measure.

We don't explicitly define the type of contents. In this file we only work on contents on compact sets, and inner contents on open sets, and both contents and inner contents map into the extended nonnegative reals. However, in other applications other choices can be made, and it is not a priori clear what the best interface should be.

## Main definitions

• measure_theory.inner_content: define an inner content from an content
• measure_theory.outer_measure.of_content: construct an outer measure from a content

## References

• Paul Halmos (1950), Measure Theory, §53
• https://en.wikipedia.org/wiki/Content_(measure_theory)
def measure_theory.inner_content {G : Type w}  :

Constructing the inner content of a content. From a content defined on the compact sets, we obtain a function defined on all open sets, by taking the supremum of the content of all compact subsets.

Equations
theorem measure_theory.le_inner_content {G : Type w} (U : topological_space.opens G) :
K.val U

theorem measure_theory.inner_content_le {G : Type w} (h : ∀ (K₁ K₂ : , K₁.val K₂.valμ K₁ μ K₂) (U : topological_space.opens G)  :
U K.val

theorem measure_theory.inner_content_of_is_compact {G : Type w} (h : ∀ (K₁ K₂ : , K₁.val K₂.valμ K₁ μ K₂) {K : set G} (h1K : is_compact K) (h2K : is_open K) :
K, h2K⟩ = μ K, h1K⟩

theorem measure_theory.inner_content_empty {G : Type w}  :
μ = 0

theorem measure_theory.inner_content_mono {G : Type w} ⦃U V : set G⦄ (hU : is_open U) (hV : is_open V) :
U V U, hU⟩ V, hV⟩

This is "unbundled", because that it required for the API of induced_outer_measure.

theorem measure_theory.inner_content_exists_compact {G : Type w} {U : topological_space.opens G} (hU : < ) {ε : ℝ≥0} :
0 < ε(∃ (K : , K.val U μ K + ε)

theorem measure_theory.inner_content_Sup_nat {G : Type w} [t2_space G] (h1 : μ = 0) (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) (U : ) :
(⨆ (i : ), U i) ∑' (i : ), (U i)

The inner content of a supremum of opens is at most the sum of the individual inner contents.

theorem measure_theory.inner_content_Union_nat {G : Type w} [t2_space G] (h1 : μ = 0) (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) ⦃U : set G (hU : ∀ (i : ), is_open (U i)) :
⋃ (i : ), U i, _⟩ ∑' (i : ), U i, _⟩

The inner content of a union of sets is at most the sum of the individual inner contents. This is the "unbundled" version of inner_content_Sup_nat. It required for the API of induced_outer_measure.

theorem measure_theory.inner_content_comap {G : Type w} (f : G ≃ₜ G) (h : ∀ ⦃K : ⦄, μ = μ K) (U : topological_space.opens G) :

theorem measure_theory.is_left_invariant_inner_content {G : Type w} [group G] (h : ∀ (g : G) {K : , μ (topological_space.compacts.map (λ (b : G), g * b) _ K) = μ K) (g : G) (U : topological_space.opens G) :

theorem measure_theory.inner_content_pos {G : Type w} [t2_space G] [group G] (h1 : μ = 0) (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) (h3 : ∀ (g : G) {K : , μ (topological_space.compacts.map (λ (b : G), g * b) _ K) = μ K) (hK : 0 < μ K) (U : topological_space.opens G) :

theorem measure_theory.inner_content_mono' {G : Type w} ⦃U V : set G⦄ (hU : is_open U) (hV : is_open V) :
U V U, hU⟩ V, hV⟩

def measure_theory.outer_measure.of_content {G : Type w} [t2_space G]  :
μ = 0

Extending a content on compact sets to an outer measure on all sets.

Equations
theorem measure_theory.outer_measure.of_content_opens {G : Type w} [t2_space G] {h1 : μ = 0} (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) (U : topological_space.opens G) :

theorem measure_theory.outer_measure.of_content_le {G : Type w} [t2_space G] {h1 : μ = 0} (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) (h : ∀ (K₁ K₂ : , K₁.val K₂.valμ K₁ μ K₂) (U : topological_space.opens G)  :
U K.val μ K

theorem measure_theory.outer_measure.le_of_content_compacts {G : Type w} [t2_space G] {h1 : μ = 0} (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂)  :
μ K

theorem measure_theory.outer_measure.of_content_eq_infi {G : Type w} [t2_space G] {h1 : μ = 0} (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) (A : set G) :
= ⨅ (U : set G) (hU : is_open U) (h : A U), U, hU⟩

theorem measure_theory.outer_measure.of_content_interior_compacts {G : Type w} [t2_space G] {h1 : μ = 0} (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) (h3 : ∀ (K₁ K₂ : , K₁.val K₂.valμ K₁ μ K₂)  :
μ K

theorem measure_theory.outer_measure.of_content_exists_compact {G : Type w} [t2_space G] {h1 : μ = 0} (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) {U : topological_space.opens G} (hU : < ) {ε : ℝ≥0} :
0 < ε(∃ (K : , K.val U + ε)

theorem measure_theory.outer_measure.of_content_exists_open {G : Type w} [t2_space G] {h1 : μ = 0} (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) {A : set G} (hA : < ) {ε : ℝ≥0} :
0 < ε(∃ (U : , A U + ε)

theorem measure_theory.outer_measure.of_content_preimage {G : Type w} [t2_space G] {h1 : μ = 0} (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) (f : G ≃ₜ G) (h : ∀ ⦃K : ⦄, μ = μ K) (A : set G) :
(f ⁻¹' A) =

theorem measure_theory.outer_measure.is_left_invariant_of_content {G : Type w} [t2_space G] {h1 : μ = 0} (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) [group G] (h : ∀ (g : G) {K : , μ (topological_space.compacts.map (λ (b : G), g * b) _ K) = μ K) (g : G) (A : set G) :
((λ (h : G), g * h) ⁻¹' A) =

theorem measure_theory.outer_measure.of_content_caratheodory {G : Type w} [t2_space G] {h1 : μ = 0} (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) (A : set G) :
∀ (U : , (U A) + (U \ A)

theorem measure_theory.outer_measure.of_content_pos_of_is_open {G : Type w} [t2_space G] {h1 : μ = 0} (h2 : ∀ (K₁ K₂ : , μ (K₁ K₂) μ K₁ + μ K₂) [group G] (h3 : ∀ (g : G) {K : , μ (topological_space.compacts.map (λ (b : G), g * b) _ K) = μ K) (hK : 0 < μ K) {U : set G} :
U.nonempty