Module docstring
{"# Projection onto a closed interval
In this file we prove that the projection Set.projIcc f a b h is a quotient map, and use it
to show that Set.IccExtend h f is continuous if and only if f is continuous.
"}
{"# Projection onto a closed interval
In this file we prove that the projection Set.projIcc f a b h is a quotient map, and use it
to show that Set.IccExtend h f is continuous if and only if f is continuous.
"}
Filter.Tendsto.IccExtend
theorem
(f : γ → Icc a b → β) {la : Filter α} {lb : Filter β} {lc : Filter γ}
(hf : Tendsto (↿f) (lc ×ˢ la.map (projIcc a b h)) lb) : Tendsto (↿(IccExtend h ∘ f)) (lc ×ˢ la) lb
protected theorem Filter.Tendsto.IccExtend (f : γ → Icc a b → β) {la : Filter α} {lb : Filter β}
{lc : Filter γ} (hf : Tendsto (↿f) (lc ×ˢ la.map (projIcc a b h)) lb) :
Tendsto (↿(IccExtend h ∘ f)) (lc ×ˢ la) lb :=
hf.comp <| tendsto_id.prodMap tendsto_map
continuous_projIcc
theorem
: Continuous (projIcc a b h)
@[continuity]
theorem continuous_projIcc : Continuous (projIcc a b h) :=
(continuous_const.max <| continuous_const.min continuous_id).subtype_mk _
isQuotientMap_projIcc
theorem
: IsQuotientMap (projIcc a b h)
continuous_IccExtend_iff
theorem
{f : Icc a b → β} : Continuous (IccExtend h f) ↔ Continuous f
@[simp]
theorem continuous_IccExtend_iff {f : Icc a b → β} : ContinuousContinuous (IccExtend h f) ↔ Continuous f :=
isQuotientMap_projIcc.continuous_iff.symm
Continuous.IccExtend
theorem
{f : γ → Icc a b → β} {g : γ → α} (hf : Continuous ↿f) (hg : Continuous g) :
Continuous fun a => IccExtend h (f a) (g a)
/-- See Note [continuity lemma statement]. -/
protected theorem Continuous.IccExtend {f : γ → Icc a b → β} {g : γ → α} (hf : Continuous ↿f)
(hg : Continuous g) : Continuous fun a => IccExtend h (f a) (g a) :=
show Continuous (↿f↿f ∘ fun x => (x, projIcc a b h (g x)))
from hf.comp <| continuous_id.prodMk <| continuous_projIcc.comp hg
Continuous.Icc_extend'
theorem
{f : Icc a b → β} (hf : Continuous f) : Continuous (IccExtend h f)
/-- A useful special case of `Continuous.IccExtend`. -/
@[continuity]
protected theorem Continuous.Icc_extend' {f : Icc a b → β} (hf : Continuous f) :
Continuous (IccExtend h f) :=
hf.comp continuous_projIcc
ContinuousAt.IccExtend
theorem
{x : γ} (f : γ → Icc a b → β) {g : γ → α} (hf : ContinuousAt (↿f) (x, projIcc a b h (g x))) (hg : ContinuousAt g x) :
ContinuousAt (fun a => IccExtend h (f a) (g a)) x
theorem ContinuousAt.IccExtend {x : γ} (f : γ → Icc a b → β) {g : γ → α}
(hf : ContinuousAt (↿f) (x, projIcc a b h (g x))) (hg : ContinuousAt g x) :
ContinuousAt (fun a => IccExtend h (f a) (g a)) x :=
show ContinuousAt (↿f↿f ∘ fun x => (x, projIcc a b h (g x))) x from
ContinuousAt.comp hf <| continuousAt_id.prodMk <| continuous_projIcc.continuousAt.comp hg