src/HOL/Finite_Set.thy
changeset 73620 58aed6f71f90
parent 73555 92783562ab78
child 73832 9db620f007fa
equal deleted inserted replaced
73619:0c8d6bec6491 73620:58aed6f71f90
  1809 lemma card_Suc_eq:
  1809 lemma card_Suc_eq:
  1810   "card A = Suc k \<longleftrightarrow>
  1810   "card A = Suc k \<longleftrightarrow>
  1811     (\<exists>b B. A = insert b B \<and> b \<notin> B \<and> card B = k \<and> (k = 0 \<longrightarrow> B = {}))"
  1811     (\<exists>b B. A = insert b B \<and> b \<notin> B \<and> card B = k \<and> (k = 0 \<longrightarrow> B = {}))"
  1812   by (auto simp: card_insert_if card_gt_0_iff elim!: card_eq_SucD)
  1812   by (auto simp: card_insert_if card_gt_0_iff elim!: card_eq_SucD)
  1813 
  1813 
       
  1814 lemma card_Suc_eq_finite:
       
  1815   "card A = Suc k \<longleftrightarrow> (\<exists>b B. A = insert b B \<and> b \<notin> B \<and> card B = k \<and> finite B)"
       
  1816   unfolding card_Suc_eq using card_gt_0_iff by fastforce
       
  1817 
  1814 lemma card_1_singletonE:
  1818 lemma card_1_singletonE:
  1815   assumes "card A = 1"
  1819   assumes "card A = 1"
  1816   obtains x where "A = {x}"
  1820   obtains x where "A = {x}"
  1817   using assms by (auto simp: card_Suc_eq)
  1821   using assms by (auto simp: card_Suc_eq)
  1818 
  1822