equal
deleted
inserted
replaced
82 |
82 |
83 (*--------------------------------------------------------------------------- |
83 (*--------------------------------------------------------------------------- |
84 * Defining a function with an associated termination relation. |
84 * Defining a function with an associated termination relation. |
85 *---------------------------------------------------------------------------*) |
85 *---------------------------------------------------------------------------*) |
86 fun define_i thy fid R eqs = |
86 fun define_i thy fid R eqs = |
87 let val dummy = Theory.require thy "WF_Rel" "recursive function definitions" |
87 let val dummy = Theory.requires thy "WF_Rel" "recursive function definitions" |
88 val {functional,pats} = Prim.mk_functional thy eqs |
88 val {functional,pats} = Prim.mk_functional thy eqs |
89 in (Prim.wfrec_definition0 thy fid R functional, pats) |
89 in (Prim.wfrec_definition0 thy fid R functional, pats) |
90 end; |
90 end; |
91 |
91 |
92 (*lcp's version: takes strings; doesn't return "thm" |
92 (*lcp's version: takes strings; doesn't return "thm" |