Skip to content

Commit 504951b

Browse files
committed
T0 pseudometric is metric
1 parent 46e3a9e commit 504951b

File tree

1 file changed

+45
-2
lines changed

1 file changed

+45
-2
lines changed

IsarMathLib/MetricSpace_ZF.thy

+45-2
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
2626
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
2727
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *)
2828

29-
section \<open> Metric spaces \<close>
29+
section \<open>Metric spaces\<close>
3030

3131
theory MetricSpace_ZF imports Topology_ZF_1 OrderedLoop_ZF Lattice_ZF UniformSpace_ZF
3232
begin
@@ -321,7 +321,50 @@ lemma (in pmetric_space) disks_open:
321321
assumes "c\<in>X" "R\<in>L\<^sub>+" "r {down-directs} L\<^sub>+"
322322
shows "disk(c,R) \<in> \<tau>"
323323
using assms base_sets_open disks_are_base(1) pmetric_is_top
324+
by blast
325+
326+
text\<open>If $r$ down-directs $L_+$ and $x$ is an element of an open set $U$ then
327+
there exist radius $R\in L_+$ such that the disk with center $x$ and radius $R$
328+
is contained in $U$. \<close>
329+
330+
lemma (in pmetric_space) point_open_disk:
331+
assumes "r {down-directs} L\<^sub>+" "U\<in>\<tau>" "x\<in>U"
332+
shows "\<exists>R\<in>L\<^sub>+. disk(x,R) \<subseteq> U"
333+
proof -
334+
let ?B = "\<Union>c\<in>X. {disk(c,R). R\<in>L\<^sub>+}"
335+
from assms have "\<exists>V\<in>?B. V\<subseteq>U \<and> x\<in>V"
336+
using disks_are_base point_open_base_neigh by force
337+
then obtain c R where "c\<in>X" "R\<in>L\<^sub>+" "x\<in>disk(c,R)" "disk(c,R)\<subseteq>U"
338+
by auto
339+
then show ?thesis using radius_in_loop(4) disk_in_disk1
324340
by blast
341+
qed
342+
343+
text\<open>If $r$ down-directs $L_+$ then the generated topology cannot distinguish
344+
two points if their distance is zero. "Cannot distinguish" here means that if one is
345+
in an open set then the second one is in that set too. \<close>
346+
347+
lemma (in pmetric_space) zero_dist_same_open:
348+
assumes "r {down-directs} L\<^sub>+" "U\<in>\<tau>" "x\<in>U" "y\<in>X" "d`\<langle>x,y\<rangle>=\<zero>"
349+
shows "y\<in>U"
350+
using assms point_open_disk posset_definition1 disk_definition
351+
by force
352+
353+
text\<open>A pseudometric that induces a $T_0$ topology is a metric.\<close>
354+
355+
theorem (in pmetric_space) pmetric_t0_metric:
356+
assumes "r {down-directs} L\<^sub>+" "\<tau> {is T\<^sub>0}"
357+
shows "IsAmetric(d,X,L,A,r)"
358+
proof -
359+
{ fix x y
360+
assume "x\<in>X" "y\<in>X" "d`\<langle>x,y\<rangle>=\<zero>"
361+
with assms(1) have "\<forall>U\<in>\<tau>. (x\<in>U \<longleftrightarrow> y\<in>U)"
362+
using zero_dist_same_open pmetric_properties(3) by auto
363+
with assms \<open>x\<in>X\<close> \<open>y\<in>X\<close> have "x=y" using metric_top_carrier Top_1_1_L1
364+
by blast
365+
} then show "IsAmetric(d,X,L,A,r)"
366+
using pmetricAssum unfolding IsAmetric_def by auto
367+
qed
325368

326369
text\<open>To define the \<open>metric_space\<close> locale we take the \<open>pmetric_space\<close> and add
327370
the assumption of identity of indiscernibles.\<close>
@@ -401,7 +444,7 @@ proof -
401444
} then show ?thesis unfolding isT2_def by simp
402445
qed
403446

404-
subsection\<open>Uniform structures on metric spaces\<close>
447+
subsection\<open>Uniform structures on (pseudo-)metric spaces\<close>
405448

406449
text\<open>Each pseudometric space with pseudometric $d:X\times X\rightarrow L^+$
407450
supports a natural uniform structure, defined as supersets of the collection

0 commit comments

Comments
 (0)