E is based on the DISCOUNT-loop variant of the given-clause algorithm, i.e. a strict separation of active and passive facts. Proof search in E is primarily controlled by a literal selection strategy, a clause evaluation heuristic, and a simplification ordering. The prover supports a large number of preprogrammed literal selection strategies, many of which are only experimental. Clause evaluation heuristics can be constructed on the fly by combining various parameterized primitive evaluation functions, or can be selected from a set of predefined heuristics. Supported term orderings are several parameterized instances of Knuth-Bendix-Ordering (KBO) and Lexicographic Path Ordering (LPO).
An automatic mode can select literal selection strategy, term ordering (different versions of KBO and LPO), and search heuristic based on simple problem characteristics.
EP 0.62 is just a combination of E 0.62 in full verbose mode and a proof generation tool. Proof object generation is handled by complex postprocessing of the full search protocol.
The program has been successfully installed under SunOS 4.3.x, Solaris 2.x, HP-UX B 10.20, and various versions of Linux. Sources of the latest released version and a current snapshot are available freely from:
http://wwwjessen.informatik.tu-muenchen.de/~schulz/WORK/eprover.htmlEP 0.62 is a simple Bourne shell script calling E and the postprocessor in a pipeline.
EP 0.62 will be hampered by the fact that it has to reconstruct proofs in a post-processing step that typically usually uses at least the same amount of time as the proof search itself. This is particularly grave because E is able to find a relatively large number of proofs late in the proof search.
E's auto mode is optimized for performance on the TPTP 2.3.0. The optimization
is based on a fairly large number of test runs and consists of the selection of
one of about 50 different strategies for each problem.
References