equal
deleted
inserted
replaced
35 open FundefCommon |
35 open FundefCommon |
36 |
36 |
37 val simp_attribs = map (Attrib.internal o K) |
37 val simp_attribs = map (Attrib.internal o K) |
38 [Simplifier.simp_add, |
38 [Simplifier.simp_add, |
39 Code.add_default_eqn_attribute, |
39 Code.add_default_eqn_attribute, |
40 Nitpick_Const_Simp_Thms.add, |
40 Nitpick_Const_Simps.add, |
41 Quickcheck_RecFun_Simp_Thms.add] |
41 Quickcheck_RecFun_Simps.add] |
42 |
42 |
43 val psimp_attribs = map (Attrib.internal o K) |
43 val psimp_attribs = map (Attrib.internal o K) |
44 [Simplifier.simp_add, |
44 [Simplifier.simp_add, |
45 Nitpick_Const_Psimp_Thms.add] |
45 Nitpick_Const_Psimps.add] |
46 |
46 |
47 fun note_theorem ((name, atts), ths) = |
47 fun note_theorem ((name, atts), ths) = |
48 LocalTheory.note Thm.generatedK ((Binding.qualified_name name, atts), ths) |
48 LocalTheory.note Thm.generatedK ((Binding.qualified_name name, atts), ths) |
49 |
49 |
50 fun mk_defname fixes = fixes |> map (fst o fst) |> space_implode "_" |
50 fun mk_defname fixes = fixes |> map (fst o fst) |> space_implode "_" |
200 Attrib.setup @{binding fundef_cong} |
200 Attrib.setup @{binding fundef_cong} |
201 (Attrib.add_del FundefCtxTree.cong_add FundefCtxTree.cong_del) |
201 (Attrib.add_del FundefCtxTree.cong_add FundefCtxTree.cong_del) |
202 "declaration of congruence rule for function definitions" |
202 "declaration of congruence rule for function definitions" |
203 #> setup_case_cong |
203 #> setup_case_cong |
204 #> FundefRelation.setup |
204 #> FundefRelation.setup |
205 #> FundefCommon.TerminationSimps.setup |
205 #> FundefCommon.Termination_Simps.setup |
206 |
206 |
207 val get_congs = FundefCtxTree.get_fundef_congs |
207 val get_congs = FundefCtxTree.get_fundef_congs |
208 |
208 |
209 |
209 |
210 (* outer syntax *) |
210 (* outer syntax *) |