The shrinking lemma #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
In this file we prove a few versions of the shrinking lemma. The lemma says that in a normal
topological space a point finite open covering can be “shrunk”: for a point finite open covering
u : ι → set X
there exists a refinement v : ι → set X
such that closure (v i) ⊆ u i
.
For finite or countable coverings this lemma can be proved without the axiom of choice, see ncatlab for details. We only formalize the most general result that works for any covering but needs the axiom of choice.
We prove two versions of the lemma:
exists_subset_Union_closure_subset
deals with a covering of a closed set in a normal space;exists_Union_eq_closure_subset
deals with a covering of the whole space.
Tags #
normal space, shrinking lemma
- to_fun : ι → set X
- carrier : set ι
- is_open' : ∀ (i : ι), is_open (self.to_fun i)
- subset_Union' : s ⊆ ⋃ (i : ι), self.to_fun i
- closure_subset' : ∀ (i : ι), i ∈ self.carrier → closure (self.to_fun i) ⊆ u i
- apply_eq' : ∀ (i : ι), i ∉ self.carrier → self.to_fun i = u i
Auxiliary definition for the proof of shrinking_lemma
. A partial refinement of a covering
⋃ i, u i
of a set s
is a map v : ι → set X
and a set carrier : set ι
such that
s ⊆ ⋃ i, v i
;- all
v i
are open; - if
i ∈ carrier v
, thenclosure (v i) ⊆ u i
; - if
i ∉ carrier
, thenv i = u i
.
This type is equipped with the folowing partial order: v ≤ v'
if v.carrier ⊆ v'.carrier
and v i = v' i
for i ∈ v.carrier
. We will use Zorn's lemma to prove that this type has
a maximal element, then show that the maximal element must have carrier = univ
.
Instances for shrinking_lemma.partial_refinement
- shrinking_lemma.partial_refinement.has_sizeof_inst
- shrinking_lemma.partial_refinement.has_coe_to_fun
- shrinking_lemma.partial_refinement.partial_order
Equations
- shrinking_lemma.partial_refinement.partial_order = {le := λ (v₁ v₂ : shrinking_lemma.partial_refinement u s), v₁.carrier ⊆ v₂.carrier ∧ ∀ (i : ι), i ∈ v₁.carrier → ⇑v₁ i = ⇑v₂ i, lt := preorder.lt._default (λ (v₁ v₂ : shrinking_lemma.partial_refinement u s), v₁.carrier ⊆ v₂.carrier ∧ ∀ (i : ι), i ∈ v₁.carrier → ⇑v₁ i = ⇑v₂ i), le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _}
If two partial refinements v₁
, v₂
belong to a chain (hence, they are comparable)
and i
belongs to the carriers of both partial refinements, then v₁ i = v₂ i
.
The carrier of the least upper bound of a non-empty chain of partial refinements is the union of their carriers.
Equations
- shrinking_lemma.partial_refinement.chain_Sup_carrier c = ⋃ (v : shrinking_lemma.partial_refinement u s) (H : v ∈ c), v.carrier
Choice of an element of a nonempty chain of partial refinements. If i
belongs to one of
carrier v
, v ∈ c
, then find c ne i
is one of these partial refinements.
Equations
- shrinking_lemma.partial_refinement.find c ne i = dite (∃ (v : shrinking_lemma.partial_refinement u s) (H : v ∈ c), i ∈ v.carrier) (λ (hi : ∃ (v : shrinking_lemma.partial_refinement u s) (H : v ∈ c), i ∈ v.carrier), hi.some) (λ (hi : ¬∃ (v : shrinking_lemma.partial_refinement u s) (H : v ∈ c), i ∈ v.carrier), ne.some)
Least upper bound of a nonempty chain of partial refinements.
Equations
- shrinking_lemma.partial_refinement.chain_Sup c hc ne hfin hU = {to_fun := λ (i : ι), ⇑(shrinking_lemma.partial_refinement.find c ne i) i, carrier := shrinking_lemma.partial_refinement.chain_Sup_carrier c, is_open' := _, subset_Union' := _, closure_subset' := _, apply_eq' := _}
chain_Sup hu c hc ne hfin hU
is an upper bound of the chain c
.
If s
is a closed set, v
is a partial refinement, and i
is an index such that
i ∉ v.carrier
, then there exists a partial refinement that is strictly greater than v
.
Shrinking lemma. A point-finite open cover of a closed subset of a normal space can be "shrunk" to a new open cover so that the closure of each new open set is contained in the corresponding original open set.
Shrinking lemma. A point-finite open cover of a closed subset of a normal space can be "shrunk"
to a new closed cover so that each new closed set is contained in the corresponding original open
set. See also exists_subset_Union_closure_subset
for a stronger statement.
Shrinking lemma. A point-finite open cover of a closed subset of a normal space can be "shrunk" to a new open cover so that the closure of each new open set is contained in the corresponding original open set.
Shrinking lemma. A point-finite open cover of a closed subset of a normal space can be "shrunk"
to a new closed cover so that each of the new closed sets is contained in the corresponding
original open set. See also exists_Union_eq_closure_subset
for a stronger statement.