1CADICAL(1)                       User Commands                      CADICAL(1)
2
3
4

NAME

6       cadical - manual page for cadical 1.7.3
7

DESCRIPTION

9       usage: cadical [ <option> ... ] [ <input> [ <proof> ] ]
10
11       where '<option>' is one of the following common options:
12
13       -h     print alternatively only a list of common options
14
15       --help print this complete list of all options
16
17       --version
18              print version
19
20       -n     do not print witness (same as '--no-witness')
21
22       -v     increase verbosity (see also '--verbose' below)
23
24       -q     be quiet (same as '--quiet')
25
26       -t <sec>
27              set wall clock time limit
28
29       Or '<option>' is one of the less common options
30
31       -L<rounds>
32              run local search initially (default '0' rounds)
33
34       -O<level>
35              increase limits by '2^<level>' or '10^<level>'
36
37       -P<rounds>
38              initial preprocessing (default '0' rounds)
39
40       Note  there is no separating space for the options above while the fol‐
41       lowing options require a space after the option name:
42
43       -c <limit>
44              limit the number of conflicts (default unlimited)
45
46       -d <limit>
47              limit the number of decisions (default unlimited)
48
49       -o <output>
50              write simplified CNF in DIMACS format to file
51
52       -e <extend>
53              write reconstruction/extension stack to file
54
55       --force | -f
56              parsing broken DIMACS header and writing proofs
57
58       --strict
59              strict parsing (no white space in header)
60
61       -r <sol>
62              read solution in competition output format to check  consistency
63              of learned clauses during testing and debugging
64
65       -w <sol>
66              write  result including a potential witness solution in competi‐
67              tion format to the given file
68
69       --colors
70              force colored output
71
72       --no-colors
73              disable colored output to terminal
74
75       --no-witness
76              do not print witness (see also '-n' above)
77
78       --build
79              print build configuration
80
81       --copyright
82              print copyright information
83
84       There are pre-defined configurations of advanced internal options:
85
86       --default
87              set default advanced internal options
88
89       --plain
90              disable all internal preprocessing options
91
92       --sat  set internal options to target satisfiable instances
93
94       --unsat
95              set internal options to target unsatisfiable instances
96
97       Or '<option>' is one of the following advanced internal options:
98
99       --arena=bool
100              allocate clauses in arena [true]
101
102       --arenacompact=bool
103              keep clauses compact [true]
104
105       --arenasort=bool
106              sort clauses in arena [true]
107
108       --arenatype=1..3
109              1=clause, 2=var, 3=queue [3]
110
111       --binary=bool
112              use binary proof format [true]
113
114       --block=bool
115              blocked clause elimination [false]
116
117       --blockmaxclslim=1..2e9
118              maximum clause size [1e5]
119
120       --blockminclslim=2..2e9
121              minimum clause size [2]
122
123       --blockocclim=1..2e9
124              occurrence limit [1e2]
125
126       --bump=bool
127              bump variables [true]
128
129       --bumpreason=bool
130              bump reason literals too [true]
131
132       --bumpreasondepth=1..3
133              bump reason depth [1]
134
135       --check=bool
136              enable internal checking [false]
137
138       --checkassumptions=bool
139              check assumptions satisfied [true]
140
141       --checkconstraint=bool
142              check constraint satisfied [true]
143
144       --checkfailed=bool
145              check failed literals form core [true]
146
147       --checkfrozen=bool
148              check all frozen semantics [false]
149
150       --checkproof=bool
151              check proof internally [true]
152
153       --checkprooflrat=bool
154              use internal LRAT proof checker [true]
155
156       --checkwitness=bool
157              check witness internally [true]
158
159       --chrono=0..2
160              chronological backtracking [1]
161
162       --chronoalways=bool
163              force always chronological [false]
164
165       --chronolevelim=0..2e9
166              chronological level limit [1e2]
167
168       --chronoreusetrail=bool
169              reuse trail chronologically [true]
170
171       --compact=bool
172              compact internal variables [true]
173
174       --compactint=1..2e9
175              compacting interval [2e3]
176
177       --compactlim=0..1e3
178              inactive limit per mille [1e2]
179
180       --compactmin=1..2e9
181              minimum inactive limit [1e2]
182
183       --condition=bool
184              globally blocked clause elim [false]
185
186       --conditionint=1..2e9
187              initial conflict interval [1e4]
188
189       --conditionmaxeff=0..2e9
190              maximum condition efficiency [1e7]
191
192       --conditionmaxrat=1..2e9
193              maximum clause variable ratio [100]
194
195       --conditionmineff=0..2e9
196              minimum condition efficiency [1e6]
197
198       --conditionreleff=1..1e5
199              relative efficiency per mille [100]
200
201       --cover=bool
202              covered clause elimination [false]
203
204       --covermaxclslim=1..2e9
205              maximum clause size [1e5]
206
207       --covermaxeff=0..2e9
208              maximum cover efficiency [1e8]
209
210       --coverminclslim=2..2e9
211              minimum clause size [2]
212
213       --covermineff=0..2e9
214              minimum cover efficiency [1e6]
215
216       --coverreleff=1..1e5
217              relative efficiency per mille [4]
218
219       --decompose=bool
220              decompose BIG in SCCs and ELS [true]
221
222       --decomposerounds=1..16
223              number of decompose rounds [2]
224
225       --deduplicate=bool
226              remove duplicated binaries [true]
227
228       --eagersubsume=bool
229              subsume recently learned [true]
230
231       --eagersubsumelim=1..1e3
232              limit on subsumed candidates [20]
233
234       --elim=bool
235              bounded variable elimination [true]
236
237       --elimands=bool
238              find AND gates [true]
239
240       --elimaxeff=0..2e9
241              maximum elimination efficiency [2e9]
242
243       --elimbackward=bool
244              eager backward subsumption [true]
245
246       --elimboundmax=-1..2e6
247              maximum elimination bound [16]
248
249       --elimboundmin=-1..2e6
250              minimum elimination bound [0]
251
252       --elimclslim=2..2e9
253              resolvent size limit [1e2]
254
255       --elimequivs=bool
256              find equivalence gates [true]
257
258       --elimineff=0..2e9
259              minimum elimination efficiency [1e7]
260
261       --elimint=1..2e9
262              elimination interval [2e3]
263
264       --elimites=bool
265              find if-then-else gates [true]
266
267       --elimlimited=bool
268              limit resolutions [true]
269
270       --elimocclim=0..2e9
271              occurrence limit [1e2]
272
273       --elimprod=0..1e4
274              elim score product weight [1]
275
276       --elimreleff=1..1e5
277              relative efficiency per mille [1e3]
278
279       --elimrounds=1..512
280              usual number of rounds [2]
281
282       --elimsubst=bool
283              elimination by substitution [true]
284
285       --elimsum=0..1e4
286              elimination score sum weight [1]
287
288       --elimxorlim=2..27
289              maximum XOR size [5]
290
291       --elimxors=bool
292              find XOR gates [true]
293
294       --emagluefast=1..2e9
295              window fast glue [33]
296
297       --emaglueslow=1..2e9
298              window slow glue [1e5]
299
300       --emajump=1..2e9
301              window back-jump level [1e5]
302
303       --emalevel=1..2e9
304              window back-track level [1e5]
305
306       --emasize=1..2e9
307              window learned clause size [1e5]
308
309       --ematrailfast=1..2e9
310              window fast trail [1e2]
311
312       --ematrailslow=1..2e9
313              window slow trail [1e5]
314
315       --flush=bool
316              flush redundant clauses [false]
317
318       --flushfactor=1..1e3
319              interval increase [3]
320
321       --flushint=1..2e9
322              initial limit [1e5]
323
324       --forcephase=bool
325              always use initial phase [false]
326
327       --inprocessing=bool
328              enable inprocessing [true]
329
330       --instantiate=bool
331              variable instantiation [false]
332
333       --instantiateclslim=2..2e9 minimum clause size [3]
334
335       --instantiateocclim=1..2e9 maximum occurrence limit [1]
336
337       --instantiateonce=bool
338              instantiate each clause once [true]
339
340       --lrat=bool
341              use lrat proof format [false]
342
343       --lratexternal=bool
344              external lrat [false]
345
346       --lratfrat=bool
347              use frat proof format [false]
348
349       --lratveripb=bool
350              veriPB proofs. needs lrat=1 [false]
351
352       --lucky=bool
353              search for lucky phases [true]
354
355       --minimize=bool
356              minimize learned clauses [true]
357
358       --minimizedepth=0..1e3
359              minimization depth [1e3]
360
361       --otfs=bool
362              on-the-fly self subsumption [true]
363
364       --phase=bool
365              initial phase [true]
366
367       --probe=bool
368              failed literal probing [true]
369
370       --probehbr=bool
371              learn hyper binary clauses [true]
372
373       --probeint=1..2e9
374              probing interval [5e3]
375
376       --probemaxeff=0..2e9
377              maximum probing efficiency [1e8]
378
379       --probemineff=0..2e9
380              minimum probing efficiency [1e6]
381
382       --probereleff=1..1e5
383              relative efficiency per mille [20]
384
385       --proberounds=1..16
386              probing rounds [1]
387
388       --profile=0..4
389              profiling level [2]
390
391       --quiet=bool
392              disable all messages [false]
393
394       --radixsortlim=0..2e9
395              radix sort limit [800]
396
397       --realtime=bool
398              real instead of process time [false]
399
400       --reduce=bool
401              reduce useless clauses [true]
402
403       --reduceint=10..1e6
404              reduce interval [300]
405
406       --reducetarget=10..1e2
407              reduce fraction in percent [75]
408
409       --reducetier1glue=1..2e9
410              glue of kept learned clauses [2]
411
412       --reducetier2glue=1..2e9
413              glue of tier two clauses [6]
414
415       --reluctant=0..2e9
416              reluctant doubling period [1024]
417
418       --reluctantmax=0..2e9
419              reluctant doubling period [1048576]
420
421       --rephase=bool
422              enable resetting phase [true]
423
424       --rephaseint=1..2e9
425              rephase interval [1e3]
426
427       --report=bool
428              enable reporting [false]
429
430       --reportall=bool
431              report even if not successful [false]
432
433       --reportsolve=bool
434              use solving not process time [false]
435
436       --restart=bool
437              enable restarts [true]
438
439       --restartint=1..2e9
440              restart interval [2]
441
442       --restartmargin=0..1e2
443              slow fast margin in percent [10]
444
445       --restartreusetrail=bool
446              enable trail reuse [true]
447
448       --restoreall=0..2
449              restore all clauses (2=really) [0]
450
451       --restoreflush=bool
452              remove satisfied clauses [false]
453
454       --reverse=bool
455              reverse variable ordering [false]
456
457       --score=bool
458              use EVSIDS scores [true]
459
460       --scorefactor=500..1e3
461              score factor per mille [950]
462
463       --seed=0..2e9
464              random seed [0]
465
466       --shrink=0..3
467              shrink conflict clause [3]
468
469       --shrinkreap=bool
470              use a reap for shrinking [true]
471
472       --shuffle=bool
473              shuffle variables [false]
474
475       --shufflequeue=bool
476              shuffle variable queue [true]
477
478       --shufflerandom=bool
479              not reverse but random [false]
480
481       --shufflescores=bool
482              shuffle variable scores [true]
483
484       --stabilize=bool
485              enable stabilizing phases [true]
486
487       --stabilizefactor=101..2e9 phase increase in percent [200]
488
489       --stabilizeint=1..2e9
490              stabilizing interval [1e3]
491
492       --stabilizemaxint=1..2e9
493              maximum stabilizing phase [2e9]
494
495       --stabilizeonly=bool
496              only stabilizing phases [false]
497
498       --stats=bool
499              print all statistics at the end of the run [true]
500
501       --subsume=bool
502              enable clause subsumption [true]
503
504       --subsumebinlim=0..2e9
505              watch list length limit [1e4]
506
507       --subsumeclslim=0..2e9
508              clause length limit [1e2]
509
510       --subsumeint=1..2e9
511              subsume interval [1e4]
512
513       --subsumelimited=bool
514              limit subsumption checks [true]
515
516       --subsumemaxeff=0..2e9
517              maximum subsuming efficiency [1e8]
518
519       --subsumemineff=0..2e9
520              minimum subsuming efficiency [1e6]
521
522       --subsumeocclim=0..2e9
523              watch list length limit [1e2]
524
525       --subsumereleff=1..1e5
526              relative efficiency per mille [1e3]
527
528       --subsumestr=bool
529              strengthen during subsume [true]
530
531       --target=0..2
532              target phases (1=stable only) [1]
533
534       --terminateint=0..1e4
535              termination check interval [10]
536
537       --ternary=bool
538              hyper ternary resolution [true]
539
540       --ternarymaxadd=0..1e4
541              max clauses added in percent [1e3]
542
543       --ternarymaxeff=0..2e9
544              ternary maximum efficiency [1e8]
545
546       --ternarymineff=1..2e9
547              minimum ternary efficiency [1e6]
548
549       --ternaryocclim=1..2e9
550              ternary occurrence limit [1e2]
551
552       --ternaryreleff=1..1e5
553              relative efficiency per mille [10]
554
555       --ternaryrounds=1..16
556              maximum ternary rounds [2]
557
558       --transred=bool
559              transitive reduction of BIG [true]
560
561       --transredmaxeff=0..2e9
562              maximum efficiency [1e8]
563
564       --transredmineff=0..2e9
565              minimum efficiency [1e6]
566
567       --transredreleff=1..1e5
568              relative efficiency per mille [1e2]
569
570       --verbose=0..3
571              more verbose messages [0]
572
573       --vivify=bool
574              vivification [true]
575
576       --vivifyinst=bool
577              instantiate last literal when vivify [true]
578
579       --vivifymaxeff=0..2e9
580              maximum efficiency [2e7]
581
582       --vivifymineff=0..2e9
583              minimum efficiency [2e4]
584
585       --vivifyonce=0..2
586              vivify once: 1=red, 2=red+irr [0]
587
588       --vivifyredeff=0..1e3
589              redundant efficiency per mille [75]
590
591       --vivifyreleff=1..1e5
592              relative efficiency per mille [20]
593
594       --walk=bool
595              enable random walks [true]
596
597       --walkmaxeff=0..2e9
598              maximum efficiency [1e7]
599
600       --walkmineff=0..1e7
601              minimum efficiency [1e5]
602
603       --walknonstable=bool
604              walk in non-stabilizing phase [true]
605
606       --walkredundant=bool
607              walk redundant clauses too [false]
608
609       --walkreleff=1..1e5
610              relative efficiency per mille [20]
611
612       The internal options have their default value printed in brackets after
613       their  description.  They can also be used in the form '--<name>' which
614       is equivalent to '--<name>=1' and in the form  '--no-<name>'  which  is
615       equivalent  to  '--<name>=0'.   One can also use 'true' instead of '1',
616       'false' instead of '0', as well as numbers with positive exponent  such
617       as '1e3' instead of '1000'.
618
619       Alternatively  option values can also be specified in the header of the
620       DIMACS file, e.g., 'c --elim=false', or through environment  variables,
621       such  as 'CADICAL_ELIM=false'.  The embedded options in the DIMACS file
622       have highest priority, followed by command line options and then values
623       specified through environment variables.
624
625       The  input  is read from '<input>' assumed to be in DIMACS format.  In‐
626       cremental 'p inccnf' files are supported too with cubes at the end.  If
627       '<proof>' is given then a DRAT proof is written to that file.
628
629       If  '<input>'  is missing then the solver reads from '<stdin>', also if
630       '-' is used as input path name '<input>'.  Similarly,
631
632       For incremental files each cube is solved in turn. The solver stops  at
633       the first satisfied cube if there is one and uses that one for the wit‐
634       ness to print.  Conflict and decision limits are applied to each  indi‐
635       vidual cube solving call while '-P', '-L' and '-t' remain global.  Only
636       if all cubes were unsatisfiable the solver prints the standard unsatis‐
637       fiable solution line ('s UNSATISFIABLE').
638
639       By default the proof is stored in the binary DRAT format unless the op‐
640       tion '--no-binary' is specified or the proof is written to   '<stdout>'
641       and '<stdout>' is connected to a terminal.
642
643       The input is assumed to be compressed if it is given explicitly and has
644       a '.gz', '.bz2', '.xz' or '.7z' suffix.  The same applies to the output
645       file.   In order to use compression and decompression the corresponding
646       utilities 'gzip', 'bzip', 'xz', and '7z' (depending on the format)  are
647       required  and  need  to  be installed on the system.  The solver checks
648       file type signatures though and falls back to non-compressed file read‐
649       ing if the signature does not match.
650
651
652
653cadical 1.7.3                   September 2023                      CADICAL(1)
Impressum