1.1 --- a/src/HOL/Codatatype/Tools/bnf_fp_sugar.ML Sun Sep 09 10:58:11 2012 +0200
1.2 +++ b/src/HOL/Codatatype/Tools/bnf_fp_sugar.ML Sun Sep 09 12:07:15 2012 +0200
1.3 @@ -440,7 +440,7 @@
1.4 end;
1.5
1.6 val pre_map_defs = map map_def_of_bnf pre_bnfs;
1.7 - val map_id's = map map_id'_of_bnf nested_bnfs;
1.8 + val map_ids = map map_id_of_bnf nested_bnfs;
1.9
1.10 fun mk_map Ts Us t =
1.11 let val (Type (_, Ts0), Type (_, Us0)) = strip_map_type (fastype_of t) |>> List.last in
1.12 @@ -500,9 +500,9 @@
1.13 val goal_recss = map5 (map4 o mk_goal_iter_like hss) hrecs xctrss hss xsss hxsss;
1.14
1.15 val iter_tacss =
1.16 - map2 (map o mk_iter_like_tac pre_map_defs map_id's iter_defs) fp_iter_thms ctr_defss;
1.17 + map2 (map o mk_iter_like_tac pre_map_defs map_ids iter_defs) fp_iter_thms ctr_defss;
1.18 val rec_tacss =
1.19 - map2 (map o mk_iter_like_tac pre_map_defs map_id's rec_defs) fp_rec_thms ctr_defss;
1.20 + map2 (map o mk_iter_like_tac pre_map_defs map_ids rec_defs) fp_rec_thms ctr_defss;
1.21 in
1.22 (map2 (map2 (fn goal => fn tac => Skip_Proof.prove lthy [] [] goal (tac o #context)))
1.23 goal_iterss iter_tacss,
1.24 @@ -549,7 +549,7 @@
1.25 map7 (map3 oooo mk_goal_coiter_like phss) cs cpss hcorecs ns kss ctrss chsss;
1.26
1.27 val coiter_tacss =
1.28 - map3 (map oo mk_coiter_like_tac coiter_defs map_id's) fp_iter_thms pre_map_defs
1.29 + map3 (map oo mk_coiter_like_tac coiter_defs map_ids) fp_iter_thms pre_map_defs
1.30 ctr_defss;
1.31 in
1.32 (map2 (map2 (fn goal => fn tac => Skip_Proof.prove lthy [] [] goal (tac o #context)))
2.1 --- a/src/HOL/Codatatype/Tools/bnf_fp_sugar_tactics.ML Sun Sep 09 10:58:11 2012 +0200
2.2 +++ b/src/HOL/Codatatype/Tools/bnf_fp_sugar_tactics.ML Sun Sep 09 12:07:15 2012 +0200
2.3 @@ -54,16 +54,16 @@
2.4 @{thms case_unit comp_def convol_def id_apply map_pair_def sum.simps(5,6) sum_map.simps
2.5 split_conv};
2.6
2.7 -fun mk_iter_like_tac pre_map_defs map_id's iter_like_defs fld_iter_like ctr_def ctxt =
2.8 - Local_Defs.unfold_tac ctxt (ctr_def :: fld_iter_like :: iter_like_defs @ pre_map_defs @ map_id's @
2.9 +fun mk_iter_like_tac pre_map_defs map_ids iter_like_defs fld_iter_like ctr_def ctxt =
2.10 + Local_Defs.unfold_tac ctxt (ctr_def :: fld_iter_like :: iter_like_defs @ pre_map_defs @ map_ids @
2.11 iter_like_thms) THEN rtac refl 1;
2.12
2.13 val coiter_like_ss = ss_only @{thms if_True if_False};
2.14 val coiter_like_thms = @{thms id_apply map_pair_def sum_map.simps prod.cases};
2.15
2.16 -fun mk_coiter_like_tac coiter_like_defs map_id's fld_unf_coiter_like pre_map_def ctr_def ctxt =
2.17 +fun mk_coiter_like_tac coiter_like_defs map_ids fld_unf_coiter_like pre_map_def ctr_def ctxt =
2.18 Local_Defs.unfold_tac ctxt (ctr_def :: coiter_like_defs) THEN
2.19 subst_tac ctxt [fld_unf_coiter_like] 1 THEN asm_simp_tac coiter_like_ss 1 THEN
2.20 - Local_Defs.unfold_tac ctxt (pre_map_def :: coiter_like_thms @ map_id's) THEN rtac refl 1;
2.21 + Local_Defs.unfold_tac ctxt (pre_map_def :: coiter_like_thms @ map_ids) THEN rtac refl 1;
2.22
2.23 end;