@@ -681,8 +681,8 @@ casetac tm induction ctxt env (Bind x (Hole t) (P _ x' _)) | x == x' = do
681681 (tmv, tmt) <- lift $ check ctxt env tm
682682 let tmt' = normalise ctxt env tmt
683683 let (tacn, tacstr, tactt) = if induction
684− then (ElimN, "an eliminator", "Induction")
685− else (CaseN, "a case function", "Case analysis")
684+ then (ElimN, "eliminator", "Induction")
685+ else (CaseN, "case analysis", "Case analysis")
686686 case unApply tmt' of
687687 (P _ tnm _, tyargs) -> do
688688 case lookupTy (SN (tacn tnm)) ctxt of
@@ -717,9 +717,10 @@ casetac tm induction ctxt env (Bind x (Hole t) (P _ x' _)) | x == x' = do
717717 (scv, sct) <- lift $ check ctxt env res'
718718 let (scv', _) = specialise ctxt env [] scv
719719 return scv'
720− [] -> lift $ tfail $ Msg $ tactt ++ " needs " ++ tacstr ++ " for " ++ show tnm
720+ [] -> lift $ tfail $ NoEliminator tacstr tmt'
721721 xs -> lift $ tfail $ Msg $ "Multiple definitions found when searching for " ++ tacstr ++ "of " ++ show tnm
722− _ -> fail $ "Unkown type for " ++ if induction then "induction" else "case analysis"
722+ _ -> lift $ tfail $ NoEliminator (if induction then "induction" else "case analysis")
723+ tmt'
723724 where scname = sMN 0 "scarg"
724725 makeConsArg (nm, ty) = P Bound nm ty
725726 bindConsArgs ((nm, ty):args) v = Bind nm (Hole ty) $ bindConsArgs args v