src/HOL/Finite_Set.thy
changeset 40716 a92d744bca5f
parent 40703 d1fc454d6735
child 40786 0a54cfc9add3
equal deleted inserted replaced
40712:ed0add6f69a7 40716:a92d744bca5f
  2007   have "A - B = A - A \<inter> B" by auto
  2007   have "A - B = A - A \<inter> B" by auto
  2008   thus ?thesis
  2008   thus ?thesis
  2009     by (simp add: card_Diff_subset AB) 
  2009     by (simp add: card_Diff_subset AB) 
  2010 qed
  2010 qed
  2011 
  2011 
       
  2012 lemma diff_card_le_card_Diff:
       
  2013 assumes "finite B" shows "card A - card B \<le> card(A - B)"
       
  2014 proof-
       
  2015   have "card A - card B \<le> card A - card (A \<inter> B)"
       
  2016     using card_mono[OF assms Int_lower2, of A] by arith
       
  2017   also have "\<dots> = card(A-B)" using assms by(simp add: card_Diff_subset_Int)
       
  2018   finally show ?thesis .
       
  2019 qed
       
  2020 
  2012 lemma card_Diff1_less: "finite A ==> x: A ==> card (A - {x}) < card A"
  2021 lemma card_Diff1_less: "finite A ==> x: A ==> card (A - {x}) < card A"
  2013 apply (rule Suc_less_SucD)
  2022 apply (rule Suc_less_SucD)
  2014 apply (simp add: card_Suc_Diff1 del:card_Diff_insert)
  2023 apply (simp add: card_Suc_Diff1 del:card_Diff_insert)
  2015 done
  2024 done
  2016 
  2025