src/HOL/Analysis/Ordered_Euclidean_Space.thy
changeset 70136 f03a01a18c6e
parent 70097 4005298550a6
child 70196 b7ef9090feed
equal deleted inserted replaced
70135:ad6d4a14adb5 70136:f03a01a18c6e
   155 lemma in_Basis_prod_iff:
   155 lemma in_Basis_prod_iff:
   156   fixes i::"'a::euclidean_space*'b::euclidean_space"
   156   fixes i::"'a::euclidean_space*'b::euclidean_space"
   157   shows "i \<in> Basis \<longleftrightarrow> fst i = 0 \<and> snd i \<in> Basis \<or> snd i = 0 \<and> fst i \<in> Basis"
   157   shows "i \<in> Basis \<longleftrightarrow> fst i = 0 \<and> snd i \<in> Basis \<or> snd i = 0 \<and> fst i \<in> Basis"
   158   by (cases i) (auto simp: Basis_prod_def)
   158   by (cases i) (auto simp: Basis_prod_def)
   159 
   159 
   160 instantiation%unimportant prod :: (abs, abs) abs
   160 instantiation\<^marker>\<open>tag unimportant\<close> prod :: (abs, abs) abs
   161 begin
   161 begin
   162 
   162 
   163 definition "\<bar>x\<bar> = (\<bar>fst x\<bar>, \<bar>snd x\<bar>)"
   163 definition "\<bar>x\<bar> = (\<bar>fst x\<bar>, \<bar>snd x\<bar>)"
   164 
   164 
   165 instance ..
   165 instance ..
   297             bounded_subset_cbox_symmetric interval_cbox)
   297             bounded_subset_cbox_symmetric interval_cbox)
   298 
   298 
   299 instantiation vec :: (ordered_euclidean_space, finite) ordered_euclidean_space
   299 instantiation vec :: (ordered_euclidean_space, finite) ordered_euclidean_space
   300 begin
   300 begin
   301 
   301 
   302 definition%important "inf x y = (\<chi> i. inf (x $ i) (y $ i))"
   302 definition\<^marker>\<open>tag important\<close> "inf x y = (\<chi> i. inf (x $ i) (y $ i))"
   303 definition%important "sup x y = (\<chi> i. sup (x $ i) (y $ i))"
   303 definition\<^marker>\<open>tag important\<close> "sup x y = (\<chi> i. sup (x $ i) (y $ i))"
   304 definition%important "Inf X = (\<chi> i. (INF x\<in>X. x $ i))"
   304 definition\<^marker>\<open>tag important\<close> "Inf X = (\<chi> i. (INF x\<in>X. x $ i))"
   305 definition%important "Sup X = (\<chi> i. (SUP x\<in>X. x $ i))"
   305 definition\<^marker>\<open>tag important\<close> "Sup X = (\<chi> i. (SUP x\<in>X. x $ i))"
   306 definition%important "\<bar>x\<bar> = (\<chi> i. \<bar>x $ i\<bar>)"
   306 definition\<^marker>\<open>tag important\<close> "\<bar>x\<bar> = (\<chi> i. \<bar>x $ i\<bar>)"
   307 
   307 
   308 instance
   308 instance
   309   apply standard
   309   apply standard
   310   unfolding euclidean_representation_sum'
   310   unfolding euclidean_representation_sum'
   311   apply (auto simp: less_eq_vec_def inf_vec_def sup_vec_def Inf_vec_def Sup_vec_def inner_axis
   311   apply (auto simp: less_eq_vec_def inf_vec_def sup_vec_def Inf_vec_def Sup_vec_def inner_axis