equal
deleted
inserted
replaced
272 val get_congs = Function_Ctx_Tree.get_function_congs |
272 val get_congs = Function_Ctx_Tree.get_function_congs |
273 |
273 |
274 fun get_info ctxt t = Item_Net.retrieve (get_function ctxt) t |
274 fun get_info ctxt t = Item_Net.retrieve (get_function ctxt) t |
275 |> the_single |> snd |
275 |> the_single |> snd |
276 |
276 |
|
277 |
277 (* outer syntax *) |
278 (* outer syntax *) |
278 |
279 |
279 local structure P = OuterParse and K = OuterKeyword in |
|
280 |
|
281 val _ = |
280 val _ = |
282 OuterSyntax.local_theory_to_proof "function" "define general recursive functions" K.thy_goal |
281 Outer_Syntax.local_theory_to_proof "function" "define general recursive functions" |
|
282 Keyword.thy_goal |
283 (function_parser default_config |
283 (function_parser default_config |
284 >> (fn ((config, fixes), statements) => function_cmd fixes statements config)) |
284 >> (fn ((config, fixes), statements) => function_cmd fixes statements config)) |
285 |
285 |
286 val _ = |
286 val _ = |
287 OuterSyntax.local_theory_to_proof "termination" "prove termination of a recursive function" K.thy_goal |
287 Outer_Syntax.local_theory_to_proof "termination" "prove termination of a recursive function" |
288 (Scan.option P.term >> termination_cmd) |
288 Keyword.thy_goal |
|
289 (Scan.option Parse.term >> termination_cmd) |
|
290 |
289 |
291 |
290 end |
292 end |
291 |
|
292 |
|
293 end |
|