src/HOL/Library/Convex_Euclidean_Space.thy
changeset 31346 fa93996e9572
parent 31345 80667d5bee32
child 31362 edf74583715a
child 31401 2da6a7684e66
equal deleted inserted replaced
31345:80667d5bee32 31346:fa93996e9572
  2988   thus ?thesis using assms unfolding shiftpath_def path_image_def pathfinish_def pathstart_def 
  2988   thus ?thesis using assms unfolding shiftpath_def path_image_def pathfinish_def pathstart_def 
  2989     by(auto simp add:vector_component_simps image_iff) qed
  2989     by(auto simp add:vector_component_simps image_iff) qed
  2990 
  2990 
  2991 subsection {* Special case of straight-line paths. *}
  2991 subsection {* Special case of straight-line paths. *}
  2992 
  2992 
  2993 definition "linepath a b = (\<lambda>x. (1 - dest_vec1 x) *s a + dest_vec1 x *s b)"
  2993 definition
       
  2994   linepath :: "real ^ 'n::finite \<Rightarrow> real ^ 'n \<Rightarrow> real ^ 1 \<Rightarrow> real ^ 'n" where
       
  2995   "linepath a b = (\<lambda>x. (1 - dest_vec1 x) *s a + dest_vec1 x *s b)"
  2994 
  2996 
  2995 lemma pathstart_linepath[simp]: "pathstart(linepath a b) = a"
  2997 lemma pathstart_linepath[simp]: "pathstart(linepath a b) = a"
  2996   unfolding pathstart_def linepath_def by auto
  2998   unfolding pathstart_def linepath_def by auto
  2997 
  2999 
  2998 lemma pathfinish_linepath[simp]: "pathfinish(linepath a b) = b"
  3000 lemma pathfinish_linepath[simp]: "pathfinish(linepath a b) = b"