Module mathcomp.analysis.topology_theory.uniform_structure
From HB Require Import structures.From mathcomp Require Import boot order algebra all_classical.
#[warning="-warn-library-file-internal-analysis"]
From mathcomp Require Import unstable.
From mathcomp Require Import topology_structure.
Unset SsrOldRewriteGoalsOrder.
Set Implicit Arguments.
Unset Strict Implicit.
Unset Printing Implicit Defensive.
Local Open Scope classical_set_scope.
Local Open Scope ring_scope.
Definition
fct_ball : forall [T : choiceType] [R : numFieldType] [U : pseudoMetricType R], arrow_uniform_type T U -> R -> arrow_uniform_type T U -> Prop fct_ball is not universe polymorphic Arguments fct_ball [T R U] x eps%_ring_scope y fct_ball is transparent Expands to: Constant mathcomp.analysis.topology_theory.function_spaces.fct_ball Declared in library mathcomp.analysis.topology_theory.function_spaces, line 532, characters 11-19
Used by
- mathcomp.analysis.ereal
- mathcomp.analysis.topology_theory.initial_topology
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.subspace_topology
- mathcomp.analysis.topology_theory.product_topology
- mathcomp.analysis.topology_theory.matrix_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.discrete_topology
- mathcomp.analysis.topology_theory.metric_structure
- mathcomp.analysis.normedtype_theory.normed_module
- mathcomp.analysis.normedtype_theory.tvs
- mathcomp.analysis.normedtype_theory.urysohn
Source code
filter_from ent (fun => xsection A x).
Lemma
nbhs_ ent x = filter_from ent (fun => xsection A x).
Proof.
Local Open Scope relation_scope.
.
entourage : set_system (M * M);
entourage_filter : Filter entourage;
entourage_diagonal_subproof :
forall , entourage A -> diagonal `<=` A;
entourage_inv_subproof : forall , entourage A -> entourage A^-1;
entourage_split_ex_subproof :
forall , entourage A -> exists2 , entourage B & B \; B `<=` A;
nbhsE_subproof : nbhs = nbhs_ entourage;
}.
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.discrete_topology
- mathcomp.analysis.topology_theory.order_topology
- mathcomp.analysis.normedtype_theory.tvs
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.discrete_topology
- mathcomp.analysis.topology_theory.order_topology
- mathcomp.analysis.normedtype_theory.tvs
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.discrete_topology
- mathcomp.analysis.topology_theory.order_topology
- mathcomp.analysis.normedtype_theory.tvs
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.discrete_topology
- mathcomp.analysis.topology_theory.order_topology
- mathcomp.analysis.normedtype_theory.tvs
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.discrete_topology
- mathcomp.analysis.topology_theory.order_topology
- mathcomp.analysis.normedtype_theory.tvs
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.discrete_topology
- mathcomp.analysis.topology_theory.order_topology
- mathcomp.analysis.normedtype_theory.tvs
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.discrete_topology
- mathcomp.analysis.topology_theory.order_topology
- mathcomp.analysis.normedtype_theory.tvs
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.discrete_topology
- mathcomp.analysis.topology_theory.order_topology
- mathcomp.analysis.normedtype_theory.tvs
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.discrete_topology
- mathcomp.analysis.topology_theory.order_topology
- mathcomp.analysis.normedtype_theory.tvs
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
{ of Topological T & Nbhs_isUniform_mixin T}.
.
{ of PointedTopological T & Nbhs_isUniform_mixin T}.
.
entourage : set_system (M * M);
entourage_filter : Filter entourage;
entourage_diagonal : forall , entourage A -> diagonal `<=` A;
entourage_inv : forall , entourage A -> entourage A^-1;
entourage_split_ex :
forall , entourage A -> exists2 , entourage B & B \; B `<=` A;
nbhsE : nbhs = nbhs_ entourage;
}.
Local Close Scope relation_scope.
.
Let
Proof.
by move=> A entA; exists p; apply/mem_set; apply: entourage_diagonal entA _ _.
apply: filter_from_filter.
by exists setT; exact: @filterT entourage_filter.
move=> A B entA entB; exists (A `&` B); last by rewrite xsectionI.
exact: (@filterI _ _ entourage_filter).
Qed.
Let
Proof.
by apply/sBpA/mem_set; exact: entourage_diagonal entB _ _.
Qed.
Let
Proof.
.
nbhs_filter nbhs_singleton nbhs_nbhs.
.
entourage_filter entourage_diagonal entourage_inv entourage_split_ex nbhsE.
.
Local Open Scope relation_scope.
.
entourage : set_system (M * M);
entourage_filter : Filter entourage;
entourage_diagonal : forall , entourage A -> diagonal `<=` A;
entourage_inv : forall , entourage A -> entourage A^-1;
entourage_split_ex :
forall , entourage A -> exists2 , entourage B & B \; B `<=` A;
}.
Local Close Scope relation_scope.
.
.
.
entourage_filter entourage_diagonal entourage_inv entourage_split_ex erefl.
.
Lemma
- mathcomp.analysis.cantor
- mathcomp.analysis.topology_theory.function_spaces
- mathcomp.analysis.topology_theory.product_topology
- mathcomp.analysis.topology_theory.matrix_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.separation_axioms
- mathcomp.analysis.normedtype_theory.urysohn
Source code
Proof.
Lemma
- mathcomp.analysis.topology_theory.function_spaces
Source code
E (x, y) <-> (E ^-1)%relation (y, x).
Proof.
Lemma
filter_from (@entourage M) (fun => xsection A x) = nbhs x.
Proof.
Module Export
Definition
uniform_fun : forall {U : Type}, set U -> Type -> Type uniform_fun is not universe polymorphic Arguments uniform_fun {U}%_type_scope A%_classical_set_scope V%_type_scope uniform_fun is transparent Expands to: Constant mathcomp.analysis.topology_theory.function_spaces.uniform_fun Declared in library mathcomp.analysis.topology_theory.function_spaces, line 627, characters 11-22
Used by
- mathcomp.analysis.cantor
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.separation_axioms
- mathcomp.analysis.homotopy_theory.wedge_sigT
- mathcomp.analysis.normedtype_theory.urysohn
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
(nbhs_simpl,@filter_from_entourageE,@nbhs_entourageE).
End NbhsEntourage.
Lemma
- mathcomp.analysis.topology_theory.initial_topology
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.subspace_topology
- mathcomp.analysis.topology_theory.separation_axioms
Source code
Proof.
Lemma
- mathcomp.analysis.normedtype_theory.urysohn
Source code
Filter F -> Filter [set V^-1 | in F]%relation.
Proof.
- by exists [set: T * T] => //; exact: filterT.
- by move=> P Q [R FR <-] [S FS <-]; exists (R `&` S) => //; exact: filterI.
- move=> P Q PQ [R FR RP]; exists Q^-1%relation => //; first last.
by rewrite eqEsubset; split; case.
by apply: filterS FR; case=> ? ? /= ?; apply: PQ; rewrite -RP.
Qed.
Section uniformType1.
Local Open Scope relation_scope.
Context { : uniformType}.
Lemma
- mathcomp.analysis.cantor
- mathcomp.analysis.topology_theory.initial_topology
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.subspace_topology
- mathcomp.analysis.topology_theory.function_spaces
- mathcomp.analysis.topology_theory.product_topology
- mathcomp.analysis.topology_theory.matrix_topology
- mathcomp.analysis.topology_theory.separation_axioms
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
Proof.
Global Instance
Proof.
Lemma
- mathcomp.analysis.topology_theory.initial_topology
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.product_topology
- mathcomp.analysis.topology_theory.separation_axioms
- mathcomp.analysis.normedtype_theory.normed_module
Source code
Proof.
Lemma
- mathcomp.analysis.topology_theory.initial_topology
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.subspace_topology
- mathcomp.analysis.topology_theory.function_spaces
- mathcomp.analysis.topology_theory.product_topology
- mathcomp.analysis.topology_theory.matrix_topology
- mathcomp.analysis.topology_theory.separation_axioms
- mathcomp.analysis.normedtype_theory.urysohn
Source code
Proof.
Lemma
- mathcomp.analysis.topology_theory.initial_topology
- mathcomp.analysis.topology_theory.matrix_topology
- mathcomp.analysis.normedtype_theory.urysohn
Source code
entourage A -> exists2 , entourage B & B \; B `<=` A.
Proof.
Definition
sigL_arrow : forall {U : choiceType} [A : set U] [V : uniformType], (U -> V) -> arrow_uniform_type A V sigL_arrow is not universe polymorphic Arguments sigL_arrow {U} [A]%_classical_set_scope [V] _%_function_scope _ sigL_arrow is transparent Expands to: Constant mathcomp.analysis.topology_theory.function_spaces.sigL_arrow Declared in library mathcomp.analysis.topology_theory.function_spaces, line 636, characters 11-21
Used by
- mathcomp.analysis.cantor
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.subspace_topology
- mathcomp.analysis.topology_theory.function_spaces
- mathcomp.analysis.topology_theory.product_topology
- mathcomp.analysis.topology_theory.matrix_topology
- mathcomp.analysis.topology_theory.compact
- mathcomp.analysis.topology_theory.separation_axioms
- mathcomp.analysis.normedtype_theory.urysohn
Source code
get (entourage `&` [set | B \; B `<=` A]).
Lemma
entourage (split_ent A) /\ split_ent A \; split_ent A `<=` A.
Proof.
Lemma
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.function_spaces
- mathcomp.analysis.topology_theory.product_topology
- mathcomp.analysis.topology_theory.separation_axioms
Source code
entourage (split_ent A).
Proof.
Lemma
- mathcomp.analysis.topology_theory.subspace_topology
- mathcomp.analysis.topology_theory.function_spaces
- mathcomp.analysis.topology_theory.product_topology
- mathcomp.analysis.topology_theory.matrix_topology
- mathcomp.analysis.topology_theory.separation_axioms
Source code
split_ent A \; split_ent A `<=` A.
Proof.
Lemma
- mathcomp.analysis.cantor
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.subspace_topology
- mathcomp.analysis.topology_theory.function_spaces
- mathcomp.analysis.topology_theory.compact
- mathcomp.analysis.topology_theory.separation_axioms
Source code
split_ent A (x, z) -> split_ent A (z, y) -> A (x, y).
Proof.
Lemma
- mathcomp.analysis.topology_theory.function_spaces
- mathcomp.analysis.topology_theory.compact
- mathcomp.analysis.topology_theory.separation_axioms
Source code
Proof.
Lemma
- mathcomp.analysis.topology_theory.function_spaces
- mathcomp.analysis.topology_theory.matrix_topology
- mathcomp.analysis.topology_theory.compact
Source code
F --> p <-> forall , entourage A -> \forall \near F, A (p, q).
Proof.
by apply/funext => E; apply/seteqP; split => [|] ? /xsectionP.
by rewrite filter_from_entourageE.
Qed.
Lemma
F --> x -> forall , entourage A -> \forall \near F, A (x, y).
Proof.
Lemma
- mathcomp.analysis.topology_theory.function_spaces
- mathcomp.analysis.topology_theory.matrix_topology
Source code
f @ F --> p <-> forall , entourage A -> \forall \near F, A (p, f t).
Proof.
Lemma
- mathcomp.analysis.topology_theory.separation_axioms
Source code
Proof.
Lemma
- mathcomp.analysis.topology_theory.separation_axioms
Source code
Proof.
by apply: entourage_refl; exact: entourage_split_ent.
Qed.
End uniformType1.
Global Instance
ProperFilter (@entourage M).
Proof.
by move=> A entA; exists (point, point); apply: entourage_refl.
Qed.
#[global]
Hint Extern 0 (entourage (split_ent _)) => exact: entourage_split_ent : core.
#[global]
Hint Extern 0 (entourage (get _)) => exact: entourage_split_ent : core.
#[global]
Hint Extern 0 (entourage (_^-1)%relation) => exact: entourage_inv : core.
Arguments entourage_split {M} z {x y A}.
#[global]
Hint Extern 0 (nbhs _ (xsection _ _)) => exact: nbhs_entourage : core.
Lemma
- mathcomp.analysis.cantor
- mathcomp.analysis.normedtype_theory.urysohn
Source code
closure (xsection (split_ent E) x) `<=` xsection E x.
Proof.
Lemma
- mathcomp.analysis_stdlib.Rstruct_topology
- mathcomp.analysis.derive
- mathcomp.analysis.normedtype_theory.normed_module
- mathcomp.analysis.normedtype_theory.num_normedtype
Source code
{for x, continuous f} <-> f @ x^' --> f x.
Proof.
by rewrite !near_simpl; apply: cvg_within; apply: cfx.
rewrite !nbhs_nearE !near_map !near_nbhs in fxP *; have /= := cfx P fxP.
rewrite !near_simpl near_withinE near_simpl => Pf; near=> y.
by have [->|] := eqVneq y x; [by apply: nbhs_singleton|near: y].
Unshelve. all: by end_near. Qed.
Lemma
( : topologicalType) ( : T -> U) ( : T) :
{for x, continuous f} ->
(forall , f y = f x -> y = x) -> f @ x^' --> (f x)^'.
Proof.
Definition
uniform_fun_family : forall {U : Type}, Type -> (set U -> Prop) -> Type uniform_fun_family is not universe polymorphic Arguments uniform_fun_family {U}%_type_scope V%_type_scope fam%_function_scope uniform_fun_family is transparent Expands to: Constant mathcomp.analysis.topology_theory.function_spaces.uniform_fun_family Declared in library mathcomp.analysis.topology_theory.function_spaces, line 699, characters 11-29
Used by
- mathcomp.analysis.topology_theory.supremum_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.separation_axioms
Source code
exists : set_system (T * T), [/\
countable R,
R `<=` entourage &
forall , entourage P -> exists2 , R Q & Q `<=` P].
Lemma
- mathcomp.analysis.cantor
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.separation_axioms
Source code
countable_uniformity T <-> exists2 : nat -> set (T * T),
(forall , entourage A -> exists , f N `<=` A) &
(forall , entourage (f n)).
Proof.
move=> /pfcard_geP[-> _ /(_ _ (@entourageT _))[]//|/unsquash f eM Msub].
exists f; last by move=> n; apply: eM; exact: funS.
by move=> ? /Msub [Q + ?] => /(@surj _ _ _ _ f)[n _ fQ]; exists n; rewrite fQ.
exists (range f); split; first exact: card_image_le.
by move=> E [n _] <-; exact: entf.
by move=> E /fsubE [n fnA]; exists (f n) => //; exists n.
Qed.
Lemma
- mathcomp.analysis.topology_theory.supremum_topology
Source code
entourage A -> open_nbhs x (xsection A x)°.
Proof.
by apply: nbhs_singleton; apply: nbhs_interior; exact: nbhs_entourage.
Qed.
Definition
compact_open : topologicalType -> topologicalType -> Type compact_open is not universe polymorphic Arguments compact_open {T U} compact_open is transparent Expands to: Constant mathcomp.analysis.topology_theory.function_spaces.compact_open Declared in library mathcomp.analysis.topology_theory.function_spaces, line 925, characters 11-23
Used by
- mathcomp.analysis.topology_theory.initial_topology
- mathcomp.analysis.topology_theory.product_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.normedtype_theory.tvs
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
(map_pair f) @ entourage --> entourage.
Lemma
- mathcomp.analysis.normedtype_theory.pseudometric_normed_Zmodule
Source code
unif_continuous f -> continuous f.
Proof.
rewrite /cvg_to /= => u X; rewrite !nbhs_simpl /= -!nbhs_entourageE.
case => Y /ucf /=; set Y' := (Y' in entourage Y') => eY' YX.
exists Y' => //.
rewrite /Y' /=.
rewrite -image_sub => v [] u' /= Yfuu' <-.
exact: YX.
Qed.
Lemma
- mathcomp.analysis.topology_theory.initial_topology
- mathcomp.analysis.normedtype_theory.tvs
Source code
unif_continuous f -> unif_continuous g -> unif_continuous (g \o f).
Proof.
Definition
compact_openK : forall {T : topologicalType}, topologicalType -> set T -> Type compact_openK is not universe polymorphic Arguments compact_openK {T U} {K}%_classical_set_scope compact_openK is transparent Expands to: Constant mathcomp.analysis.topology_theory.function_spaces.compact_openK Declared in library mathcomp.analysis.topology_theory.function_spaces, line 930, characters 11-24
Source code
exists2 , entourage B & forall , A PQ -> forall ,
PQ.1 p -> PQ.2 q -> B (p,q).
Definition
compact_openK_nbhs : forall {T U : topologicalType} {K : set T}, compact_openK -> set_system (T -> U) compact_openK_nbhs is not universe polymorphic Arguments compact_openK_nbhs {T U} {K}%_classical_set_scope f _ compact_openK_nbhs is transparent Expands to: Constant mathcomp.analysis.topology_theory.function_spaces.compact_openK_nbhs Declared in library mathcomp.analysis.topology_theory.function_spaces, line 932, characters 11-29
Used by
- mathcomp.analysis.sequences
- mathcomp.analysis.topology_theory.function_spaces
- mathcomp.analysis.topology_theory.matrix_topology
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.topology_theory.compact
- mathcomp.analysis.normedtype_theory.complete_normed_module
Source code
Lemma
- mathcomp.analysis.sequences
Source code
[cvg F in T] -> cauchy F.
Proof.
exists (xsection (B^-1%relation) (lim F), xsection B (lim F)).
split=> /=; apply: cvF; rewrite /= -nbhs_entourageE; last by exists B.
by exists B^-1%relation => //; exact: entourage_inv.
move=> ab [/= /xsectionP Balima /xsectionP Blimb]; apply: sB2A.
by exists (lim F).
Qed.
.
cauchy_cvg :
forall ( : set_system T), ProperFilter F -> cauchy F -> cvg F
}.
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.normedtype_theory.complete_normed_module
Source code
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.normedtype_theory.complete_normed_module
Source code
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.normedtype_theory.complete_normed_module
Source code
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.normedtype_theory.complete_normed_module
Source code
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.normedtype_theory.complete_normed_module
Source code
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.normedtype_theory.complete_normed_module
Source code
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.normedtype_theory.complete_normed_module
Source code
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.normedtype_theory.complete_normed_module
Source code
- mathcomp.analysis.topology_theory.pseudometric_structure
- mathcomp.analysis.normedtype_theory.complete_normed_module
Source code
{ of Uniform T & Uniform_isComplete T & isPointed T}.
Section completeType1.
Context { : completeType}.
Lemma
- mathcomp.analysis.sequences
- mathcomp.analysis.numfun
Source code
Proof.
End completeType1.
Arguments cauchy_cvg {T} F {FF} _ : rename.
Arguments cauchy_cvgP {T} F {FF}.