Added support for converting unsorted problems to multi-sorted problems via sort...
[cvc5.git] / src / smt / options
1 #
2 # Option specification file for CVC4
3 # See src/options/base_options for a description of this file format
4 #
5
6 module SMT "smt/options.h" SMT layer
7
8 common-option - --dump=MODE argument :handler CVC4::smt::dumpMode :handler-include "smt/options_handlers.h"
9 dump preprocessed assertions, etc., see --dump=help
10 common-option - --dump-to=FILE argument :handler CVC4::smt::dumpToFile :handler-include "smt/options_handlers.h"
11 all dumping goes to FILE (instead of stdout)
12
13 option simplificationMode simplification-mode --simplification=MODE SimplificationMode :handler CVC4::smt::stringToSimplificationMode :default SIMPLIFICATION_MODE_BATCH :read-write :include "smt/simplification_mode.h" :handler-include "smt/options_handlers.h"
14 choose simplification mode, see --simplification=help
15 alias --no-simplification = --simplification=none
16 turn off all simplification (same as --simplification=none)
17
18 option doStaticLearning static-learning --static-learning bool :default true
19 use static learning (on by default)
20
21 option expandDefinitions expand-definitions bool :default false
22 always expand symbol definitions in output
23 common-option produceModels produce-models -m --produce-models bool :default false :predicate CVC4::smt::beforeSearch :predicate-include "smt/smt_engine.h"
24 support the get-value and get-model commands
25 option checkModels check-models --check-models bool :predicate CVC4::smt::beforeSearch :predicate-include "smt/options_handlers.h"
26 after SAT/INVALID/UNKNOWN, check that the generated model satisfies user assertions
27 option dumpModels --dump-models bool :default false
28 output models after every SAT/INVALID/UNKNOWN response
29 option proof produce-proofs --proof bool :default false :predicate CVC4::smt::proofEnabledBuild CVC4::smt::beforeSearch :predicate-include "smt/options_handlers.h"
30 turn on proof generation
31 # this is just a placeholder for later; it doesn't show up in command-line options listings
32 undocumented-option unsatCores produce-unsat-cores --produce-unsat-cores bool :predicate CVC4::smt::unsatCoresEnabledBuild CVC4::smt::beforeSearch :predicate-include "smt/options_handlers.h"
33 turn on unsat core generation (NOT YET SUPPORTED)
34 option produceAssignments produce-assignments --produce-assignments bool :default false :predicate CVC4::smt::beforeSearch :predicate-include "smt/options_handlers.h"
35 support the get-assignment command
36
37 # This could go in src/main/options, but by SMT-LIBv2 spec, "interactive"
38 # is a mode in which the assertion list must be kept. So it belongs here.
39 common-option interactive interactive-mode --interactive bool :read-write
40 force interactive mode
41
42 option doITESimp --ite-simp bool :read-write
43 turn on ite simplification (Kim (and Somenzi) et al., SAT 2009)
44
45 option unconstrainedSimp --unconstrained-simp bool :default false :read-write
46 turn on unconstrained simplification (see Bruttomesso/Brummayer PhD thesis)
47
48 option repeatSimp --repeat-simp bool :read-write
49 make multiple passes with nonclausal simplifier
50
51 option sortInference --sort-inference bool :read-write :default false
52 calculate sort inference of input problem, convert the input based on monotonic sorts
53
54 common-option incrementalSolving incremental -i --incremental bool
55 enable incremental solving
56
57 option abstractValues abstract-values --abstract-values bool :default false
58 in models, output arrays (and in future, maybe others) using abstract values, as required by the SMT-LIB standard
59 option modelUninterpDtEnum --model-u-dt-enum bool :default false
60 in models, output uninterpreted sorts as datatype enumerations
61
62 option - regular-output-channel argument :handler CVC4::smt::setRegularOutputChannel :handler-include "smt/options_handlers.h"
63 set the regular output channel of the solver
64 option - diagnostic-output-channel argument :handler CVC4::smt::setDiagnosticOutputChannel :handler-include "smt/options_handlers.h"
65 set the diagnostic output channel of the solver
66
67 common-option cumulativeMillisecondLimit tlimit --tlimit=MS "unsigned long"
68 enable time limiting (give milliseconds)
69 common-option perCallMillisecondLimit tlimit-per --tlimit-per=MS "unsigned long"
70 enable time limiting per query (give milliseconds)
71 common-option cumulativeResourceLimit rlimit --rlimit=N "unsigned long"
72 enable resource limiting (currently, roughly the number of SAT conflicts)
73 common-option perCallResourceLimit rlimit-per --rlimit-per=N "unsigned long"
74 enable resource limiting per query
75
76 # --replay is currently broken; don't document it for 1.0
77 undocumented-option replayFilename --replay=FILE std::string :handler CVC4::smt::checkReplayFilename :handler-include "smt/options_handlers.h"
78 replay decisions from file
79 undocumented-option replayLog --replay-log=FILE std::ostream* :handler CVC4::smt::checkReplayLogFilename :handler-include "smt/options_handlers.h"
80 log decisions and propagations to file
81 option replayStream ExprStream*
82
83 # portfolio options
84 option lemmaInputChannel LemmaInputChannel* :default NULL :include "util/lemma_input_channel.h"
85 The input channel to receive notfication events for new lemmas
86 option lemmaOutputChannel LemmaOutputChannel* :default NULL :include "util/lemma_output_channel.h"
87 The output channel to receive notfication events for new lemmas
88
89 endmodule