History log of /seL4-l4v-10.1.1/HOL4/src/quantHeuristics/quantHeuristicsLibSimple.sml
Revision Date Author Comments
# b4b8e85c 18-Aug-2018 Andreas Lööw <AndreasLoow@users.noreply.github.com>

Don't export ERR from HolKernel


# 2056c32a 09-Feb-2017 Thomas Tuerk <thomas@tuerk-brechen.de>

quantHeuristicsLibSimple: add some useful rewrites to simpset-fragment

With the simple quantifier instantiation, one was likely to end up with
terms like

``HD l::TL l = l``

or

``l = [HD l]``

or

``X = SOME (THE X)``

Now, some special rewrite rules are added to simplify these to

``~(l = [])``,

``LENGTH l = 0`` and

``IS_SOME X``

respectively.


# 1c653e3e 06-Feb-2017 Thomas Tuerk <thomas@tuerk-brechen.de>

implement simple quantifier heuristics

The quantifier heuristics library is powerful, but often slow. The
unwind conversions are fast, but have serious restrictions. This commits
adds simple quantifier heuristics. They are based on the techniques
developed for quantifier heuristics library, but only search gap guesses
that don't contain free variables. Some very limited experiments suggest
that it is similarly fast as unwind. It can handle all the cases unwind
can handle. However, it supports also a much richer syntax. Moreover, it
can instantiate in addition to universal and existential quantifiers
also unique existential quantifiers, eliminate select and some.
Moreover, it knows about pairs and lists.