@@ -1371,9 +1371,6 @@ Proof
1371
1371
recInduct infer'_ind >> rw[infer'_def, infer_def] >>
1372
1372
rw[infer'_prim_def |> DefnBase.one_line_ify NONE ] >>
1373
1373
simp[apply_foldr_def, FOLDR_MAP] >> gvs[NULL_EQ]
1374
- >- ( (* Prim - no arguments *)
1375
- TOP_CASE_TAC >> rw[infer_def]
1376
- )
1377
1374
>- ( (* Prim *)
1378
1375
TOP_CASE_TAC >> rw[infer_def]
1379
1376
>- foldr_eq_tac
@@ -1394,8 +1391,8 @@ Proof
1394
1391
pairarg_tac >> gvs[] >> rpt (AP_TERM_TAC ORELSE AP_THM_TAC) >> rw[FUN_EQ_THM] >>
1395
1392
last_x_assum drule >> rw[]
1396
1393
) >>
1397
- qmatch_goalsub_abbrev_tac `case css of [] => _ | _::_ => foo` >>
1398
- `(case css of [] => fail (Unknown d) | _::_ => foo) = foo` by (
1394
+ qmatch_goalsub_abbrev_tac `case css of [] => err | _::_ => foo` >>
1395
+ `(case css of [] => err | _::_ => foo) = foo` by (
1399
1396
Cases_on `css` >> gvs[]) >>
1400
1397
pop_assum SUBST_ALL_TAC >> unabbrev_all_tac >> rw[LAMBDA_PROD, FUN_EQ_THM] >>
1401
1398
ntac 2 (rpt (AP_TERM_TAC ORELSE AP_THM_TAC) >> rw[FUN_EQ_THM]) >>
@@ -1419,8 +1416,8 @@ Proof
1419
1416
ntac 2 (TOP_CASE_TAC >> gvs[]) >> pairarg_tac >> gvs[] >>
1420
1417
simp[return_def] >> rw[] >> simp[oreturn_def, return_def]
1421
1418
) >>
1422
- simp[return_def, infer_bind_def] >> rename1 `oreturn _ _ n` >>
1423
- qsuff_tac `oreturn (Unknown d) (oHD tys) n = OK (HD tys, n)` >> simp[] >>
1419
+ simp[return_def, infer_bind_def] >> rename1 `oreturn err _ n` >>
1420
+ qsuff_tac `oreturn err (oHD tys) n = OK (HD tys, n)` >> simp[] >>
1424
1421
qsuff_tac `LENGTH tys = LENGTH css`
1425
1422
>- (rw[] >> Cases_on `tys` >> gvs[oreturn_def, return_def]) >>
1426
1423
qpat_x_assum `FOLDR _ _ _ _ = _` mp_tac >> rpt $ pop_assum kall_tac >>
0 commit comments