equal
deleted
inserted
replaced
329 shows "partition_on (f ` A) ((`) f ` P - {{}})" |
329 shows "partition_on (f ` A) ((`) f ` P - {{}})" |
330 proof (rule partition_on_transform[OF P]) |
330 proof (rule partition_on_transform[OF P]) |
331 show "p \<in> P \<Longrightarrow> q \<in> P \<Longrightarrow> disjnt p q \<Longrightarrow> disjnt (f ` p) (f ` q)" for p q |
331 show "p \<in> P \<Longrightarrow> q \<in> P \<Longrightarrow> disjnt p q \<Longrightarrow> disjnt (f ` p) (f ` q)" for p q |
332 using f[THEN inj_onD] P[THEN partition_onD1] by (auto simp: disjnt_def) |
332 using f[THEN inj_onD] P[THEN partition_onD1] by (auto simp: disjnt_def) |
333 qed auto |
333 qed auto |
|
334 |
|
335 lemma partition_on_insert: |
|
336 assumes "disjnt p (\<Union>P)" |
|
337 shows "partition_on A (insert p P) \<longleftrightarrow> partition_on (A-p) P \<and> p \<subseteq> A \<and> p \<noteq> {}" |
|
338 using assms |
|
339 by (auto simp: partition_on_def disjnt_iff pairwise_insert) |
334 |
340 |
335 subsection \<open>Finiteness of partitions\<close> |
341 subsection \<open>Finiteness of partitions\<close> |
336 |
342 |
337 lemma finitely_many_partition_on: |
343 lemma finitely_many_partition_on: |
338 assumes "finite A" |
344 assumes "finite A" |