src/HOL/Analysis/Riemann_Mapping.thy
changeset 70817 dd675800469d
parent 70365 4df0628e8545
child 71029 934e0044e94b
equal deleted inserted replaced
70816:5bc338cee4a0 70817:dd675800469d
   523               by (rule has_contour_integral_diff [OF z con])
   523               by (rule has_contour_integral_diff [OF z con])
   524             show "\<And>w. w \<in> closed_segment x y \<Longrightarrow> norm (f w - f x) \<le> e/2"
   524             show "\<And>w. w \<in> closed_segment x y \<Longrightarrow> norm (f w - f x) \<le> e/2"
   525               by (metis d1 dist_norm less_le_trans not_less not_less_iff_gr_or_eq segment_bound1 that(4))
   525               by (metis d1 dist_norm less_le_trans not_less not_less_iff_gr_or_eq segment_bound1 that(4))
   526           qed (use \<open>e > 0\<close> in auto)
   526           qed (use \<open>e > 0\<close> in auto)
   527           with \<open>e > 0\<close> have "inverse (norm (y - x)) * norm (z - f x * (y - x)) \<le> e/2"
   527           with \<open>e > 0\<close> have "inverse (norm (y - x)) * norm (z - f x * (y - x)) \<le> e/2"
   528             by (simp add: divide_simps)
   528             by (simp add: field_split_simps)
   529           also have "... < e"
   529           also have "... < e"
   530             using \<open>e > 0\<close> by simp
   530             using \<open>e > 0\<close> by simp
   531           finally show ?thesis
   531           finally show ?thesis
   532             by (simp add: contour_integral_unique [OF z])
   532             by (simp add: contour_integral_unique [OF z])
   533         qed
   533         qed
   699       using norm_triangle_ineq4 [of x y] by simp
   699       using norm_triangle_ineq4 [of x y] by simp
   700     have "norm ((r/3) / (g z + g a) - (r/3) / (g a + g a)) < 1" if "z \<in> S" for z
   700     have "norm ((r/3) / (g z + g a) - (r/3) / (g a + g a)) < 1" if "z \<in> S" for z
   701       apply (rule 3)
   701       apply (rule 3)
   702       unfolding norm_divide
   702       unfolding norm_divide
   703       using \<open>r > 0\<close> g_not_r [OF \<open>z \<in> S\<close>] g_not_r [OF \<open>a \<in> S\<close>]
   703       using \<open>r > 0\<close> g_not_r [OF \<open>z \<in> S\<close>] g_not_r [OF \<open>a \<in> S\<close>]
   704       by (simp_all add: divide_simps dist_commute dist_norm)
   704       by (simp_all add: field_split_simps dist_commute dist_norm)
   705   then show "?f ` S \<subseteq> ball 0 1"
   705   then show "?f ` S \<subseteq> ball 0 1"
   706     by auto
   706     by auto
   707     show "inj_on ?f S"
   707     show "inj_on ?f S"
   708       using \<open>r > 0\<close> eqg apply (clarsimp simp: inj_on_def)
   708       using \<open>r > 0\<close> eqg apply (clarsimp simp: inj_on_def)
   709       by (metis diff_add_cancel)
   709       by (metis diff_add_cancel)
   943       proof (clarify, clarsimp simp: X_def fim [symmetric])
   943       proof (clarify, clarsimp simp: X_def fim [symmetric])
   944         fix x assume x [rule_format]: "\<forall>n. f x \<in> closure (f ` A n)" and "cmod x < 1"
   944         fix x assume x [rule_format]: "\<forall>n. f x \<in> closure (f ` A n)" and "cmod x < 1"
   945         then obtain n where n: "1 / (1 - norm x) < of_nat n"
   945         then obtain n where n: "1 / (1 - norm x) < of_nat n"
   946           using reals_Archimedean2 by blast
   946           using reals_Archimedean2 by blast
   947         with \<open>cmod x < 1\<close> gr0I have XX: "1 / of_nat n < 1 - norm x" and "n > 0"
   947         with \<open>cmod x < 1\<close> gr0I have XX: "1 / of_nat n < 1 - norm x" and "n > 0"
   948           by (fastforce simp: divide_simps algebra_simps)+
   948           by (fastforce simp: field_split_simps algebra_simps)+
   949         have "f x \<in> f ` (D n)"
   949         have "f x \<in> f ` (D n)"
   950           using n \<open>cmod x < 1\<close> by (auto simp: divide_simps algebra_simps D_def)
   950           using n \<open>cmod x < 1\<close> by (auto simp: field_split_simps algebra_simps D_def)
   951         moreover have " f ` D n \<inter> closure (f ` A n) = {}"
   951         moreover have " f ` D n \<inter> closure (f ` A n) = {}"
   952         proof -
   952         proof -
   953           have op_fDn: "open(f ` (D n))"
   953           have op_fDn: "open(f ` (D n))"
   954           proof (rule invariance_of_domain)
   954           proof (rule invariance_of_domain)
   955             show "continuous_on (D n) f"
   955             show "continuous_on (D n) f"