equal
deleted
inserted
replaced
278 shows "f ` (closure S) = closure (f ` S)" |
278 shows "f ` (closure S) = closure (f ` S)" |
279 proof - |
279 proof - |
280 obtain f' where f': "linear f' \<and> f \<circ> f' = id \<and> f' \<circ> f = id" |
280 obtain f' where f': "linear f' \<and> f \<circ> f' = id \<and> f' \<circ> f = id" |
281 using assms linear_injective_isomorphism[of f] isomorphism_expand by auto |
281 using assms linear_injective_isomorphism[of f] isomorphism_expand by auto |
282 then have "f' ` closure (f ` S) \<le> closure (S)" |
282 then have "f' ` closure (f ` S) \<le> closure (S)" |
283 using closure_linear_image[of f' "f ` S"] image_compose[of f' f] by auto |
283 using closure_linear_image[of f' "f ` S"] image_comp[of f' f] by auto |
284 then have "f ` f' ` closure (f ` S) \<le> f ` closure S" by auto |
284 then have "f ` f' ` closure (f ` S) \<le> f ` closure S" by auto |
285 then have "closure (f ` S) \<le> f ` closure S" |
285 then have "closure (f ` S) \<le> f ` closure S" |
286 using image_compose[of f f' "closure (f ` S)"] f' by auto |
286 using image_comp[of f f' "closure (f ` S)"] f' by auto |
287 then show ?thesis using closure_linear_image[of f S] assms by auto |
287 then show ?thesis using closure_linear_image[of f S] assms by auto |
288 qed |
288 qed |
289 |
289 |
290 lemma closure_scaleR: |
290 lemma closure_scaleR: |
291 fixes S :: "'a::real_normed_vector set" |
291 fixes S :: "'a::real_normed_vector set" |