src/HOL/Multivariate_Analysis/Vec1.thy
changeset 36593 fb69c8cd27bd
parent 36587 534418d8d494
--- a/src/HOL/Multivariate_Analysis/Vec1.thy	Thu Apr 29 09:29:47 2010 -0700
+++ b/src/HOL/Multivariate_Analysis/Vec1.thy	Thu Apr 29 11:41:04 2010 -0700
@@ -205,14 +205,15 @@
   apply(rule conjI) defer apply(rule conjI) defer apply(rule_tac x=1 in exI) by auto
 
 lemma linear_vmul_dest_vec1:
-  fixes f:: "'a::semiring_1^_ \<Rightarrow> 'a^1"
+  fixes f:: "real^_ \<Rightarrow> real^1"
   shows "linear f \<Longrightarrow> linear (\<lambda>x. dest_vec1(f x) *s v)"
-  apply (rule linear_vmul_component)
-  by auto
+  unfolding smult_conv_scaleR
+  by (rule linear_vmul_component)
 
 lemma linear_from_scalars:
-  assumes lf: "linear (f::'a::comm_ring_1 ^1 \<Rightarrow> 'a^_)"
+  assumes lf: "linear (f::real^1 \<Rightarrow> real^_)"
   shows "f = (\<lambda>x. dest_vec1 x *s column 1 (matrix f))"
+  unfolding smult_conv_scaleR
   apply (rule ext)
   apply (subst matrix_works[OF lf, symmetric])
   apply (auto simp add: Cart_eq matrix_vector_mult_def column_def mult_commute)