diff -r f9e05eab6e3c -r 9f4f0dc7be2c src/HOL/Finite_Set.thy --- a/src/HOL/Finite_Set.thy Thu Dec 03 08:10:56 2015 +0100 +++ b/src/HOL/Finite_Set.thy Thu Dec 03 08:10:57 2015 +0100 @@ -1209,17 +1209,9 @@ But now that we have @{const fold} things are easy: \ -definition card :: "'a set \ nat" where - "card = folding.F (\_. Suc) 0" - -interpretation card: folding "\_. Suc" 0 -rewrites - "folding.F (\_. Suc) 0 = card" -proof - - show "folding (\_. Suc)" by standard rule - then interpret card: folding "\_. Suc" 0 . - from card_def show "folding.F (\_. Suc) 0 = card" by rule -qed +permanent_interpretation card: folding "\_. Suc" 0 + defines card = "folding.F (\_. Suc) 0" + by standard rule lemma card_infinite: "\ finite A \ card A = 0"