@@ -2090,8 +2090,9 @@ fs [t_wfs_def] >|
2090
2090
rw [encode_infer_t_def, decode_infer_t_def, decode_left_inverse]]
2091
2091
QED
2092
2092
2093
- val t_walk_def = zDefine `
2094
- t_walk s t = decode_infer_t (walk (encode_infer_t o_f s) (encode_infer_t t))`;
2093
+ Definition t_walk_def[nocompute]:
2094
+ t_walk s t = decode_infer_t (walk (encode_infer_t o_f s) (encode_infer_t t))
2095
+ End
2095
2096
2096
2097
Theorem t_walk_eqn:
2097
2098
(!s v. t_walk s (Infer_Tuvar v) = t_vwalk s v) ∧
@@ -2102,8 +2103,9 @@ rw [t_walk_def, walk_def, t_vwalk_def, encode_infer_t_def,
2102
2103
decode_infer_t_def, decode_left_inverse]
2103
2104
QED
2104
2105
2105
- val t_oc_def = zDefine `
2106
- t_oc s t v = oc (encode_infer_t o_f s) (encode_infer_t t) v`;
2106
+ Definition t_oc_def[nocompute]:
2107
+ t_oc s t v = oc (encode_infer_t o_f s) (encode_infer_t t) v
2108
+ End
2107
2109
2108
2110
(*
2109
2111
val t_oc_ind' = Q.prove (
@@ -2174,11 +2176,12 @@ cases_on `t_vwalk s n` >>
2174
2176
rw [encode_infer_t_def, t_oc_eqn_help]
2175
2177
QED
2176
2178
2177
- val t_ext_s_check_def = zDefine `
2179
+ Definition t_ext_s_check_def[nocompute]:
2178
2180
t_ext_s_check s v t =
2179
2181
OPTION_MAP
2180
2182
((o_f) decode_infer_t)
2181
- (ext_s_check (encode_infer_t o_f s) v (encode_infer_t t))`;
2183
+ (ext_s_check (encode_infer_t o_f s) v (encode_infer_t t))
2184
+ End
2182
2185
2183
2186
Theorem t_ext_s_check_eqn:
2184
2187
!s v t.
@@ -2189,11 +2192,12 @@ rw [t_ext_s_check_def, t_oc_def, decode_left_inverse_I,
2189
2192
metis_tac [FUPDATE_PURGE]
2190
2193
QED
2191
2194
2192
- val t_unify_def = zDefine `
2195
+ Definition t_unify_def[nocompute]:
2193
2196
t_unify s t1 t2 =
2194
2197
OPTION_MAP
2195
2198
((o_f) decode_infer_t)
2196
- (unify (encode_infer_t o_f s) (encode_infer_t t1) (encode_infer_t t2))`;
2199
+ (unify (encode_infer_t o_f s) (encode_infer_t t1) (encode_infer_t t2))
2200
+ End
2197
2201
2198
2202
Definition ts_unify_def:
2199
2203
(ts_unify s [] [] = SOME s) ∧
@@ -2600,8 +2604,9 @@ Proof
2600
2604
fs[t_wfs_def]
2601
2605
QED
2602
2606
2603
- val apply_subst_t_def = zDefine `
2604
- apply_subst_t s t = decode_infer_t (subst_APPLY (encode_infer_t o_f s) (encode_infer_t t))`;
2607
+ Definition apply_subst_t_def[nocompute]:
2608
+ apply_subst_t s t = decode_infer_t (subst_APPLY (encode_infer_t o_f s) (encode_infer_t t))
2609
+ End
2605
2610
2606
2611
Theorem apply_subst_t_eqn:
2607
2612
(!s n.
@@ -2624,9 +2629,10 @@ induct_on `ts` >>
2624
2629
rw [apply_subst_t_def, encode_infer_t_def, decode_infer_t_def]
2625
2630
QED
2626
2631
2627
- val t_walkstar_def = zDefine `
2632
+ Definition t_walkstar_def[nocompute]:
2628
2633
t_walkstar s t =
2629
- decode_infer_t (walkstar (encode_infer_t o_f s) (encode_infer_t t))`;
2634
+ decode_infer_t (walkstar (encode_infer_t o_f s) (encode_infer_t t))
2635
+ End
2630
2636
2631
2637
Theorem t_walkstar_cwalkstar:
2632
2638
t_walkstar s t = cwalkstar (fm2sp s) t
@@ -2692,9 +2698,10 @@ Proof
2692
2698
metis_tac[]
2693
2699
QED
2694
2700
2695
- val t_collapse_def = zDefine `
2701
+ Definition t_collapse_def[nocompute]:
2696
2702
t_collapse s =
2697
- decode_infer_t o_f collapse (encode_infer_t o_f s)`;
2703
+ decode_infer_t o_f collapse (encode_infer_t o_f s)
2704
+ End
2698
2705
2699
2706
Theorem t_collapse_eqn:
2700
2707
!s. t_collapse s = FUN_FMAP (\v. t_walkstar s (Infer_Tuvar v)) (FDOM s)
0 commit comments