equal
deleted
inserted
replaced
1202 fun presimplify_term thy t = |
1202 fun presimplify_term thy t = |
1203 if exists_Const (member (op =) Meson.presimplified_consts o fst) t then |
1203 if exists_Const (member (op =) Meson.presimplified_consts o fst) t then |
1204 t |> Skip_Proof.make_thm thy |
1204 t |> Skip_Proof.make_thm thy |
1205 |> Meson.presimplify |
1205 |> Meson.presimplify |
1206 |> prop_of |
1206 |> prop_of |
1207 else |
|
1208 t |
|
1209 |
|
1210 fun is_fun_equality (@{const_name HOL.eq}, |
|
1211 Type (_, [Type (@{type_name fun}, _), _])) = true |
|
1212 | is_fun_equality _ = false |
|
1213 |
|
1214 fun extensionalize_term ctxt t = |
|
1215 if exists_Const is_fun_equality t then |
|
1216 let val thy = Proof_Context.theory_of ctxt in |
|
1217 t |> cterm_of thy |> Meson.extensionalize_conv ctxt |
|
1218 |> prop_of |> Logic.dest_equals |> snd |
|
1219 end |
|
1220 else |
1207 else |
1221 t |
1208 t |
1222 |
1209 |
1223 fun preprocess_abstractions_in_terms trans_lams facts = |
1210 fun preprocess_abstractions_in_terms trans_lams facts = |
1224 let |
1211 let |