aboutsummaryrefslogtreecommitdiff
path: root/hol-light/TacticRecording/graveyard.ml
diff options
context:
space:
mode:
authormark2012-02-16 17:09:21 +0000
committermark2012-02-16 17:09:21 +0000
commitaf9234996fb53a4e7c0ec404d8dd275df17f1ccd (patch)
treef82922967f145b50480494b041178b82e36c5e1c /hol-light/TacticRecording/graveyard.ml
parente4438b2984cadf3e60935cb1e37be55e63f063a0 (diff)
First version of HOL Light tactic recording.
See INSTRUCTIONS and LIMITATIONS files for more details. Currently works for flattening "packaged-up" tactic proofs into g/e commands. Won't work for most proofs because most tactics/thms haven't been promoted. Support for exporting proof graph as a series of goal pairs. Support for displaying extra information to be intercepter by PG for Prooftree.
Diffstat (limited to 'hol-light/TacticRecording/graveyard.ml')
-rw-r--r--hol-light/TacticRecording/graveyard.ml12
1 files changed, 12 insertions, 0 deletions
diff --git a/hol-light/TacticRecording/graveyard.ml b/hol-light/TacticRecording/graveyard.ml
new file mode 100644
index 00000000..db5c733d
--- /dev/null
+++ b/hol-light/TacticRecording/graveyard.ml
@@ -0,0 +1,12 @@
+
+
+(* Utility for applying tactic and incorproating results into goal tree. *)
+(* Takes an "infotactic", i.e. like a normal tactic that works on 'goal' and *)
+(* returns 'goalstate', but that also returns 'finfo' which summarises the *)
+(* operation. These are easily formed by tagging normal tactics. *)
+
+let infotactic_wrap0 (infotac:goal->(goalstate*finfo)) (gx:xgoal) : xgoalstate =
+ let (g,id) = dest_xgoal gx in
+ let ((meta,gs,just),gst) = infotac g in
+ let gxs = extend_gtree id gst gs in
+ (meta,gxs,just);;