Installation for Windows

For running in Windows Isabelle requires Cygwin version 1.7.x in order to turn Windows into a system conforming to common Posix/GNU standards.

Cygwin installation works by executing setup.exe. The following Cygwin packages are required:

* libgmp3 * make * perl * python * tetex-extra (optional) * tetex (optional) * xinit * xemacs-mule-sumo * xemacs-sumo * xpdf

Just follow the first link above, repeatedly press and  (passing the 'Root Directory' C:\cygwin, the 'Local Package Directory' C:\Programme, the latter is sometimes preset to some folder currently active, so change it if necessary).

The installer, actived by the second link above, after some obvious  steps has a 'Search' field for selecting the packages: into this field type the first package from the above list; this displays other packages which contain this package -- open one of the packages and click the seached package (from 'skip' to 'install') and go on with the next item the same way until the list is finished. Further  steps will finish installation.

Note that this selection has been carefully chosen in order to pull in a much larger collection via implicit dependencies. Duration of download might be up to one hour.

The Isabelle/ISAC bundle contains everything required for Isabelle on Cygwin and for the ISAC kernel. The bundle can be unpacked into an arbitrary directory, which is /usr/local in the subsequent example, but any Windows path like 'C:\Users\Joe\Desktop' works as well. Note that the tar/gzip of Cygwin needs to be used here, not an archiving tool for Windows -- so type into the command line of Cygwin:

* tar -C /usr/local -xzvf Isabelle2011-ISAC_bundle_x86-cygwin.tar.gz

For starting Isabelle first start Cygwin, and then type into the command line of Cygwin:

* /usr/local/Isabelle/bin/isabelle jedit &

In order to check if the system is working type into jEdit's window:

theory Scratch imports Main begin ML {*"works"*} end

The typed text will get various colours for the different words, and klicking on "works" and on Output at the bottom of the window shows

val it = "works": string

You get an interactive introduction to authoring Isabelle/ISAC by

* /usr/local/Isabelle/bin/isabelle jedit -l Isac /usr/local/Isabelle/test/Tools/isac/ADDTESTS/course/T1_Basics.thy &

The last point in the installation is loading an introduction to ISAC's kernel. The introduction runs on Isabelle/Isar, a prototype of an upcoming Prover IDE. The ISAC kernel is a programming language based on Computer Theorem Proving (called a TP-based language or short TP-PL). TP-PL can be compared with the programming language of Mathematica, for instance: in the same way as the Mathematica language has the functions of Computer Algebra (CAS) at its disposal, TP-PL can use CAS functionality and additionally relies on Isabelle's automated prover services and includes Isabelle's (mechanically proven!) knowledge in human readable format.

Isabelle/Isar embeds the implementation language ML into the context of Isabelle/ISAC such, that TP-PL has access to all the knowledge of Isabelle/ISAC. As an early prototype, Isabelle/ISAC's range of CAS functionality is restricted.