equal
deleted
inserted
replaced
1005 have *: "(\<Sum>a \<in> Basis. a \<bullet> basf b * (x \<bullet> basg a)) = x \<bullet> b" if "b \<in> Basis" for x b |
1005 have *: "(\<Sum>a \<in> Basis. a \<bullet> basf b * (x \<bullet> basg a)) = x \<bullet> b" if "b \<in> Basis" for x b |
1006 using surbf that by auto |
1006 using surbf that by auto |
1007 have gf[simp]: "g (f x) = x" for x |
1007 have gf[simp]: "g (f x) = x" for x |
1008 apply (rule euclidean_eqI) |
1008 apply (rule euclidean_eqI) |
1009 apply (simp add: f_def g_def inner_setsum_left scaleR_setsum_left algebra_simps) |
1009 apply (simp add: f_def g_def inner_setsum_left scaleR_setsum_left algebra_simps) |
1010 apply (simp add: Groups_Big.setsum_right_distrib [symmetric] *) |
1010 apply (simp add: Groups_Big.setsum_distrib_left [symmetric] *) |
1011 done |
1011 done |
1012 then have "inj f" by (metis injI) |
1012 then have "inj f" by (metis injI) |
1013 have gfU: "g ` f ` U = U" |
1013 have gfU: "g ` f ` U = U" |
1014 by (rule set_eqI) (auto simp: image_def) |
1014 by (rule set_eqI) (auto simp: image_def) |
1015 have "S homeomorphic U" |
1015 have "S homeomorphic U" |