aboutsummaryrefslogtreecommitdiff
path: root/mltt/core/lib.ML
diff options
context:
space:
mode:
authorstuebinm2022-06-29 01:14:51 +0200
committerstuebinm2022-06-29 01:23:31 +0200
commitcb4139dc35527bd8c8f9b70753c3d1f552c5f19d (patch)
tree8e5709039197ad6d72d8b38235a982bf687e2608 /mltt/core/lib.ML
parent5655750e12d3459c1237588f8dec3fc883a966b7 (diff)
make mltt work with isabelle 2021-1
notably, this modifies the proof method `this`: the previous version of it no longer works with cconv.ML (borrowed from HOL), so now it's just a call to the simplifier, which does work. Unfortunately the new `this` can otherwise do less than the old one (it does not instantiate schematic variables), so the old one is now available as `infer` instead.
Diffstat (limited to 'mltt/core/lib.ML')
-rw-r--r--mltt/core/lib.ML5
1 files changed, 3 insertions, 2 deletions
diff --git a/mltt/core/lib.ML b/mltt/core/lib.ML
index 98d83cc..6949de6 100644
--- a/mltt/core/lib.ML
+++ b/mltt/core/lib.ML
@@ -113,9 +113,10 @@ fun decompose_goal ctxt goal =
let
val focus =
#1 (Subgoal.focus_prems ctxt 1 NONE (Thm.trivial (Thm.cterm_of ctxt goal)))
-
val schematics = #2 (#schematics focus)
- |> map (fn (v, ctm) => (Thm.term_of ctm, Var v))
+ |> Vars.map (fn v => fn ctm => (Thm.term_of ctm, Var v))
+ |> Vars.dest
+ |> map snd
in
map Thm.prop_of (#prems focus) @ [Thm.term_of (#concl focus)]
|> map (subst_free schematics)