equal
deleted
inserted
replaced
15 where |
15 where |
16 emptyI [simp, intro!]: "finite {}" |
16 emptyI [simp, intro!]: "finite {}" |
17 | insertI [simp, intro!]: "finite A \<Longrightarrow> finite (insert a A)" |
17 | insertI [simp, intro!]: "finite A \<Longrightarrow> finite (insert a A)" |
18 |
18 |
19 simproc_setup finite_Collect ("finite (Collect P)") = {* K Set_Comprehension_Pointfree.simproc *} |
19 simproc_setup finite_Collect ("finite (Collect P)") = {* K Set_Comprehension_Pointfree.simproc *} |
|
20 |
|
21 declare [[simproc del: finite_Collect]] |
20 |
22 |
21 lemma finite_induct [case_names empty insert, induct set: finite]: |
23 lemma finite_induct [case_names empty insert, induct set: finite]: |
22 -- {* Discharging @{text "x \<notin> F"} entails extra work. *} |
24 -- {* Discharging @{text "x \<notin> F"} entails extra work. *} |
23 assumes "finite F" |
25 assumes "finite F" |
24 assumes "P {}" |
26 assumes "P {}" |