equal
deleted
inserted
replaced
289 \<comment> \<open>Courtesy of Stephan Merz\<close> |
289 \<comment> \<open>Courtesy of Stephan Merz\<close> |
290 proof (rule inj_onI) |
290 proof (rule inj_onI) |
291 show "x = y" if "f x = f y" for x y |
291 show "x = y" if "f x = f y" for x y |
292 by (rule linorder_cases) (auto dest: assms simp: that) |
292 by (rule linorder_cases) (auto dest: assms simp: that) |
293 qed |
293 qed |
|
294 |
|
295 |
|
296 lemma inj_on_image_Pow: "inj_on f A \<Longrightarrow>inj_on (image f) (Pow A)" |
|
297 unfolding Pow_def inj_on_def by blast |
|
298 |
|
299 lemma bij_betw_image_Pow: "bij_betw f A B \<Longrightarrow> bij_betw (image f) (Pow A) (Pow B)" |
|
300 by (auto simp add: bij_betw_def inj_on_image_Pow image_Pow_surj) |
294 |
301 |
295 lemma surj_def: "surj f \<longleftrightarrow> (\<forall>y. \<exists>x. y = f x)" |
302 lemma surj_def: "surj f \<longleftrightarrow> (\<forall>y. \<exists>x. y = f x)" |
296 by auto |
303 by auto |
297 |
304 |
298 lemma surjI: |
305 lemma surjI: |