took out spurious attributes (no need for several code equations / simps for thesame constants)
--- a/src/HOL/BNF/Tools/bnf_lfp_compat.ML Fri Sep 20 11:44:30 2013 +0200
+++ b/src/HOL/BNF/Tools/bnf_lfp_compat.ML Fri Sep 20 12:04:48 2013 +0200
@@ -131,8 +131,7 @@
val all_notes =
(case lfp_sugar_thms of
NONE => []
- | SOME ((induct_thms, induct_thm, induct_attrs), (fold_thmss, fold_attrs),
- (rec_thmss, rec_attrs)) =>
+ | SOME ((induct_thms, induct_thm, induct_attrs), (fold_thmss, _), (rec_thmss, _)) =>
let
val common_notes =
(if nn > 1 then [(inductN, [induct_thm], induct_attrs)] else [])
@@ -141,9 +140,9 @@
((Binding.qualify true common_name (Binding.name thmN), attrs), [(thms, [])]));
val notes =
- [(foldN, fold_thmss, fold_attrs),
+ [(foldN, fold_thmss, []),
(inductN, map single induct_thms, induct_attrs),
- (recN, rec_thmss, rec_attrs)]
+ (recN, rec_thmss, [])]
|> filter_out (null o #2)
|> maps (fn (thmN, thmss, attrs) =>
if forall null thmss then