lemma card_less_if_surj_not_inj: "[ finite A; f ` A = B; ¬ inj_on f A ]==> card B < card A" by (metis card_image_le inj_on_iff_eq_card order_le_neq_trans)
theorem Bondy : assumes"∀A ∈ F. A ⊆ X"and"card X ≥ 1"and"card F = card X" shows"∃D. D ⊆ X & card D < card X & card (inter D ` F) = card F" proof - from assms(2,3) have"finite F"and"finite X" by (metis card.infinite not_one_le_zero)+
{ fix m have"m < card F ==>∃D. D ⊆ X & card D ≤ m & card (inter D ` F) ≥ m + 1" proof (induction m) case0 hence"{} ⊆ X & card {} ≤ 0 & card (inter {} ` F) ≥ 0 + 1" by auto (metis Suc_leI card_eq_0_iff empty_is_image finite_imageI gr0I) thus"∃D. (D ⊆ X & card D ≤ 0 & card (inter D ` F) ≥ 0 + 1)"by blast next case (Suc m) hence"m < card F"by arith with Suc.IH obtain D where D: "D ⊆ X ∧ card D ≤ m ∧ m + 1 ≤ card (inter D ` F)"by auto with‹finite X›have"finite D"by (auto intro: finite_subset) show ?case proof (cases "card (inter D ` F) = card F") case True hence"D ⊆ X ∧ card D ≤ Suc m ∧ Suc m + 1 ≤ card(inter D ` F)" using D Suc.prems by auto thus ?thesis by blast next case False hence"~ inj_on (inter D) F"by (auto simp: card_image) thenobtain A1 A2 where"A1 ∈ F"and"A2 ∈ F"and "D ∩ A1 = D ∩ A2"and"A1 ≠ A2"by (auto simp: inj_on_def) thenobtain x where x: "x : (A1 - A2) ∪ (A2 - A1)"by auto from‹∀A ∈ F. A ⊆ X›‹A1 ∈ F›‹A2 ∈ F› x have"x : X"by auto let ?E = "insert x D" from D ‹finite D›have"card ?E ≤ Suc m" by (metis (full_types) Suc_le_mono card_insert_if le_Suc_eq) moreoverwith D ‹x:X›have"?E ⊆ X"by auto moreoverhave"Suc m < card (inter ?E ` F)" proof - from‹D ∩ A1 = D ∩ A2›have1: "(D ∩ (?E ∩ A1)) = (D ∩ (?E ∩ A2))" by auto from x have2: "?E Int A1 ≠ ?E Int A2"by auto have3: "inter D ∘ inter ?E = inter D"by auto have4: "~ inj_on (inter D) (inter ?E ` F)" unfolding inj_on_def using12‹A1 ∈ F›‹A2 ∈ F›by blast from D have"Suc m ≤ card (inter D ` F)"by auto alsohave"... < card (inter ?E ` F)" by (rule card_less_if_surj_not_inj[of _ "inter D"])
(auto simp add: image_image 34‹finite F›) finallyshow ?thesis . qed ultimatelyhave"?E⊆X ∧ card ?E ≤ Suc m ∧ Suc m + 1 ≤ card (inter ?E ` F)" by auto thus"∃D⊆X. card D ≤ Suc m ∧ Suc m + 1 ≤ card (inter D ` F)"by blast qed qed
} moreoverfrom assms(2,3) have"card X - 1 < card F"by auto ultimatelyobtain D where "D ⊆ X & card D ≤ card X - 1 & card (inter D ` F) ≥ (card X - 1) + 1" by auto moreoverwith‹finite F›have"card (inter D ` F) ≤ card F" by (elim card_image_le) ultimatelyhave"D ⊆ X & card D < card X & card (inter D ` F) = card F" using‹card F = card X›by auto thus ?thesis by auto qed
end
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.9 Sekunden
(vorverarbeitet am 2026-06-10)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.