1E(1) User Commands E(1)
2
3
4
6 E - manual page for E 2.4-DEBUG Sandakphu
7 (1fa8840d748f8781007680abbfdab27e96fa5648)
8
10 eprover [options] [files]
11
13 E 2.4-DEBUG "Sandakphu"
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 --split-clauses[=<arg>]
704
705 Determine which clauses should be subject to splitting. The
706 argument is the binary 'OR' of values for the desired classes:
707
708 1: Horn clauses
709
710 2: Non-Horn clauses
711
712 4: Negative clauses
713
714 8: Positive clauses
715
716 16: Clauses with both positive and negative literals
717
718 Each set bit adds that class to the set of clauses which will be
719 split. The option without the optional argument is equivalent
720 to --split-clauses=7.
721
722 --split-method=<arg>
723
724 Determine how to treat ground literals in splitting. The argu‐
725 ment is either '0' to denote no splitting of ground literals
726 (they are all assigned to the first split clause produced), '1'
727 to denote that all ground literals should form a single new
728 clause, or '2', in which case ground literals are treated as
729 usual and are all split off into individual clauses.
730
731 --split-aggressive
732
733 Apply splitting to new clauses (after simplification) and before
734 evaluation. By default, splitting (if activated) is only per‐
735 formed on selected clauses.
736
737 --split-reuse-defs
738
739 If possible, reuse previous definitions for splitting.
740
741 -t <arg>
742
743 --term-ordering=<arg>
744
745 Select an ordering type (currently Auto, LPO, LPO4, KBO or
746 KBO6). -tAuto is suggested, in particular with -xAuto. KBO and
747 KBO6 are different implementations of the same ordering, KBO6 is
748 usually faster and has had more testing. Similarly, LPO4 is a
749 new, equivalent but superior implementation of LPO.
750
751 -w <arg>
752
753 --order-weight-generation=<arg>
754
755 Select a method for the generation of weights for use with the
756 term ordering. Run 'eprover -w none' for a list of options.
757
758 --order-weights=<arg>
759
760 Describe a (partial) assignments of weights to function symbols
761 for term orderings (in particular, KBO). You can specify a list
762 of weights of the form 'f1:w1,f2:w2, ...'. Since a total weight
763 assignment is needed, E will _first_ apply any weight generation
764 scheme specified (or the default one), and then modify the
765 weights as specified. Note that E performs only very basic san‐
766 ity checks, so you probably can specify weights that break KBO
767 constraints.
768
769 -G <arg>
770
771 --order-precedence-generation=<arg>
772
773 Select a method for the generation of a precedence for use with
774 the term ordering. Run 'eprover -G none' for a list of options.
775
776 -c <arg>
777
778 --order-constant-weight=<arg>
779
780 Set a special weight > 0 for constants in the term ordering. By
781 default, constants are treated like other function symbols.
782
783 --precedence[=<arg>]
784
785 Describe a (partial) precedence for the term ordering used for
786 the proof attempt. You can specify a comma-separated list of
787 precedence chains, where a precedence chain is a list of func‐
788 tion symbols (which all have to appear in the proof problem),
789 connected by >, <, or =. If this option is used in connection
790 with --order-precedence-generation, the partial ordering will be
791 completed using the selected method, otherwise the prover runs
792 with a non-ground-total ordering. The option without the
793 optional argument is equivalent to --precedence=.
794
795 --lpo-recursion-limit[=<arg>]
796
797 Set a depth limit for LPO comparisons. Most comparisons do not
798 need more than 10 or 20 levels of recursion. By default, recur‐
799 sion depth is limited to 1000 to avoid stack overflow problems.
800 If the limit is reached, the prover assumes that the terms are
801 uncomparable. Smaller values make the comparison attempts
802 faster, but less exact. Larger values have the opposite effect.
803 Values up to 20000 should be save on most operating systems. If
804 you run into segmentation faults while using LPO or LPO4, first
805 try to set this limit to a reasonable value. If the problem per‐
806 sists, send a bug report ;-) The option without the optional
807 argument is equivalent to --lpo-recursion-limit=100.
808
809 --restrict-literal-comparisons
810
811 Make all literals uncomparable in the term ordering (i.e. do not
812 use the term ordering to restrict paramodulation, equality reso‐
813 lution and factoring to certain literals. This is necessary to
814 make Set-of-Support-strategies complete for the non-equational
815 case (It still is incomplete for the equational case, but pretty
816 useless anyways).
817
818 --literal-comparison=<arg>
819
820 Modify how literal comparisons are done. 'None' is equivalent to
821 the previous option, 'Normal' uses the normal lifting of the
822 term ordering, 'TFOEqMax' uses the equivalent of a transfinite
823 ordering deciding on the predicate symbol and making equational
824 literals maximal, and 'TFOEqMin' modifies this by making equa‐
825 tional symbols minimal.
826
827 --sos-uses-input-types
828
829 If input is TPTP format, use TPTP conjectures for initializing
830 the Set of Support. If not in TPTP format, use E-LOP queries
831 (clauses of the form ?-l(X),...,m(Y)). Normally, all negative
832 clauses are used. Please note that most E heuristics do not use
833 this information at all, it is currently only useful for certain
834 parameter settings (including the SimulateSOS priority func‐
835 tion).
836
837 --destructive-er
838
839 Allow destructive equality resolution inferences on pure-vari‐
840 able literals of the form X!=Y, i.e. replace the original clause
841 with the result of an equality resolution inference on this lit‐
842 eral.
843
844 --strong-destructive-er
845
846 Allow destructive equality resolution inferences on literals of
847 the form X!=t (where X does not occur in t), i.e. replace the
848 original clause with the result of an equality resolution infer‐
849 ence on this literal. Unless I am brain-dead, this maintains
850 completeness, although the proof is rather tricky.
851
852 --destructive-er-aggressive
853
854 Apply destructive equality resolution to all newly generated
855 clauses, not just to selected clauses. Implies --destructive-er.
856
857 --forward-context-sr
858
859 Apply contextual simplify-reflect with processed clauses to the
860 given clause.
861
862 --forward-context-sr-aggressive
863
864 Apply contextual simplify-reflect with processed clauses to new
865 clauses. Implies --forward-context-sr.
866
867 --backward-context-sr
868
869 Apply contextual simplify-reflect with the given clause to pro‐
870 cessed clauses.
871
872 -g
873
874 --prefer-general-demodulators
875
876 Prefer general demodulators. By default, E prefers specialized
877 demodulators. This affects in which order the rewrite index is
878 traversed.
879
880 -F <arg>
881
882 --forward-demod-level=<arg>
883
884 Set the desired level for rewriting of unprocessed clauses. A
885 value of 0 means no rewriting, 1 indicates to use rules (ori‐
886 entable equations) only, 2 indicates full rewriting with rules
887 and instances of unorientable equations. Default behavior is 2.
888
889 --strong-rw-inst
890
891 Instantiate unbound variables in matching potential demodulators
892 with a small constant terms.
893
894 -u
895
896 --strong-forward-subsumption
897
898 Try multiple positions and unit-equations to try to equationally
899 subsume a single new clause. Default is to search for a single
900 position.
901
902 --satcheck-proc-interval[=<arg>]
903
904 Enable periodic SAT checking at the given interval of main loop
905 non-trivial processed clauses. The option without the optional
906 argument is equivalent to --satcheck-proc-interval=5000.
907
908 --satcheck-gen-interval[=<arg>]
909
910 Enable periodic SAT checking whenever the total proof state size
911 increases by the given limit. The option without the optional
912 argument is equivalent to --satcheck-gen-interval=10000.
913
914 --satcheck-ttinsert-interval[=<arg>]
915
916 Enable periodic SAT checking whenever the number of term tops
917 insertions matches the given limit (which grows exponentially).
918 The option without the optional argument is equivalent to
919 --satcheck-ttinsert-interval=5000000.
920
921 --satcheck[=<arg>]
922
923 Set the grounding strategy for periodic SAT checking. Note that
924 to enable SAT checking, it is also necessary to set the interval
925 with one of the previous two options. The option without the
926 optional argument is equivalent to --satcheck=FirstConst.
927
928 --satcheck-decision-limit[=<arg>]
929
930 Set the number of decisions allowed for each run of the SAT
931 solver. If the option is not given, the built-in value is 10000.
932 Use -1 to allow unlimited decision. The option without the
933 optional argument is equivalent to --satcheck-deci‐
934 sion-limit=100.
935
936 --satcheck-normalize-const
937
938 Use the current normal form (as recorded in the termbank rewrite
939 cache) of the selected constant as the term for the grounding
940 substitution.
941
942 --satcheck-normalize-unproc
943
944 Enable re-simplification (heuristic re-revaluation) of unpro‐
945 cessed clauses before grounding for SAT checking.
946
947 --watchlist[=<arg>]
948
949 Give the name for a file containing clauses to be watched for
950 during the saturation process. If a clause is generated that
951 subsumes a watchlist clause, the subsumed clause is removed from
952 the watchlist. The prover will terminate when the watchlist is
953 empty. If you want to use the watchlist for guiding the proof,
954 put the empty clause onto the list and use the built-in clause
955 selection heuristic 'UseWatchlist' (or build a heuristic your‐
956 self using the priority functions 'PreferWatchlist' and 'Defer‐
957 Watchlist'). Use the argument 'Use inline watchlist type' (or no
958 argument) and the special clause type 'watchlist' if you want to
959 put watchlist clauses into the normal input stream. This is only
960 supported for TPTP input formats. The option without the
961 optional argument is equivalent to --watchlist='Use inline
962 watchlist type'.
963
964 --static-watchlist[=<arg>]
965
966 This is identical to the previous option, but subsumed clauses
967 willnot be removed from the watchlist (and hence the prover will
968 not terminate if all watchlist clauses have been subsumed. This
969 may be more useful for heuristic guidance. The option without
970 the optional argument is equivalent to --static-watchlist='Use
971 inline watchlist type'.
972
973 --no-watchlist-simplification
974
975 By default, the watchlist is brought into normal form with
976 respect to the current processed clause set and certain simpli‐
977 fications. This option disables simplification for the watch‐
978 list.
979
980 --conventional-subsumption
981
982 Equivalent to --subsumption-indexing=None.
983
984 --subsumption-indexing=<arg>
985
986 Determine choice of indexing for (most) subsumption operations.
987 Choices are 'None' for naive subsumption, 'Direct' for direct
988 mapped FV-Indexing, 'Perm' for permuted FV-Indexing and 'Per‐
989 mOpt' for permuted FV-Indexing with deletion of (suspected)
990 non-informative features. Default behaviour is 'Perm'.
991
992 --fvindex-featuretypes=<arg>
993
994 Select the feature types used for indexing. Choices are "None"
995 to disable FV-indexing, "AC" for AC compatible features (the
996 default) (literal number and symbol counts), "SS" for set sub‐
997 sumption compatible features (symbol depth), and "All" for all
998 features.Unless you want to measure the effects of the different
999 features, I suggest you stick with the default.
1000
1001 --fvindex-maxfeatures[=<arg>]
1002
1003 Set the maximum initial number of symbols for feature computa‐
1004 tion. Depending on the feature selection, a value of X here
1005 will convert into 2X+2 features (for set subsumption features),
1006 2X+4 features (for AC-compatible features) or 4X+6 features (if
1007 all features are used, the default). Note that the actually used
1008 set of features may be smaller than this if the signature does
1009 not contain enough symbols.For the Perm and PermOpt version,
1010 this is _also_ used to set the maximum depth of the feature vec‐
1011 tor index. Yes, I should probably make this into two separate
1012 options. If you select a small value here, you should probably
1013 not use "Direct" for the --subsumption-indexing option. The
1014 option without the optional argument is equivalent to --fvin‐
1015 dex-maxfeatures=200.
1016
1017 --fvindex-slack[=<arg>]
1018
1019 Set the number of slots reserved in the index for function sym‐
1020 bols that may be introduced into the signature later, e.g. by
1021 splitting. If no new symbols are introduced, this just wastes
1022 time and memory. If PermOpt is chosen, the slackness slots will
1023 be deleted from the index anyways, but will still waste (a lit‐
1024 tle) time in computing feature vectors. The option without the
1025 optional argument is equivalent to --fvindex-slack=0.
1026
1027 --rw-bw-index[=<arg>]
1028
1029 Select fingerprint function for backwards rewrite index. "NoIn‐
1030 dex" will disable paramodulation indexing. For a list of the
1031 other values run 'eprover --pm-index=none'. FPX functions will
1032 use a fingerprint of X positions, the letters disambiguate
1033 between different fingerprints with the same sample size. The
1034 option without the optional argument is equivalent to
1035 --rw-bw-index=FP7.
1036
1037 --pm-from-index[=<arg>]
1038
1039 Select fingerprint function for the index for paramodulation
1040 from indexed clauses. "NoIndex" will disable paramodulation
1041 indexing. For a list of the other values run 'eprover
1042 --pm-index=none'. FPX functionswill use a fingerprint of X posi‐
1043 tions, the letters disambiguate between different fingerprints
1044 with the same sample size. The option without the optional argu‐
1045 ment is equivalent to --pm-from-index=FP7.
1046
1047 --pm-into-index[=<arg>]
1048
1049 Select fingerprint function for the index for paramodulation
1050 into the indexed clauses. "NoIndex" will disable paramodulation
1051 indexing. For a list of the other values run 'eprover
1052 --pm-index=none'. FPX functionswill use a fingerprint of X posi‐
1053 tions, the letters disambiguate between different fingerprints
1054 with the same sample size. The option without the optional argu‐
1055 ment is equivalent to --pm-into-index=FP7.
1056
1057 --fp-index[=<arg>]
1058
1059 Select fingerprint function for all fingerprint indices. See
1060 above. The option without the optional argument is equivalent to
1061 --fp-index=FP7.
1062
1063 --fp-no-size-constr
1064
1065 Disable usage of size constraints for matching with fingerprint
1066 indexing.
1067
1068 --pdt-no-size-constr
1069
1070 Disable usage of size constraints for matching with perfect dis‐
1071 crimination trees indexing.
1072
1073 --pdt-no-age-constr
1074
1075 Disable usage of age constraints for matching with perfect dis‐
1076 crimination trees indexing.
1077
1078 --detsort-rw
1079
1080 Sort set of clauses eliminated by backward rewriting using a
1081 total syntactic ordering.
1082
1083 --detsort-new
1084
1085 Sort set of newly generated and backward simplified clauses
1086 using a total syntactic ordering.
1087
1088 -D <arg>
1089
1090 --define-weight-function=<arg>
1091
1092 Define
1093 a weight function (see manual for details). Later definitions
1094
1095 override previous definitions.
1096
1097 -H <arg>
1098
1099 --define-heuristic=<arg>
1100
1101 Define a clause selection heuristic (see manual for details).
1102 Later definitions override previous definitions.
1103
1104 --free-numbers
1105
1106 Treat numbers (strings of decimal digits) as normal free func‐
1107 tion symbols in the input. By default, number now are supposed
1108 to denote domain constants and to be implicitly different from
1109 each other.
1110
1111 --free-objects
1112
1113 Treat object identifiers (strings in double quotes) as normal
1114 free function symbols in the input. By default, object identi‐
1115 fiers now represent domain objects and are implicitly different
1116 from each other (and from numbers, unless those are declared to
1117 be free).
1118
1119 --definitional-cnf[=<arg>]
1120
1121 Tune the clausification algorithm to introduces definitions for
1122 subformulae to avoid exponential blow-up. The optional argument
1123 is a fudge factor that determines when definitions are intro‐
1124 duced. 0 disables definitions completely. The default works
1125 well. The option without the optional argument is equivalent to
1126 --definitional-cnf=24.
1127
1128 --old-cnf[=<arg>]
1129
1130 As the previous option, but use the classical, well-tested
1131 clausification algorithm as opposed to the newewst one which
1132 avoides some algorithmic pitfalls and hence works better on some
1133 exotic formulae. The two may produce slightly different (but
1134 equisatisfiable) clause normal forms. The option without the
1135 optional argument is equivalent to --old-cnf=24.
1136
1137 --miniscope-limit[=<arg>]
1138
1139 Set the limit of sub-formula-size to miniscope. The build-inde‐
1140 fault is 256. Only applies to the new (default) clausification
1141 algorithm The option without the optional argument is equivalent
1142 to --miniscope-limit=2147483648.
1143
1144 --print-types
1145
1146 Print the type of every term. Useful for debugging purposes.
1147
1148 --app-encode
1149
1150 Encodes terms in the proof state using applicative encoding,
1151 prints encoded input problem and exits.
1152
1154 Report bugs to <schulz@eprover.org>. Please include the following, if
1155 possible:
1156
1157 * The version of the package as reported by eprover --version.
1158
1159 * The operating system and version.
1160
1161 * The exact command line that leads to the unexpected behaviour.
1162
1163 * A description of what you expected and what actually happend.
1164
1165 * If possible all input files necessary to reproduce the bug.
1166
1168 Copyright 1998-2019 by Stephan Schulz, schulz@eprover.org, and the E
1169 contributors (see DOC/CONTRIBUTORS).
1170
1171 This program is a part of the distribution of the equational theorem
1172 prover E. You can find the latest version of the E distribution as well
1173 as additional information at http://www.eprover.org
1174
1175 This program is free software; you can redistribute it and/or modify it
1176 under the terms of the GNU General Public License as published by the
1177 Free Software Foundation; either version 2 of the License, or (at your
1178 option) any later version.
1179
1180 This program is distributed in the hope that it will be useful, but
1181 WITHOUT ANY WARRANTY; without even the implied warranty of MER‐
1182 CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
1183 Public License for more details.
1184
1185 You should have received a copy of the GNU General Public License along
1186 with this program (it should be contained in the top level directory of
1187 the distribution in the file COPYING); if not, write to the Free Soft‐
1188 ware Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
1189 02111-1307 USA
1190
1191 The original copyright holder can be contacted via email or as
1192
1193 Stephan Schulz DHBW Stuttgart Fakultaet Technik Informatik Rote‐
1194 buehlplatz 41 70178 Stuttgart Germany
1195
1196
1197
1198E 2.4-DEBUG Sandakphu (1fa8840d748Jfa8n7u8a1r0y072608200abbfdab27e96fa5648) E(1)