-
Notifications
You must be signed in to change notification settings - Fork 234
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
port of topology.partial only basic naming fixes
- Loading branch information
1 parent
79ee310
commit 24c3d9b
Showing
2 changed files
with
93 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
/- | ||
Copyright (c) 2018 Jeremy Avigad. All rights reserved. | ||
Released under Apache 2.0 license as described in the file LICENSE. | ||
Authors: Jeremy Avigad | ||
! This file was ported from Lean 3 source module topology.partial | ||
! leanprover-community/mathlib commit 4c19a16e4b705bf135cf9a80ac18fcc99c438514 | ||
! Please do not edit these lines, except to modify the commit id | ||
! if you have ported upstream changes. | ||
-/ | ||
import Mathlib.Topology.ContinuousOn | ||
import Mathlib.Order.Filter.Partial | ||
|
||
/-! | ||
# Partial functions and topological spaces | ||
In this file we prove properties of `Filter.Ptendsto` etc in topological spaces. We also introduce | ||
`Pcontinuous`, a version of `Continuous` for partially defined functions. | ||
-/ | ||
|
||
|
||
open Filter | ||
|
||
open Topology | ||
|
||
variable {α β : Type _} [TopologicalSpace α] | ||
|
||
theorem rtendsto_nhds {r : Rel β α} {l : Filter β} {a : α} : | ||
Rtendsto r l (𝓝 a) ↔ ∀ s, IsOpen s → a ∈ s → r.core s ∈ l := | ||
all_mem_nhds_filter _ _ (fun _s _t => id) _ | ||
#align rtendsto_nhds rtendsto_nhds | ||
|
||
theorem rtendsto'_nhds {r : Rel β α} {l : Filter β} {a : α} : | ||
Rtendsto' r l (𝓝 a) ↔ ∀ s, IsOpen s → a ∈ s → r.preimage s ∈ l := by | ||
rw [rtendsto'_def] | ||
apply all_mem_nhds_filter | ||
apply Rel.preimage_mono | ||
#align rtendsto'_nhds rtendsto'_nhds | ||
|
||
theorem ptendsto_nhds {f : β →. α} {l : Filter β} {a : α} : | ||
Ptendsto f l (𝓝 a) ↔ ∀ s, IsOpen s → a ∈ s → f.core s ∈ l := | ||
rtendsto_nhds | ||
#align ptendsto_nhds ptendsto_nhds | ||
|
||
theorem ptendsto'_nhds {f : β →. α} {l : Filter β} {a : α} : | ||
Ptendsto' f l (𝓝 a) ↔ ∀ s, IsOpen s → a ∈ s → f.preimage s ∈ l := | ||
rtendsto'_nhds | ||
#align ptendsto'_nhds ptendsto'_nhds | ||
|
||
/-! ### Continuity and partial functions -/ | ||
|
||
|
||
variable [TopologicalSpace β] | ||
|
||
/-- Continuity of a partial function -/ | ||
def Pcontinuous (f : α →. β) := | ||
∀ s, IsOpen s → IsOpen (f.preimage s) | ||
#align pcontinuous Pcontinuous | ||
|
||
theorem open_dom_of_pcontinuous {f : α →. β} (h : Pcontinuous f) : IsOpen f.Dom := by | ||
rw [← PFun.preimage_univ]; exact h _ isOpen_univ | ||
#align open_dom_of_pcontinuous open_dom_of_pcontinuous | ||
|
||
theorem pcontinuous_iff' {f : α →. β} : | ||
Pcontinuous f ↔ ∀ {x y} (h : y ∈ f x), Ptendsto' f (𝓝 x) (𝓝 y) := by | ||
constructor | ||
· intro h x y h' | ||
simp only [ptendsto'_def, mem_nhds_iff] | ||
rintro s ⟨t, tsubs, opent, yt⟩ | ||
exact ⟨f.preimage t, PFun.preimage_mono _ tsubs, h _ opent, ⟨y, yt, h'⟩⟩ | ||
intro hf s os | ||
rw [isOpen_iff_nhds] | ||
rintro x ⟨y, ys, fxy⟩ t | ||
rw [mem_principal] | ||
intro (h : f.preimage s ⊆ t) | ||
change t ∈ 𝓝 x | ||
apply mem_of_superset _ h | ||
have h' : ∀ s ∈ 𝓝 y, f.preimage s ∈ 𝓝 x := by | ||
intro s hs | ||
have : Ptendsto' f (𝓝 x) (𝓝 y) := hf fxy | ||
rw [ptendsto'_def] at this | ||
exact this s hs | ||
show f.preimage s ∈ 𝓝 x | ||
apply h' | ||
rw [mem_nhds_iff] | ||
exact ⟨s, Set.Subset.refl _, os, ys⟩ | ||
#align pcontinuous_iff' pcontinuous_iff' | ||
|
||
theorem continuousWithinAt_iff_ptendsto_res (f : α → β) {x : α} {s : Set α} : | ||
ContinuousWithinAt f s x ↔ Ptendsto (PFun.res f s) (𝓝 x) (𝓝 (f x)) := | ||
tendsto_iff_ptendsto _ _ _ _ | ||
#align continuous_within_at_iff_ptendsto_res continuousWithinAt_iff_ptendsto_res |