equal
deleted
inserted
replaced
179 (case Thm.prems_of th of |
179 (case Thm.prems_of th of |
180 [prem] => |
180 [prem] => |
181 if Thm.concl_of th aconv thesis andalso |
181 if Thm.concl_of th aconv thesis andalso |
182 Logic.strip_assums_concl prem aconv thesis then th |
182 Logic.strip_assums_concl prem aconv thesis then th |
183 else error ("Guessed a different clause:\n" ^ Display.string_of_thm ctxt th) |
183 else error ("Guessed a different clause:\n" ^ Display.string_of_thm ctxt th) |
184 | [] => error "Goal solved -- nothing guessed." |
184 | [] => error "Goal solved -- nothing guessed" |
185 | _ => error ("Guess split into several cases:\n" ^ Display.string_of_thm ctxt th)); |
185 | _ => error ("Guess split into several cases:\n" ^ Display.string_of_thm ctxt th)); |
186 |
186 |
187 fun result tac facts ctxt = |
187 fun result tac facts ctxt = |
188 let |
188 let |
189 val thy = ProofContext.theory_of ctxt; |
189 val thy = ProofContext.theory_of ctxt; |