equal
deleted
inserted
replaced
3282 shows "\<exists>u\<in>s. \<exists>v\<in>s. \<forall>x\<in>convex hull s. \<forall>y \<in> convex hull s. norm(x - y) \<le> norm(u - v)" |
3282 shows "\<exists>u\<in>s. \<exists>v\<in>s. \<forall>x\<in>convex hull s. \<forall>y \<in> convex hull s. norm(x - y) \<le> norm(u - v)" |
3283 proof- |
3283 proof- |
3284 have "convex hull s \<noteq> {}" using hull_subset[of s convex] and assms(2) by auto |
3284 have "convex hull s \<noteq> {}" using hull_subset[of s convex] and assms(2) by auto |
3285 then obtain u v where obt:"u\<in>convex hull s" "v\<in>convex hull s" |
3285 then obtain u v where obt:"u\<in>convex hull s" "v\<in>convex hull s" |
3286 "\<forall>x\<in>convex hull s. \<forall>y\<in>convex hull s. norm (x - y) \<le> norm (u - v)" |
3286 "\<forall>x\<in>convex hull s. \<forall>y\<in>convex hull s. norm (x - y) \<le> norm (u - v)" |
3287 using compact_sup_maxdistance[OF finite_imp_compact_convex_hull[OF assms(1)]] by auto |
3287 using compact_sup_maxdistance[OF finite_imp_compact_convex_hull[OF assms(1)]] by (auto simp: dist_norm) |
3288 thus ?thesis proof(cases "u\<notin>s \<or> v\<notin>s", erule_tac disjE) |
3288 thus ?thesis proof(cases "u\<notin>s \<or> v\<notin>s", erule_tac disjE) |
3289 assume "u\<notin>s" then obtain y where "y\<in>convex hull s" "norm (u - v) < norm (y - v)" |
3289 assume "u\<notin>s" then obtain y where "y\<in>convex hull s" "norm (u - v) < norm (y - v)" |
3290 using simplex_furthest_lt[OF assms(1), THEN bspec[where x=u]] and obt(1) by auto |
3290 using simplex_furthest_lt[OF assms(1), THEN bspec[where x=u]] and obt(1) by auto |
3291 thus ?thesis using obt(3)[THEN bspec[where x=y], THEN bspec[where x=v]] and obt(2) by auto |
3291 thus ?thesis using obt(3)[THEN bspec[where x=y], THEN bspec[where x=v]] and obt(2) by auto |
3292 next |
3292 next |