equal
deleted
inserted
replaced
280 | app (r, consts, f :: fs) = |
280 | app (r, consts, f :: fs) = |
281 let val (r', consts') = f (thm, consts) |
281 let val (r', consts') = f (thm, consts) |
282 in app (opt_add r r', consts', fs) end; |
282 in app (opt_add r r', consts', fs) end; |
283 in app end; |
283 in app end; |
284 |
284 |
285 |
285 |
286 in |
286 in |
287 |
287 |
288 fun filter_criterion ctxt opt_goal (b, c) = |
288 fun filter_criterion ctxt opt_goal (b, c) = |
289 (if b then I else (apfst opt_not)) o filter_crit ctxt opt_goal c; |
289 (if b then I else (apfst opt_not)) o filter_crit ctxt opt_goal c; |
290 |
290 |
415 val start = start_timing (); |
415 val start = start_timing (); |
416 |
416 |
417 val criteria = map (apsnd (read_criterion ctxt)) raw_criteria; |
417 val criteria = map (apsnd (read_criterion ctxt)) raw_criteria; |
418 val (foundo, thms) = find_theorems ctxt opt_goal opt_limit rem_dups raw_criteria; |
418 val (foundo, thms) = find_theorems ctxt opt_goal opt_limit rem_dups raw_criteria; |
419 val returned = length thms; |
419 val returned = length thms; |
420 |
420 |
421 val tally_msg = |
421 val tally_msg = |
422 (case foundo of |
422 (case foundo of |
423 NONE => "displaying " ^ string_of_int returned ^ " theorems" |
423 NONE => "displaying " ^ string_of_int returned ^ " theorems" |
424 | SOME found => |
424 | SOME found => |
425 "found " ^ string_of_int found ^ " theorems" ^ |
425 "found " ^ string_of_int found ^ " theorems" ^ |