equal
deleted
inserted
replaced
424 proof - |
424 proof - |
425 from box_ne_empty(1)[of a b] assms have "(\<forall>i\<in>Basis. a \<bullet> i \<le> b \<bullet> i)" |
425 from box_ne_empty(1)[of a b] assms have "(\<forall>i\<in>Basis. a \<bullet> i \<le> b \<bullet> i)" |
426 by (simp add: cbox_def) |
426 by (simp add: cbox_def) |
427 then have "(\<Sum>i\<in>Basis. (dist (clamp a b y \<bullet> i) (clamp a b x \<bullet> i))\<^sup>2) \<le> |
427 then have "(\<Sum>i\<in>Basis. (dist (clamp a b y \<bullet> i) (clamp a b x \<bullet> i))\<^sup>2) \<le> |
428 (\<Sum>i\<in>Basis. (dist (y \<bullet> i) (x \<bullet> i))\<^sup>2)" |
428 (\<Sum>i\<in>Basis. (dist (y \<bullet> i) (x \<bullet> i))\<^sup>2)" |
429 by (auto intro!: setsum_mono simp: clamp_def dist_real_def abs_le_square_iff[symmetric]) |
429 by (auto intro!: sum_mono simp: clamp_def dist_real_def abs_le_square_iff[symmetric]) |
430 then show ?thesis |
430 then show ?thesis |
431 by (auto intro: real_sqrt_le_mono |
431 by (auto intro: real_sqrt_le_mono |
432 simp: euclidean_dist_l2[where y=x] euclidean_dist_l2[where y="clamp a b x"] setL2_def) |
432 simp: euclidean_dist_l2[where y=x] euclidean_dist_l2[where y="clamp a b x"] setL2_def) |
433 qed |
433 qed |
434 |
434 |