1E(1) User Commands E(1)
2
3
4
6 E - manual page for E 2.5-DEBUG Avongrove
7 (a8acce0b281f27282ba15f0a8541e54662223340)
8
10 eprover [options] [files]
11
13 E 2.5-DEBUG "Avongrove"
14
15 Read a set of first-order clauses and formulae and try to refute it.
16
18 -h
19
20 --help
21
22 Print a short description of program usage and options.
23
24 -V
25
26 --version
27
28 Print the version number of the prover. Please include this with
29 all bug reports (if any).
30
31 -v
32
33 --verbose[=<arg>]
34
35 Verbose comments on the progress of the program. This differs
36 from the output level (below) in that technical information is
37 printed to stderr, while the output level determines which logi‐
38 cal manipulations of the clauses are printed to stdout. The
39 short form or the long form without the optional argument is
40 equivalent to --verbose=1.
41
42 -o <arg>
43
44 --output-file=<arg>
45
46 Redirect output into the named file.
47
48 -s
49
50 --silent
51
52 Equivalent to --output-level=0.
53
54 -l <arg>
55
56 --output-level=<arg>
57
58 Select an output level, greater values imply more verbose out‐
59 put. Level 0 produces nearly no output, level 1 will output each
60 clause as it is processed, level 2 will output generating infer‐
61 ences, level 3 will give a full protocol including rewrite steps
62 and level 4 will include some internal clause renamings. Levels
63 >= 2 also imply PCL2 or TSTP formats (which can be post-pro‐
64 cessed with suitable tools).
65
66 -p
67
68 --proof-object[=<arg>]
69
70 Generate (and print, in case of success) an internal proof
71 object. Level 0 will not print a proof object, level 1 will
72 build asimple, compact proof object that only contains inference
73 rules and dependencies, level 2 will build a proof object where
74 inferences are unambiguously described by giving inference posi‐
75 tions, and level 3 will expand this to a proof object where all
76 intermediate results are explicit. This feature is under devel‐
77 opment, so far only level 0 and 1 are operational. By default
78 The proof object will be provided in TPTP-3 or LOP syntax,
79 depending on input format and explicit settings. The following
80 option will suppress normal output of the proof object in favour
81 of a graphial representation. The short form or the long form
82 without the optional argument is equivalent to --proof-object=1.
83
84 --proof-graph[=<arg>]
85
86 Generate (and print, in case of success) an internal proof
87 object in the form of a GraphViz dot graph. The optional argu‐
88 ment can be 1 (nodes are labelled with just the name of the
89 clause/formula), 2 (nodes are labelled with the TPTP clause/for‐
90 mula) or 3 (nodes also labelled with source/inference record.
91 The option without the optional argument is equivalent to
92 --proof-graph=3.
93
94 -d
95
96 --full-deriv
97
98 Include all derived formuas/clauses in the proof graph/proof
99 object, not just the ones contributing to the actual proof.
100
101 --force-deriv[=<arg>]
102
103 Force output of the derivation even in cases where the prover
104 terminates in an indeterminate state. By default, the derivia‐
105 tion of all processed clauses is included in the derivation
106 object. With value 2, derivation of all clauses will be printed
107 The option without the optional argument is equivalent to
108 --force-deriv=1.
109
110 --record-gcs
111
112 Record given-clause selection as separate (pseudo-)inferences
113 and preserve the form of given clauses evaluated and selected
114 via archiving for analysis and possibly machine learning.
115
116 --training-examples[=<arg>]
117
118 Generate and process training examples from the proof search
119 object. Implies --record-gcs. The argument is a binary or of
120 the desired processig. Bit zero prints positive exampels. Bit 1
121 prints negative examples. Additional selectors will be added
122 later. The option without the optional argument is equivalent to
123 --training-examples=1.
124
125 --pcl-terms-compressed
126
127 Print terms in the PCL output in shared representation.
128
129 --pcl-compact
130
131 Print PCL steps without additional spaces for formatting (safes
132 disk space for large protocols).
133
134 --pcl-shell-level[=<arg>]
135
136 Determines level to which clauses and formulas are suppressed in
137 the output. Level 0 will print all, level 1 will only print ini‐
138 tial clauses/formulas, level 2 will print no clauses or axioms.
139 All levels will still print the dependency graph. The option
140 without the optional argument is equivalent to
141 --pcl-shell-level=1.
142
143 --print-statistics
144
145 Print the inference statistics (only relevant for output level
146 0, otherwise they are printed automatically.
147
148 -0
149
150 --print-detailed-statistics
151
152 Print data about the proof state that is potentially expensive
153 to collect. Includes number of term cells and number of rewrite
154 steps.
155
156 -S
157
158 --print-saturated[=<arg>]
159
160 Print the (semi-) saturated clause sets after terminating the
161 saturation process. The argument given describes which parts
162 should be printed in which order. Legal characters are
163 'teigEIGaA', standing for type declarations, processed positive
164 units, processed negative units, processed non-units, unpro‐
165 cessed positive units, unprocessed negative units, unprocessed
166 non-units, and two types of additional equality axioms, respec‐
167 tively. Equality axioms will only be printed if the original
168 specification contained real equality. In this case, 'a'
169 requests axioms in which a separate substitutivity axiom is
170 given for each argument position of a function or predicate sym‐
171 bol, while 'A' requests a single substitutivity axiom (covering
172 all positions) for each symbol. The short form or the long form
173 without the optional argument is equivalent to --print-satu‐
174 rated=eigEIG.
175
176 --print-sat-info
177
178 Print additional information (clause number, weight, etc) as a
179 comment for clauses from the semi-saturated end system.
180
181 --filter-saturated[=<arg>]
182
183 Filter the
184 (semi-) saturated clause sets after terminating the
185
186 saturation process. The argument is a string describing which
187 operations to take (and in which order). Options are 'u' (remove
188 all clauses with more than one literal), 'c' (delete all but one
189 copy of identical clauses, 'n', 'r', 'f' (forward contraction,
190 unit-subsumption only, no rewriting, rewriting with rules only,
191 full rewriting, respectively), and 'N', 'R' and 'F' (as their
192 lower case counterparts, but with non-unit-subsumption enabled
193 as well). The option without the optional argument is equivalent
194 to --filter-saturated=Fc.
195
196 --prune
197
198 Stop after relevancy pruning, SInE pruning, and output of the
199 initial clause- and formula set. This will automatically set
200 output level to 4 so that the pruned problem specification is
201 printed. Note that the desired pruning methods must still be
202 specified (e.g. '--sine=Auto').
203
204 --cnf
205
206 Convert the input problem into clause normal form and print it.
207 This is (nearly) equivalent to '--print-saturated=eigEIG --pro‐
208 cessed-clauses-limit=0' and will by default perform some usually
209 useful simplifications. You can additionally specify e.g.
210 '--no-preprocessing' if you want just the result of CNF transla‐
211 tion.
212
213 --print-pid
214
215 Print the process id of the prover as a comment after option
216 processing.
217
218 --print-version
219
220 Print the version number of the prover as a comment after option
221 processing. Note that unlike -version, the prover will not ter‐
222 minate, but proceed normally.
223
224 --error-on-empty
225
226 Return with an error code if the input file contains no clauses.
227 Formally, the empty clause set (as an empty conjunction of
228 clauses) is trivially satisfiable, and E will treat any empty
229 input set as satisfiable. However, in composite systems this is
230 more often a sign that something went wrong. Use this option to
231 catch such bugs.
232
233 -m <arg>
234
235 --memory-limit=<arg>
236
237 Limit the memory the prover may use. The argument is the allowed
238 amount of memory in MB. If you use the argument 'Auto', the sys‐
239 tem will try to figure out the amount of physical memory of your
240 machine and claim most of it. This option may not work every‐
241 where, due to broken and/or strange behaviour of setrlimit() in
242 some UNIX implementations, and due to the fact that I know of no
243 portable way to figure out the physical memory in a machine.
244 Both the option and the 'Auto' version do work under all tested
245 versions of Solaris and GNU/Linux. Due to problems with limit
246 data types, it is currently impossible to set a limit of more
247 than 2 GB (2048 MB).
248
249 --cpu-limit[=<arg>]
250
251 Limit the cpu time the prover should run. The optional argument
252 is the CPU time in seconds. The prover will terminate immedi‐
253 ately after reaching the time limit, regardless of internal
254 state. This option may not work everywhere, due to broken and/or
255 strange behaviour of setrlimit() in some UNIX implementations.
256 It does work under all tested versions of Solaris, HP-UX, Mac‐
257 OS-X, and GNU/Linux. As a side effect, this option will inhibit
258 core file writing. Please note that if you use both --cpu-limit
259 and --soft-cpu-limit, the soft limit has to be smaller than the
260 hard limit to have any effect. The option without the optional
261 argument is equivalent to --cpu-limit=300.
262
263 --soft-cpu-limit[=<arg>]
264
265 Limit the cpu time the prover should spend in the main satura‐
266 tion phase. The prover will then terminate gracefully, i.e. it
267 will perform post-processing, filtering and printing of unpro‐
268 cessed clauses, if these options are selected. Note that for
269 some filtering options (in particular those which perform full
270 subsumption), the post-processing time may well be larger than
271 the saturation time. This option is particularly useful if you
272 want to use E as a preprocessor or lemma generator in a larger
273 system. The option without the optional argument is equivalent
274 to --soft-cpu-limit=290.
275
276 -R
277
278 --resources-info
279
280 Give some information about the resources used by the prover.
281 You will usually get CPU time information. On systems returning
282 more information with the rusage() system call, you will also
283 get information about memory consumption.
284
285 -C <arg>
286
287 --processed-clauses-limit=<arg>
288
289 Set the maximal number of clauses to process (i.e. the number of
290 traversals of the main-loop).
291
292 -P <arg>
293
294 --processed-set-limit=<arg>
295
296 Set the maximal size of the set of processed clauses. This dif‐
297 fers from the previous option in that redundant and back-simpli‐
298 fied processed clauses are not counted.
299
300 -U <arg>
301
302 --unprocessed-limit=<arg>
303
304 Set the maximal size of the set of unprocessed clauses. This is
305 a termination condition, not something to use to control the
306 deletion of bad clauses. Compare --delete-bad-limit.
307
308 -T <arg>
309
310 --total-clause-set-limit=<arg>
311
312 Set the maximal size of the set of all clauses. See previous
313 option.
314
315 --generated-limit=<arg>
316
317 Set the maximal number of generated clauses before the proof
318 search stops. This is a reasonable (though not great) estimate
319 of the work done.
320
321 --tb-insert-limit=<arg>
322
323 Set the maximal number of of term bank term top insertions. This
324 is a reasonable (though not great) estimate of the work done.
325
326 --answers[=<arg>]
327
328 Set the maximal number of answers to print for existentially
329 quantified questions. Without this option, the prover terminates
330 after the first answer found. If the value is different from 1,
331 the prover is no longer guaranteed to terminate, even if there
332 is a finite number of answers. The option without the optional
333 argument is equivalent to --answers=2147483647.
334
335 --conjectures-are-questions
336
337 Treat all conjectures as questions to be answered. This is a
338 wart necessary because CASC-J6 has categories requiring answers,
339 but does not yet support the 'question' type for formulas.
340
341 -n
342
343 --eqn-no-infix
344
345 In LOP, print equations in prefix notation equal(x,y).
346
347 -e
348
349 --full-equational-rep
350
351 In LOP. print all literals as equations, even non-equational
352 ones.
353
354 --lop-in
355
356 Set E-LOP as the input format. If no input format is selected by
357 this or one of the following options, E will guess the input
358 format based on the first token. It will almost always correctly
359 recognize TPTP-3, but it may misidentify E-LOP files that use
360 TPTP meta-identifiers as logical symbols.
361
362 --pcl-out
363
364 Set PCL as the proof object output format.
365
366 --tptp-in
367
368 Set TPTP-2 as the input format (but note that includes are still
369 handled according to TPTP-3 semantics).
370
371 --tptp-out
372
373 Print TPTP format instead of E-LOP. Implies --eqn-no-infix and
374 will ignore --full-equational-rep.
375
376 --tptp-format
377
378 Equivalent to --tptp-in and --tptp-out.
379
380 --tptp2-in
381
382 Synonymous with --tptp-in.
383
384 --tptp2-out
385
386 Synonymous with --tptp-out.
387
388 --tptp2-format
389
390 Synonymous with --tptp-format.
391
392 --tstp-in
393
394 Set TPTP-3 as the input format (Note that TPTP-3 syntax is still
395 under development, and the version in E may not be fully con‐
396 forming at all times. E works on all TPTP 6.3.0 FOF and CNF
397 files (including includes).
398
399 --tstp-out
400
401 Print output clauses in TPTP-3 syntax. In particular, for output
402 levels >=2, write derivations as TPTP-3 derivations.
403
404 --tstp-format
405
406 Equivalent to --tstp-in and --tstp-out.
407
408 --tptp3-in
409
410 Synonymous with --tstp-in.
411
412 --tptp3-out
413
414 Synonymous with --tstp-out.
415
416 --tptp3-format
417
418 Synonymous with --tstp-format.
419
420 --auto
421
422 Automatically determine settings for proof search. This is
423 equivalent to -xAuto -tAuto --sine=Auto.
424
425 --satauto
426
427 Automatically determine settings for proof/saturation search.
428 This is equivalent to -xAuto -tAuto.
429
430 --autodev
431
432 Automatically determine settings for proof search (development
433 version). This is equivalent to -xAutoDev -tAutoDev
434 --sine=Auto.
435
436 --satautodev
437
438 Automatically determine settings for proof/saturation search
439 (development version). This is equivalent to -xAutoDev -tAu‐
440 toDev.
441
442 --auto-schedule
443
444 Use the (experimental) strategy scheduling. This will try sev‐
445 eral different fully specified search strategies (aka
446 "Auto-Modes"), one after the other, until a proof or saturation
447 is found, or the time limit is exceeded.
448
449 --satauto-schedule
450
451 Use the (experimental) strategy scheduling without SInE, thus
452 maintaining completeness.
453
454 --no-preprocessing
455
456 Do not perform preprocessing on the initial clause set. Prepro‐
457 cessing currently removes tautologies and orders terms, literals
458 and clauses in a certain ("canonical") way before anything else
459 happens. Unless limited by one of the following options, it will
460 also unfold equational definitions.
461
462 --eq-unfold-limit=<arg>
463
464 During preprocessing, limit unfolding (and removing) of equa‐
465 tional definitions to those where the expanded definition is at
466 most the given limit bigger (in terms of standard weight) than
467 the defined term.
468
469 --eq-unfold-maxclauses=<arg>
470
471 During preprocessing, don't try unfolding of equational defini‐
472 tions if the problem has more than this limit of clauses.
473
474 --no-eq-unfolding
475
476 During preprocessing, abstain from unfolding (and removing)
477 equational definitions.
478
479 --sine[=<arg>]
480
481 Apply SInE to prune the unprocessed axioms with the specified
482 filter. 'Auto' will automatically pick a filter. The option
483 without the optional argument is equivalent to --sine=Auto.
484
485 --rel-pruning-level[=<arg>]
486
487 Perform relevancy pruning up to the given level on the unpro‐
488 cessed axioms. The option without the optional argument is
489 equivalent to --rel-pruning-level=3.
490
491 --presat-simplify
492
493 Before proper saturation do a complete interreduction of the
494 proof state.
495
496 --ac-handling[=<arg>]
497
498 Select AC handling mode, i.e. determine what to do with redun‐
499 dant AC tautologies. The default is equivalent to 'DiscardAll',
500 the other possible values are 'None' (to disable AC handling),
501 'KeepUnits', and 'KeepOrientable'. The option without the
502 optional argument is equivalent to --ac-handling=KeepUnits.
503
504 --ac-non-aggressive
505
506 Do AC resolution on negative literals only on processing (by
507 default, AC resolution is done after clause creation). Only
508 effective if AC handling is not disabled.
509
510 -W <arg>
511
512 --literal-selection-strategy=<arg>
513
514 Choose a strategy for selection of negative literals. There are
515 two special values for this option: NoSelection will select no
516 literal (i.e. perform normal superposition) and NoGeneration
517 will inhibit all generating inferences. For a list of the other
518 (hopefully self-documenting) values run 'eprover -W none'. There
519 are two variants of each strategy. The one prefixed with 'P'
520 will allow paramodulation into maximal positive literals in
521 addition to paramodulation into maximal selected negative liter‐
522 als.
523
524 --no-generation
525
526 Don't perform any generating inferences (equivalent to --lit‐
527 eral-selection-strategy=NoGeneration).
528
529 --select-on-processing-only
530
531 Perform literal selection at processing time only (i.e. select
532 only in the _given clause_), not before clause evaluation. This
533 is relevant because many clause selection heuristics give spe‐
534 cial consideration to maximal or selected literals.
535
536 -i
537
538 --inherit-paramod-literals
539
540 Always select the negative literals a previous inference
541 paramodulated into (if possible). If no such literal exists,
542 select as dictated by the selection strategy.
543
544 -j
545
546 --inherit-goal-pm-literals
547
548 In a goal (all negative clause), always select the negative lit‐
549 erals a previous inference paramodulated into (if possible). If
550 no such literal exists, select as dictated by the selection
551 strategy.
552
553 --inherit-conjecture-pm-literals
554
555 In a conjecture-derived clause, always select the negative lit‐
556 erals a previous inference paramodulated into (if possible). If
557 no such literal exists, select as dictated by the selection
558 strategy.
559
560 --selection-pos-min=<arg>
561
562 Set a lower limit for the number of positive literals a clause
563 must have to be eligible for literal selection.
564
565 --selection-pos-max=<arg>
566
567 Set a upper limit for the number of positive literals a clause
568 can have to be eligible for literal selection.
569
570 --selection-neg-min=<arg>
571
572 Set a lower limit for the number of negative literals a clause
573 must have to be eligible for literal selection.
574
575 --selection-neg-max=<arg>
576
577 Set a upper limit for the number of negative literals a clause
578 can have to be eligible for literal selection.
579
580 --selection-all-min=<arg>
581
582 Set a lower limit for the number of literals a clause must have
583 to be eligible for literal selection.
584
585 --selection-all-max=<arg>
586
587 Set an upper limit for the number of literals a clause must have
588 to be eligible for literal selection.
589
590 --selection-weight-min=<arg>
591
592 Set the minimum weight a clause must have to be eligible for
593 literal selection.
594
595 --prefer-initial-clauses
596
597 Always process all initial clauses first.
598
599 -x <arg>
600
601 --expert-heuristic=<arg>
602
603 Select one of the clause selection heuristics. Currently at
604 least available: Auto, Weight, StandardWeight, RWeight, FIFO,
605 LIFO, Uniq, UseWatchlist. For a full list check HEURIS‐
606 TICS/che_proofcontrol.c. Auto is recommended if you only want to
607 find a proof. It is special in that it will also set some addi‐
608 tional options. To have optimal performance, you also should
609 specify -tAuto to select a good term ordering. LIFO is unfair
610 and will make the prover incomplete. Uniq is used internally and
611 is not very useful in most cases. You can define more heuristics
612 using the option -H (see below).
613
614 --filter-orphans-limit[=<arg>]
615
616 Orphans are unprocessed clauses where one of the parents has
617 been removed by back-simolification. They are redundant and usu‐
618 ally removed lazily (i.e. only when they are selected for pro‐
619 cessing). With this option you can select a limit on back-sim‐
620 plified clauses after which orphans will be eagerly deleted.
621 The option without the optional argument is equivalent to --fil‐
622 ter-orphans-limit=100.
623
624 --forward-contract-limit[=<arg>]
625
626 Set a limit on the number of processed clauses after which the
627 unprocessed clause set will be re-simplified and reweighted.
628 The option without the optional argument is equivalent to --for‐
629 ward-contract-limit=80000.
630
631 --delete-bad-limit[=<arg>]
632
633 Set the number of storage units after which bad clauses are
634 deleted without further consideration. This causes the prover to
635 be potentially incomplete, but will allow you to limit the maxi‐
636 mum amount of memory used fairly well. The prover will tell you
637 if a proof attempt failed due to the incompleteness introduced
638 by this option. It is recommended to set this limit signifi‐
639 cantly higher than --filter-limit or --filter-copies-limit. If
640 you select -xAuto and set a memory limit, the prover will deter‐
641 mine a good value automatically. The option without the optional
642 argument is equivalent to --delete-bad-limit=1500000.
643
644 --assume-completeness
645
646 There are various way (e.g. the next few options) to configure
647 the prover to be strongly incomplete in the general case. E will
648 detect when such an option is selected and return corresponding
649 exit states (i.e. it will not claim satisfiability just because
650 it ran out of unprocessed clauses). If you _know_ that for your
651 class of problems the selected strategy is still complete, use
652 this option to tell the system that this is the case.
653
654 --assume-incompleteness
655
656 This option instructs the prover to assume incompleteness (typi‐
657 cally because the axiomatization already is incomplete because
658 axioms have been filtered before they are handed to the system.
659
660 --disable-eq-factoring
661
662 Disable equality factoring. This makes the prover incomplete for
663 general non-Horn problems, but helps for some specialized
664 classes. It is not necessary to disable equality factoring for
665 Horn problems, as Horn clauses are not factored anyways.
666
667 --disable-paramod-into-neg-units
668
669 Disable paramodulation into negative unit clause. This makes the
670 prover incomplete in the general case, but helps for some spe‐
671 cialized classes.
672
673 --condense
674
675 Enable condensing for the given clause. Condensing replaces a
676 clause by a more general factor (if such a factor exists).
677
678 --condense-aggressive
679
680 Enable condensing for the given and newly generated clauses.
681
682 --disable-given-clause-fw-contraction
683
684 Disable simplification and subsumption of the newly selected
685 given clause (clauses are still simplified when they are gener‐
686 ated). In general, this breaks some basic assumptions of the
687 DISCOUNT loop proof search procedure. However, there are some
688 problem classes in which this simplifications empirically never
689 occurs. In such cases, we can save significant overhead. The
690 option _should_ work in all cases, but is not expected to
691 improve things in most cases.
692
693 --simul-paramod
694
695 Use simultaneous paramodulation to implement superposition.
696 Default is to use plain paramodulation.
697
698 --oriented-simul-paramod
699
700 Use simultaneous paramodulation for oriented from-literals. This
701 is an experimental feature.
702
703 --supersimul-paramod
704
705 Use supersimultaneous paramodulation to implement superposition.
706 Default is to use plain paramodulation.
707
708 --oriented-supersimul-paramod
709
710 Use supersimultaneous paramodulation for oriented from-literals.
711 This is an experimental feature.
712
713 --split-clauses[=<arg>]
714
715 Determine which clauses should be subject to splitting. The
716 argument is the binary 'OR' of values for the desired classes:
717
718 1: Horn clauses
719
720 2: Non-Horn clauses
721
722 4: Negative clauses
723
724 8: Positive clauses
725
726 16: Clauses with both positive and negative literals
727
728 Each set bit adds that class to the set of clauses which will be
729 split. The option without the optional argument is equivalent
730 to --split-clauses=7.
731
732 --split-method=<arg>
733
734 Determine how to treat ground literals in splitting. The argu‐
735 ment is either '0' to denote no splitting of ground literals
736 (they are all assigned to the first split clause produced), '1'
737 to denote that all ground literals should form a single new
738 clause, or '2', in which case ground literals are treated as
739 usual and are all split off into individual clauses.
740
741 --split-aggressive
742
743 Apply splitting to new clauses (after simplification) and before
744 evaluation. By default, splitting (if activated) is only per‐
745 formed on selected clauses.
746
747 --split-reuse-defs
748
749 If possible, reuse previous definitions for splitting.
750
751 -t <arg>
752
753 --term-ordering=<arg>
754
755 Select an ordering type (currently Auto, LPO, LPO4, KBO or
756 KBO6). -tAuto is suggested, in particular with -xAuto. KBO and
757 KBO6 are different implementations of the same ordering, KBO6 is
758 usually faster and has had more testing. Similarly, LPO4 is a
759 new, equivalent but superior implementation of LPO.
760
761 -w <arg>
762
763 --order-weight-generation=<arg>
764
765 Select a method for the generation of weights for use with the
766 term ordering. Run 'eprover -w none' for a list of options.
767
768 --order-weights=<arg>
769
770 Describe a (partial) assignments of weights to function symbols
771 for term orderings (in particular, KBO). You can specify a list
772 of weights of the form 'f1:w1,f2:w2, ...'. Since a total weight
773 assignment is needed, E will _first_ apply any weight generation
774 scheme specified (or the default one), and then modify the
775 weights as specified. Note that E performs only very basic san‐
776 ity checks, so you probably can specify weights that break KBO
777 constraints.
778
779 -G <arg>
780
781 --order-precedence-generation=<arg>
782
783 Select a method for the generation of a precedence for use with
784 the term ordering. Run 'eprover -G none' for a list of options.
785
786 --prec-pure-conj[=<arg>]
787
788 Set a weight for symbols that occur in conjectures only to
789 determinewhere to place it in the precedence. This value is used
790 for a roughpre-order, the normal schemes only sort within sym‐
791 bols with the sameoccurance modifier. The option without the
792 optional argument is equivalent to --prec-pure-conj=10.
793
794 --prec-conj-axiom[=<arg>]
795
796 Set a weight for symbols that occur in both conjectures and
797 axiomsto determine where to place it in the precedence. This
798 value is used for a rough pre-order, the normal schemes only
799 sort within symbols with the same occurance modifier. The option
800 without the optional argument is equivalent to
801 --prec-conj-axiom=5.
802
803 --prec-pure-axiom[=<arg>]
804
805 Set a weight for symbols that occur in axioms only to determine
806 where to place it in the precedence. This value is used for a
807 rough pre-order, the normal schemes only sort within symbols
808 with the same occurance modifier. The option without the
809 optional argument is equivalent to --prec-pure-axiom=2.
810
811 --prec-skolem[=<arg>]
812
813 Set a weight for Skolem symbols to determine where to place it
814 in the precedence. This value is used for a rough pre-order, the
815 normal schemes only sort within symbols with the same occurance
816 modifier. The option without the optional argument is equivalent
817 to --prec-skolem=2.
818
819 --prec-defpred[=<arg>]
820
821 Set a weight for introduced predicate symbols (usually via defi‐
822 nitional CNF or clause splitting) to determine where to place it
823 in the precedence. This value is used for a rough pre-order, the
824 normal schemes only sort within symbols with the same occurance
825 modifier. The option without the optional argument is equivalent
826 to --prec-defpred=2.
827
828 -c <arg>
829
830 --order-constant-weight=<arg>
831
832 Set a special weight > 0 for constants in the term ordering. By
833 default, constants are treated like other function symbols.
834
835 --precedence[=<arg>]
836
837 Describe a (partial) precedence for the term ordering used for
838 the proof attempt. You can specify a comma-separated list of
839 precedence chains, where a precedence chain is a list of func‐
840 tion symbols (which all have to appear in the proof problem),
841 connected by >, <, or =. If this option is used in connection
842 with --order-precedence-generation, the partial ordering will be
843 completed using the selected method, otherwise the prover runs
844 with a non-ground-total ordering. The option without the
845 optional argument is equivalent to --precedence=.
846
847 --lpo-recursion-limit[=<arg>]
848
849 Set a depth limit for LPO comparisons. Most comparisons do not
850 need more than 10 or 20 levels of recursion. By default, recur‐
851 sion depth is limited to 1000 to avoid stack overflow problems.
852 If the limit is reached, the prover assumes that the terms are
853 uncomparable. Smaller values make the comparison attempts
854 faster, but less exact. Larger values have the opposite effect.
855 Values up to 20000 should be save on most operating systems. If
856 you run into segmentation faults while using LPO or LPO4, first
857 try to set this limit to a reasonable value. If the problem per‐
858 sists, send a bug report ;-) The option without the optional
859 argument is equivalent to --lpo-recursion-limit=100.
860
861 --restrict-literal-comparisons
862
863 Make all literals uncomparable in the term ordering (i.e. do not
864 use the term ordering to restrict paramodulation, equality reso‐
865 lution and factoring to certain literals. This is necessary to
866 make Set-of-Support-strategies complete for the non-equational
867 case (It still is incomplete for the equational case, but pretty
868 useless anyways).
869
870 --literal-comparison=<arg>
871
872 Modify how literal comparisons are done. 'None' is equivalent to
873 the previous option, 'Normal' uses the normal lifting of the
874 term ordering, 'TFOEqMax' uses the equivalent of a transfinite
875 ordering deciding on the predicate symbol and making equational
876 literals maximal, and 'TFOEqMin' modifies this by making equa‐
877 tional symbols minimal.
878
879 --sos-uses-input-types
880
881 If input is TPTP format, use TPTP conjectures for initializing
882 the Set of Support. If not in TPTP format, use E-LOP queries
883 (clauses of the form ?-l(X),...,m(Y)). Normally, all negative
884 clauses are used. Please note that most E heuristics do not use
885 this information at all, it is currently only useful for certain
886 parameter settings (including the SimulateSOS priority func‐
887 tion).
888
889 --destructive-er
890
891 Allow destructive equality resolution inferences on pure-vari‐
892 able literals of the form X!=Y, i.e. replace the original clause
893 with the result of an equality resolution inference on this lit‐
894 eral.
895
896 --strong-destructive-er
897
898 Allow destructive equality resolution inferences on literals of
899 the form X!=t (where X does not occur in t), i.e. replace the
900 original clause with the result of an equality resolution infer‐
901 ence on this literal. Unless I am brain-dead, this maintains
902 completeness, although the proof is rather tricky.
903
904 --destructive-er-aggressive
905
906 Apply destructive equality resolution to all newly generated
907 clauses, not just to selected clauses. Implies --destructive-er.
908
909 --forward-context-sr
910
911 Apply contextual simplify-reflect with processed clauses to the
912 given clause.
913
914 --forward-context-sr-aggressive
915
916 Apply contextual simplify-reflect with processed clauses to new
917 clauses. Implies --forward-context-sr.
918
919 --backward-context-sr
920
921 Apply contextual simplify-reflect with the given clause to pro‐
922 cessed clauses.
923
924 -g
925
926 --prefer-general-demodulators
927
928 Prefer general demodulators. By default, E prefers specialized
929 demodulators. This affects in which order the rewrite index is
930 traversed.
931
932 -F <arg>
933
934 --forward-demod-level=<arg>
935
936 Set the desired level for rewriting of unprocessed clauses. A
937 value of 0 means no rewriting, 1 indicates to use rules (ori‐
938 entable equations) only, 2 indicates full rewriting with rules
939 and instances of unorientable equations. Default behavior is 2.
940
941 --strong-rw-inst
942
943 Instantiate unbound variables in matching potential demodulators
944 with a small constant terms.
945
946 -u
947
948 --strong-forward-subsumption
949
950 Try multiple positions and unit-equations to try to equationally
951 subsume a single new clause. Default is to search for a single
952 position.
953
954 --satcheck-proc-interval[=<arg>]
955
956 Enable periodic SAT checking at the given interval of main loop
957 non-trivial processed clauses. The option without the optional
958 argument is equivalent to --satcheck-proc-interval=5000.
959
960 --satcheck-gen-interval[=<arg>]
961
962 Enable periodic SAT checking whenever the total proof state size
963 increases by the given limit. The option without the optional
964 argument is equivalent to --satcheck-gen-interval=10000.
965
966 --satcheck-ttinsert-interval[=<arg>]
967
968 Enable periodic SAT checking whenever the number of term tops
969 insertions matches the given limit (which grows exponentially).
970 The option without the optional argument is equivalent to
971 --satcheck-ttinsert-interval=5000000.
972
973 --satcheck[=<arg>]
974
975 Set the grounding strategy for periodic SAT checking. Note that
976 to enable SAT checking, it is also necessary to set the interval
977 with one of the previous two options. The option without the
978 optional argument is equivalent to --satcheck=FirstConst.
979
980 --satcheck-decision-limit[=<arg>]
981
982 Set the number of decisions allowed for each run of the SAT
983 solver. If the option is not given, the built-in value is 10000.
984 Use -1 to allow unlimited decision. The option without the
985 optional argument is equivalent to --satcheck-deci‐
986 sion-limit=100.
987
988 --satcheck-normalize-const
989
990 Use the current normal form (as recorded in the termbank rewrite
991 cache) of the selected constant as the term for the grounding
992 substitution.
993
994 --satcheck-normalize-unproc
995
996 Enable re-simplification (heuristic re-revaluation) of unpro‐
997 cessed clauses before grounding for SAT checking.
998
999 --watchlist[=<arg>]
1000
1001 Give the name for a file containing clauses to be watched for
1002 during the saturation process. If a clause is generated that
1003 subsumes a watchlist clause, the subsumed clause is removed from
1004 the watchlist. The prover will terminate when the watchlist is
1005 empty. If you want to use the watchlist for guiding the proof,
1006 put the empty clause onto the list and use the built-in clause
1007 selection heuristic 'UseWatchlist' (or build a heuristic your‐
1008 self using the priority functions 'PreferWatchlist' and 'Defer‐
1009 Watchlist'). Use the argument 'Use inline watchlist type' (or no
1010 argument) and the special clause type 'watchlist' if you want to
1011 put watchlist clauses into the normal input stream. This is only
1012 supported for TPTP input formats. The option without the
1013 optional argument is equivalent to --watchlist='Use inline
1014 watchlist type'.
1015
1016 --static-watchlist[=<arg>]
1017
1018 This is identical to the previous option, but subsumed clauses
1019 willnot be removed from the watchlist (and hence the prover will
1020 not terminate if all watchlist clauses have been subsumed. This
1021 may be more useful for heuristic guidance. The option without
1022 the optional argument is equivalent to --static-watchlist='Use
1023 inline watchlist type'.
1024
1025 --no-watchlist-simplification
1026
1027 By default, the watchlist is brought into normal form with
1028 respect to the current processed clause set and certain simpli‐
1029 fications. This option disables simplification for the watch‐
1030 list.
1031
1032 --conventional-subsumption
1033
1034 Equivalent to --subsumption-indexing=None.
1035
1036 --subsumption-indexing=<arg>
1037
1038 Determine choice of indexing for (most) subsumption operations.
1039 Choices are 'None' for naive subsumption, 'Direct' for direct
1040 mapped FV-Indexing, 'Perm' for permuted FV-Indexing and 'Per‐
1041 mOpt' for permuted FV-Indexing with deletion of (suspected)
1042 non-informative features. Default behaviour is 'Perm'.
1043
1044 --fvindex-featuretypes=<arg>
1045
1046 Select the feature types used for indexing. Choices are "None"
1047 to disable FV-indexing, "AC" for AC compatible features (the
1048 default) (literal number and symbol counts), "SS" for set sub‐
1049 sumption compatible features (symbol depth), and "All" for all
1050 features.Unless you want to measure the effects of the different
1051 features, I suggest you stick with the default.
1052
1053 --fvindex-maxfeatures[=<arg>]
1054
1055 Set the maximum initial number of symbols for feature computa‐
1056 tion. Depending on the feature selection, a value of X here
1057 will convert into 2X+2 features (for set subsumption features),
1058 2X+4 features (for AC-compatible features) or 4X+6 features (if
1059 all features are used, the default). Note that the actually used
1060 set of features may be smaller than this if the signature does
1061 not contain enough symbols.For the Perm and PermOpt version,
1062 this is _also_ used to set the maximum depth of the feature vec‐
1063 tor index. Yes, I should probably make this into two separate
1064 options. If you select a small value here, you should probably
1065 not use "Direct" for the --subsumption-indexing option. The
1066 option without the optional argument is equivalent to --fvin‐
1067 dex-maxfeatures=200.
1068
1069 --fvindex-slack[=<arg>]
1070
1071 Set the number of slots reserved in the index for function sym‐
1072 bols that may be introduced into the signature later, e.g. by
1073 splitting. If no new symbols are introduced, this just wastes
1074 time and memory. If PermOpt is chosen, the slackness slots will
1075 be deleted from the index anyways, but will still waste (a lit‐
1076 tle) time in computing feature vectors. The option without the
1077 optional argument is equivalent to --fvindex-slack=0.
1078
1079 --rw-bw-index[=<arg>]
1080
1081 Select fingerprint function for backwards rewrite index. "NoIn‐
1082 dex" will disable paramodulation indexing. For a list of the
1083 other values run 'eprover --pm-index=none'. FPX functions will
1084 use a fingerprint of X positions, the letters disambiguate
1085 between different fingerprints with the same sample size. The
1086 option without the optional argument is equivalent to
1087 --rw-bw-index=FP7.
1088
1089 --pm-from-index[=<arg>]
1090
1091 Select fingerprint function for the index for paramodulation
1092 from indexed clauses. "NoIndex" will disable paramodulation
1093 indexing. For a list of the other values run 'eprover
1094 --pm-index=none'. FPX functionswill use a fingerprint of X posi‐
1095 tions, the letters disambiguate between different fingerprints
1096 with the same sample size. The option without the optional argu‐
1097 ment is equivalent to --pm-from-index=FP7.
1098
1099 --pm-into-index[=<arg>]
1100
1101 Select fingerprint function for the index for paramodulation
1102 into the indexed clauses. "NoIndex" will disable paramodulation
1103 indexing. For a list of the other values run 'eprover
1104 --pm-index=none'. FPX functionswill use a fingerprint of X posi‐
1105 tions, the letters disambiguate between different fingerprints
1106 with the same sample size. The option without the optional argu‐
1107 ment is equivalent to --pm-into-index=FP7.
1108
1109 --fp-index[=<arg>]
1110
1111 Select fingerprint function for all fingerprint indices. See
1112 above. The option without the optional argument is equivalent to
1113 --fp-index=FP7.
1114
1115 --fp-no-size-constr
1116
1117 Disable usage of size constraints for matching with fingerprint
1118 indexing.
1119
1120 --pdt-no-size-constr
1121
1122 Disable usage of size constraints for matching with perfect dis‐
1123 crimination trees indexing.
1124
1125 --pdt-no-age-constr
1126
1127 Disable usage of age constraints for matching with perfect dis‐
1128 crimination trees indexing.
1129
1130 --detsort-rw
1131
1132 Sort set of clauses eliminated by backward rewriting using a
1133 total syntactic ordering.
1134
1135 --detsort-new
1136
1137 Sort set of newly generated and backward simplified clauses
1138 using a total syntactic ordering.
1139
1140 -D <arg>
1141
1142 --define-weight-function=<arg>
1143
1144 Define
1145 a weight function (see manual for details). Later definitions
1146
1147 override previous definitions.
1148
1149 -H <arg>
1150
1151 --define-heuristic=<arg>
1152
1153 Define a clause selection heuristic (see manual for details).
1154 Later definitions override previous definitions.
1155
1156 --free-numbers
1157
1158 Treat numbers (strings of decimal digits) as normal free func‐
1159 tion symbols in the input. By default, number now are supposed
1160 to denote domain constants and to be implicitly different from
1161 each other.
1162
1163 --free-objects
1164
1165 Treat object identifiers (strings in double quotes) as normal
1166 free function symbols in the input. By default, object identi‐
1167 fiers now represent domain objects and are implicitly different
1168 from each other (and from numbers, unless those are declared to
1169 be free).
1170
1171 --definitional-cnf[=<arg>]
1172
1173 Tune the clausification algorithm to introduces definitions for
1174 subformulae to avoid exponential blow-up. The optional argument
1175 is a fudge factor that determines when definitions are intro‐
1176 duced. 0 disables definitions completely. The default works
1177 well. The option without the optional argument is equivalent to
1178 --definitional-cnf=24.
1179
1180 --old-cnf[=<arg>]
1181
1182 As the previous option, but use the classical, well-tested
1183 clausification algorithm as opposed to the newewst one which
1184 avoides some algorithmic pitfalls and hence works better on some
1185 exotic formulae. The two may produce slightly different (but
1186 equisatisfiable) clause normal forms. The option without the
1187 optional argument is equivalent to --old-cnf=24.
1188
1189 --miniscope-limit[=<arg>]
1190
1191 Set the limit of sub-formula-size to miniscope. The build-inde‐
1192 fault is 256. Only applies to the new (default) clausification
1193 algorithm The option without the optional argument is equivalent
1194 to --miniscope-limit=2147483648.
1195
1196 --print-types
1197
1198 Print the type of every term. Useful for debugging purposes.
1199
1200 --app-encode
1201
1202 Encodes terms in the proof state using applicative encoding,
1203 prints encoded input problem and exits.
1204
1206 Report bugs to <schulz@eprover.org>. Please include the following, if
1207 possible:
1208
1209 * The version of the package as reported by eprover --version.
1210
1211 * The operating system and version.
1212
1213 * The exact command line that leads to the unexpected behaviour.
1214
1215 * A description of what you expected and what actually happend.
1216
1217 * If possible all input files necessary to reproduce the bug.
1218
1220 Copyright 1998-2020 by Stephan Schulz, schulz@eprover.org, and the E
1221 contributors (see DOC/CONTRIBUTORS).
1222
1223 This program is a part of the distribution of the equational theorem
1224 prover E. You can find the latest version of the E distribution as well
1225 as additional information at http://www.eprover.org
1226
1227 This program is free software; you can redistribute it and/or modify it
1228 under the terms of the GNU General Public License as published by the
1229 Free Software Foundation; either version 2 of the License, or (at your
1230 option) any later version.
1231
1232 This program is distributed in the hope that it will be useful, but
1233 WITHOUT ANY WARRANTY; without even the implied warranty of MER‐
1234 CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
1235 Public License for more details.
1236
1237 You should have received a copy of the GNU General Public License along
1238 with this program (it should be contained in the top level directory of
1239 the distribution in the file COPYING); if not, write to the Free Soft‐
1240 ware Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
1241 02111-1307 USA
1242
1243 The original copyright holder can be contacted via email or as
1244
1245 Stephan Schulz DHBW Stuttgart Fakultaet Technik Informatik Rote‐
1246 buehlplatz 41 70178 Stuttgart Germany
1247
1248
1249
1250E 2.5-DEBUG Avongrove (a8acce0b281fA2u7g2u8s2tba21052f00a8541e54662223340) E(1)