equal
deleted
inserted
replaced
598 |
598 |
599 (* FIXME: improve transferred to handle bounded meta quantification *) |
599 (* FIXME: improve transferred to handle bounded meta quantification *) |
600 |
600 |
601 lemma fcard_fempty: |
601 lemma fcard_fempty: |
602 "fcard {||} = 0" |
602 "fcard {||} = 0" |
603 by transfer (rule card_empty) |
603 by transfer (rule card.empty) |
604 |
604 |
605 lemma fcard_finsert_disjoint: |
605 lemma fcard_finsert_disjoint: |
606 "x |\<notin>| A \<Longrightarrow> fcard (finsert x A) = Suc (fcard A)" |
606 "x |\<notin>| A \<Longrightarrow> fcard (finsert x A) = Suc (fcard A)" |
607 by transfer (rule card_insert_disjoint) |
607 by transfer (rule card_insert_disjoint) |
608 |
608 |
630 assumes "a |\<in>| A" and "a |\<notin>| B" |
630 assumes "a |\<in>| A" and "a |\<notin>| B" |
631 shows "fcard (A |-| finsert a B) = fcard (A |-| B) - 1" |
631 shows "fcard (A |-| finsert a B) = fcard (A |-| B) - 1" |
632 using assms by transfer (rule card_Diff_insert) |
632 using assms by transfer (rule card_Diff_insert) |
633 |
633 |
634 lemma fcard_finsert: "fcard (finsert x A) = Suc (fcard (A |-| {|x|}))" |
634 lemma fcard_finsert: "fcard (finsert x A) = Suc (fcard (A |-| {|x|}))" |
635 by transfer (rule card_insert) |
635 by transfer (rule card.insert_remove) |
636 |
636 |
637 lemma fcard_finsert_le: "fcard A \<le> fcard (finsert x A)" |
637 lemma fcard_finsert_le: "fcard A \<le> fcard (finsert x A)" |
638 by transfer (rule card_insert_le) |
638 by transfer (rule card_insert_le) |
639 |
639 |
640 lemma fcard_mono: |
640 lemma fcard_mono: |