History log of /seL4-l4v-10.1.1/HOL4/src/metis/folTools.sml
Revision Date Author Comments
# 499ad7b5 03-Sep-2018 Michael Norrish <Michael.Norrish@nicta.com.au>

Label assignments (v := e) as (* OK *) in src/metis

These labels are my judgement that the references are strictly local
and so not a concurrency issue. Additionally, some assignments in
comments (to Moscow ML specific quietdec, for example) have just been
deleted.


# 20bbfd8d 31-Aug-2018 Michael Norrish <Michael.Norrish@nicta.com.au>

Clean up some METIS library syntax (semantically a no-op)

Mostly deleting redundant infix declarations, but some other random
reformatting along the way


# 10308a8e 31-Aug-2018 Michael Norrish <Michael.Norrish@nicta.com.au>

Isolate assignment to traces ref in metis code

Hide assignment to this reference behind add_trace and set_traces
function calls.


# 563d8e35 13-May-2010 Joe Hurd <joe@gilith.com>

Added some extra profiling to see how many primitive inferences Metis
is using in the current version of HOL. If anyone is interested, the
result is:

Goals = 1136
Norm = 2250784 (78%)
Proof = 629622 (22%)
-------------------------
Total = 2880406


# fffeecd5 06-Jun-2005 Michael Norrish <Michael.Norrish@nicta.com.au>

I was led to the problem with tautLib.TAUT from this file, which ultimately
wasn't at fault in the bug I was tracking, but which should still have
its local grammars set anyway.


# e6f1d9ff 15-Jan-2005 Joe Hurd <joe@gilith.com>

Improvements to Metis made while investigating bad performance reported
by Anthony, Juliano and Mike.


# 1d04a0ca 07-Jul-2004 Michael Norrish <Michael.Norrish@nicta.com.au>

New treatment of abbreviations. Documentation still to be updated.
Backwards compatibility illustrated in examples/lambda/standardisationScript
and examples/arm6. New techniques and entry-points illustrated in
core distribution and some of the lambda example scripts.


# 9080911f 08-Jun-2004 Joe Hurd <joe@gilith.com>

New version of the tool suite to port HOL4 to MLton.


# 8933c9c4 26-May-2004 Joe Hurd <joe@gilith.com>

New version of metis: this one actually goes through the compiler
and runs the selftest!


# 8be3e9b7 25-Jan-2004 Joe Hurd <joe@gilith.com>

Rationalized equality axioms for higher-order mode.


# 706836b9 14-Jan-2004 Joe Hurd <joe@gilith.com>

Latest version of METIS_TAC.

The biggest change is that scheduling provers is done by number of
inferences, not time used, so METIS_TAC is now completely
deterministic. If it works for you on a subgoal, it will work every
time HOL4 is built.


# 20ad9a14 28-Jul-2003 Joe Hurd <joe@gilith.com>

Fixed a bug found by Michael Norrish whereby definitional CNF interacted
badly with type reconstruction. This resulted in some invocations of
METIS_TAC returning "error during proof translation", and then failing to
find a proof with types switched on. All fixed now.

Now that STRIP_TAC has changed, METIS_TAC can safely do pre-normalization
splitting using DISJ_CASES_THEN. The only user-visible result of this
should be better performance.


# 91bf4ed0 17-Jun-2003 Joe Hurd <joe@gilith.com>

Version 1.3: 17 June 2002

Goals submitted to MESON_TAC when HOL is built .......... 1953
Proved by MESON_TAC ..................................... 1953
Proved by METIS_TAC within 10s .......................... 1946

Between Versions 1.2 and 1.3

* Implemention of definitional CNF to reduce blow-up in number of
clauses (usually caused by nested boolean equivalences).
* Resolution is more robust and efficient, and includes an option
(off by default) for clauses to inherit ordering constraints.


# c8d258c7 19-Nov-2002 Joe Hurd <joe@gilith.com>

Version 1.2: 19 November 2002

Goals submitted to MESON_TAC when HOL is built .......... 1779
Proved by MESON_TAC ..................................... 1779
Proved by METIS_TAC within 10s .......................... 1774

Between Versions 1.1 and 1.2

* Ground-up reimplementation of the resolution calculus, which now
performs ordered resolution and ordered paramodulation.
* A single entry-point METIS_TAC, which uses heuristics to decide
whether to apply FO_METIS_TAC or HO_METIS_TAC.
* {HO|FO}_METIS_TAC both initially operate in typeless mode, and
automatically try again with types if an error occurs during proof
translation.
* Extensionality axiom now included in HO_METIS_TAC by default.


# 7850f004 21-Sep-2002 Joe Hurd <joe@gilith.com>

Version 1.1 of the Metis Library.

From the Change Log section of the README:

Between Versions 1.0 and 1.1

* Added a "metis" entry to the HOL trace system: it nows prints
status information during proof (if HOL is in interactive mode).
* Restricted (universal and existential) quantifiers are now
normalized by the NNF conversion.
* (First-order) METIS_TAC can now handle boolean variables.
* Improved performance in the model elimination proof procedure due
to better caching (following a suggestion from John Harrison).
* First-order substitutions are now fully Boultonized.
* The first-order logical kernel makes local tweaks to keep proofs
as small as possible.


# 01d2e53d 18-Jul-2002 Joe Hurd <joe@gilith.com>

Initial check-in of the Metis first-order prover.