History log of /seL4-l4v-10.1.1/HOL4/examples/miller/ho_prover/ho_basicTools.sml
Revision Date Author Comments
# 474acc2b 09-Jul-2012 Michael Norrish <michael.norrish@nicta.com.au>

Reorganise files under examples/miller.

In particular, combine formalizeUseful, subTypeUseful and
ho_proverUseful into one HurdUseful that is in its own directory.
Also, put Know and Suff tactics into that library so that they don't
need to be repeatedly redefined at the head of the various Script
files.


# e133123f 19-Jan-2007 Joe Hurd <joe@gilith.com>

Ported the Miller-Rabin example to the latest snapshot version of HOL4
(although it's only been tested with the experimental kernel). I'm
sure you don't wish to know, but I'm going to tell you anyway what
were the main offenders in making this port so painful:

* The addition of o_THM to std_ss, because o is used everywhere in my
formalization of probability theory to construct sets and functions
with specific properties.

* When set comprehensions are expanded the bound variables get
sensible names instead of variations on x. Thanks to whoever did
this, but it certainly required a lot of changes to existing proofs.

* My own terrible proof style at the time :-)


# e20b2c50 09-Apr-2002 Joe Hurd <joe@gilith.com>

New version to track changes to raw_match.


# f954b912 12-Feb-2002 Joe Hurd <joe@gilith.com>

Many changes due to the removal of ETA_CONV from the standard simpset.


# 6821d5a8 08-Jan-2002 Joe Hurd <joe@gilith.com>

This example is a verification of the Miller-Rabin probabilistic
primality test incorporating version 2 of probability theory and some
cute example probabilistic programs.

The reason I haven't incorporated it into src/ is that it takes about
2 hours to build, and carries a lot of `baggage' from my experiments
with proof tools.

The most convenient way to build it is change to the examples/miller/
directory, and use the `m' bash script (it also understands `m clean'
to clean the directories). If this doesn't work, or you can't do this,
then there's a longer version:

cd ho_prover
Holmake --qof
cd ../subtypes
Holmake -I ../ho_prover --qof
cd ../RSA
Holmake --qof
cd ../formalize
Holmake -I ../ho_prover -I ../subtypes -I ../RSA --qof
cd ../prob
Holmake -I ../ho_prover -I ../subtypes -I ../RSA -I ../formalize --qof
cd ../groups
Holmake -I ../ho_prover -I ../subtypes -I ../RSA -I ../formalize --qof
cd ../miller
Holmake -I ../ho_prover -I ../subtypes -I ../RSA -I ../formalize -I ../prob -I ../groups --qof
cd ..

It does build RIGHT NOW, but is quite sensitive to changes in the HOL
proof tools. I'll try and support it (especially if anyone uses it),
but sadly it might become more trouble than it's worth.