(* Title: HOL/Analysis/Metric_Arith.thy Author: Maximilian Schäffeler (port from HOL Light)
*)
chapter\<open>Functional Analysis\<close>
section\<^marker>\<open>tag unimportant\<close> \<open>A decision procedure for metric spaces\<close>
theory Metric_Arith imports HOL.Real_Vector_Spaces begin
text\<^marker>\<open>tag unimportant\<close> \<open>
A port of the decision procedure ``Formalization of metric spaces in HOL Light'' \<^cite>\<open>"DBLP:journals/jar/Maggesi18"\<close> for the type class @{class metric_space}, with the \<open>Argo\<close> solver as backend. \<close>
lemma ball_insert: "(\x\insert a B. P x) = (P a \ (\x\B. P x))" by blast
lemma Sup_insert_insert: fixes a::real shows"Sup (insert a (insert b s)) = Sup (insert (max a b) s)" by (simp add: Sup_real_def)
lemma real_abs_dist: "\dist x y\ = dist x y" by simp
lemma maxdist_thm [THEN HOL.eq_reflection]: assumes"finite s""x \ s" "y \ s" defines"\a. f a \ \dist x a - dist a y\" shows"dist x y = Sup (f ` s)" proof - have"dist x y \ Sup (f ` s)" proof - have"finite (f ` s)" by (simp add: \<open>finite s\<close>) moreoverhave"\dist x y - dist y y\ \ f ` s" by (metis \<open>y \<in> s\<close> f_def imageI) ultimatelyshow ?thesis using le_cSup_finite by simp qed alsohave"Sup (f ` s) \ dist x y" using\<open>x \<in> s\<close> cSUP_least[of s f] abs_dist_diff_le unfolding f_def by blast finallyshow ?thesis . qed
theorem metric_eq_thm [THEN HOL.eq_reflection]: "x \ s \ y \ s \ x = y \ (\a\s. dist x a = dist y a)" by auto
ML_file \<open>metric_arith.ML\<close>
method_setup metric = \<open>
Scan.succeed (SIMPLE_METHOD' o Metric_Arith.metric_arith_tac) \<close> "prove simple linear statements in metric spaces (\<forall>\<exists>\<^sub>p fragment)"
end
¤ Dauer der Verarbeitung: 0.2 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.