Skip to content

Tools for recording Hiproofs in hol-light and visualising them in a web browser

Notifications You must be signed in to change notification settings

DavidAspinall/HipCam

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HipCam

Tools for recording Hiproofs in hol-light and visualising them in a web browser.

More extensive documentation on how to use these tools is coming soon. There is also a forthcoming paper about it. For some high-level information available now, see the slides in the file hiproofs_talk.pdf.

If you are eager to use it NOW, do the following:

  • Make sure you have OCaml 4.00 or better (we've used GADTs)
  • Install HOL Light (see hol.ml to see if the versions match)
  • Copy the hiproofs directory and fusion.ml and hol.ml into the HOL Light directory

Make sure that the variable JGRAPH_BROWSER_COMMAND in hiproofs/main.ml is set properly for your environment. The default value is

open $

which uses the Mac OS X's open command to show the generated HTML in the default web browser. The dollar sign $ is where the location of the HTML file to display will be inserted.

You can now export a theorem T via

Hitools.export *size* *T* *name*

For adding your own hierarchical boxes to proofs, you can use the hilabel function or any of its derivatives:

hilabel : Hiproofs.label -> (thm list -> thm) -> thm list -> thm
hilabel_thm : Hiproofs.label -> thm -> thm
hilabel_tac : Hiproofs.label -> tactic -> tactic
hilabel_tac_goals : Hiproofs.label list -> tactic -> tactic
hilabel_tac_frame : Hiproofs.label -> tactic -> tactic

string_label : string -> Hiproofs.label

Have fun visualising!

About

Tools for recording Hiproofs in hol-light and visualising them in a web browser

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • OCaml 82.4%
  • JavaScript 17.6%