equal
deleted
inserted
replaced
533 fun mk_cases_meth (ctxt, raw_props) = |
533 fun mk_cases_meth (ctxt, raw_props) = |
534 let |
534 let |
535 val thy = ProofContext.theory_of ctxt; |
535 val thy = ProofContext.theory_of ctxt; |
536 val ss = Simplifier.get_local_simpset ctxt; |
536 val ss = Simplifier.get_local_simpset ctxt; |
537 val cprops = map (Thm.cterm_of (Theory.sign_of thy) o ProofContext.read_prop ctxt) raw_props; |
537 val cprops = map (Thm.cterm_of (Theory.sign_of thy) o ProofContext.read_prop ctxt) raw_props; |
538 in Method.erule (map (smart_mk_cases thy ss) cprops) end; |
538 in Method.erule 0 (map (smart_mk_cases thy ss) cprops) end; |
539 |
539 |
540 val mk_cases_args = Method.syntax (Scan.lift (Scan.repeat1 Args.name)); |
540 val mk_cases_args = Method.syntax (Scan.lift (Scan.repeat1 Args.name)); |
541 |
541 |
542 |
542 |
543 (* prove induction rule *) |
543 (* prove induction rule *) |