#include <cadical.hpp>
Classes | |
| struct | CubesWithStatus |
Public Member Functions | |
| Solver () | |
| ~Solver () | |
| void | add (int lit) |
| void | clause (int) |
| void | clause (int, int) |
| void | clause (int, int, int) |
| void | clause (int, int, int, int) |
| void | clause (int, int, int, int, int) |
| void | clause (const std::vector< int > &) |
| void | clause (const int *, size_t) |
| bool | inconsistent () |
| void | assume (int lit) |
| int | solve () |
| int | val (int lit) |
| bool | flip (int lit) |
| bool | flippable (int lit) |
| bool | failed (int lit) |
| void | connect_terminator (Terminator *terminator) |
| void | disconnect_terminator () |
| void | connect_learner (Learner *learner) |
| void | disconnect_learner () |
| void | connect_fixed_listener (FixedAssignmentListener *fixed_listener) |
| void | disconnect_fixed_listener () |
| void | connect_external_propagator (ExternalPropagator *propagator) |
| void | disconnect_external_propagator () |
| void | add_observed_var (int var) |
| void | remove_observed_var (int var) |
| void | reset_observed_vars () |
| bool | is_decision (int lit) |
| void | force_backtrack (size_t new_level) |
| void | constrain (int lit) |
| bool | constraint_failed () |
| int | propagate () |
| void | implied (std::vector< int > &implicants) |
| int | lookahead (void) |
| CubesWithStatus | generate_cubes (int, int min_depth=0) |
| void | reset_assumptions () |
| void | reset_constraint () |
| const State & | state () const |
| int | status () const |
| void | copy (Solver &other) const |
| int | vars () |
| void | reserve (int min_max_var) |
| int | reserve_difference (int number_of_vars) |
| int | get (const char *name) |
| void | prefix (const char *verbose_message_prefix) |
| bool | set (const char *name, int val) |
| bool | set_long_option (const char *arg) |
| bool | configure (const char *) |
| void | optimize (int val) |
| bool | limit (const char *arg, int val) |
| bool | is_valid_limit (const char *arg) |
| int | active () const |
| int64_t | redundant () const |
| int64_t | irredundant () const |
| int | simplify (int rounds=3) |
| void | terminate () |
| bool | frozen (int lit) const |
| void | freeze (int lit) |
| void | melt (int lit) |
| int | fixed (int lit) const |
| void | phase (int lit) |
| void | unphase (int lit) |
| bool | trace_proof (FILE *file, const char *name) |
| bool | trace_proof (const char *path) |
| void | flush_proof_trace (bool print=false) |
| void | close_proof_trace (bool print=false) |
| void | connect_proof_tracer (Tracer *tracer, bool antecedents, bool finalize_clauses=false) |
| void | connect_proof_tracer (InternalTracer *tracer, bool antecedents, bool finalize_clauses=false) |
| void | connect_proof_tracer (StatTracer *tracer, bool antecedents, bool finalize_clauses=false) |
| void | connect_proof_tracer (FileTracer *tracer, bool antecedents, bool finalize_clauses=false) |
| void | conclude () |
| bool | disconnect_proof_tracer (Tracer *tracer) |
| bool | disconnect_proof_tracer (StatTracer *tracer) |
| bool | disconnect_proof_tracer (FileTracer *tracer) |
| void | statistics () |
| void | resources () |
| void | options () |
| bool | traverse_clauses (ClauseIterator &) const |
| bool | traverse_witnesses_backward (WitnessIterator &) const |
| bool | traverse_witnesses_forward (WitnessIterator &) const |
| const char * | read_dimacs (FILE *file, const char *name, int &vars, int strict=1) |
| const char * | read_dimacs (const char *path, int &vars, int strict=1) |
| const char * | read_dimacs (FILE *file, const char *name, int &vars, int strict, bool &incremental, std::vector< int > &cubes) |
| const char * | read_dimacs (const char *path, int &vars, int strict, bool &incremental, std::vector< int > &cubes) |
| const char * | write_dimacs (const char *path, int min_max_var=0) |
| const char * | write_extension (const char *path) |
Static Public Member Functions | |
| static const char * | signature () |
| static const char * | version () |
| static bool | is_valid_option (const char *name) |
| static bool | is_preprocessing_option (const char *name) |
| static bool | is_valid_long_option (const char *arg) |
| static bool | is_valid_configuration (const char *) |
| static void | usage () |
| static void | configurations () |
| static void | build (FILE *file, const char *prefix="c ") |
Friends | |
| class | Testing |
| class | App |
| class | Mobical |
| class | Parser |
| struct | DumpCall |
| struct | LemmaCall |
| struct | ObserveCall |
| struct | DisconnectCall |
| class | MockPropagator |
Definition at line 230 of file cadical.hpp.
| CaDiCaL::Solver::Solver | ( | ) |
Definition at line 326 of file cadical_solver.cpp.


| CaDiCaL::Solver::~Solver | ( | ) |
Definition at line 386 of file cadical_solver.cpp.

| int CaDiCaL::Solver::active | ( | ) | const |
Definition at line 1069 of file cadical_solver.cpp.
| void CaDiCaL::Solver::add | ( | int | lit | ) |
Definition at line 577 of file cadical_solver.cpp.

| void CaDiCaL::Solver::add_observed_var | ( | int | var | ) |
Definition at line 1044 of file cadical_solver.cpp.
| void CaDiCaL::Solver::assume | ( | int | lit | ) |
Definition at line 664 of file cadical_solver.cpp.
|
static |
Definition at line 1266 of file cadical_solver.cpp.

| void CaDiCaL::Solver::clause | ( | const int * | lits, |
| size_t | size ) |
Definition at line 627 of file cadical_solver.cpp.

| void CaDiCaL::Solver::clause | ( | const std::vector< int > & | lits | ) |
Definition at line 639 of file cadical_solver.cpp.

| void CaDiCaL::Solver::clause | ( | int | a | ) |
| void CaDiCaL::Solver::clause | ( | int | a, |
| int | b ) |
| void CaDiCaL::Solver::clause | ( | int | a, |
| int | b, | ||
| int | c ) |
Definition at line 603 of file cadical_solver.cpp.

| void CaDiCaL::Solver::clause | ( | int | a, |
| int | b, | ||
| int | c, | ||
| int | d ) |
Definition at line 610 of file cadical_solver.cpp.

| void CaDiCaL::Solver::clause | ( | int | a, |
| int | b, | ||
| int | c, | ||
| int | d, | ||
| int | e ) |
Definition at line 618 of file cadical_solver.cpp.

Definition at line 1162 of file cadical_solver.cpp.
| void CaDiCaL::Solver::conclude | ( | ) |
Definition at line 1247 of file cadical_solver.cpp.

|
static |
Definition at line 1342 of file cadical_solver.cpp.

Definition at line 563 of file cadical_solver.cpp.

| void CaDiCaL::Solver::connect_external_propagator | ( | ExternalPropagator * | propagator | ) |
Definition at line 1004 of file cadical_solver.cpp.

| void CaDiCaL::Solver::connect_fixed_listener | ( | FixedAssignmentListener * | fixed_listener | ) |
Definition at line 965 of file cadical_solver.cpp.

| void CaDiCaL::Solver::connect_learner | ( | Learner * | learner | ) |
Definition at line 936 of file cadical_solver.cpp.

| void CaDiCaL::Solver::connect_proof_tracer | ( | FileTracer * | tracer, |
| bool | antecedents, | ||
| bool | finalize_clauses = false ) |
Definition at line 1207 of file cadical_solver.cpp.

| void CaDiCaL::Solver::connect_proof_tracer | ( | InternalTracer * | tracer, |
| bool | antecedents, | ||
| bool | finalize_clauses = false ) |
Definition at line 1185 of file cadical_solver.cpp.

| void CaDiCaL::Solver::connect_proof_tracer | ( | StatTracer * | tracer, |
| bool | antecedents, | ||
| bool | finalize_clauses = false ) |
Definition at line 1196 of file cadical_solver.cpp.

| void CaDiCaL::Solver::connect_proof_tracer | ( | Tracer * | tracer, |
| bool | antecedents, | ||
| bool | finalize_clauses = false ) |
Definition at line 1174 of file cadical_solver.cpp.

| void CaDiCaL::Solver::connect_terminator | ( | Terminator * | terminator | ) |
Definition at line 907 of file cadical_solver.cpp.

| void CaDiCaL::Solver::constrain | ( | int | lit | ) |
Definition at line 649 of file cadical_solver.cpp.
| bool CaDiCaL::Solver::constraint_failed | ( | ) |
Definition at line 862 of file cadical_solver.cpp.

| void CaDiCaL::Solver::copy | ( | Solver & | other | ) | const |
Definition at line 1691 of file cadical_solver.cpp.

| void CaDiCaL::Solver::disconnect_external_propagator | ( | ) |
Definition at line 1024 of file cadical_solver.cpp.

| void CaDiCaL::Solver::disconnect_fixed_listener | ( | ) |
Definition at line 988 of file cadical_solver.cpp.

| void CaDiCaL::Solver::disconnect_learner | ( | ) |
Definition at line 950 of file cadical_solver.cpp.

| bool CaDiCaL::Solver::disconnect_proof_tracer | ( | FileTracer * | tracer | ) |
Definition at line 1236 of file cadical_solver.cpp.
| bool CaDiCaL::Solver::disconnect_proof_tracer | ( | StatTracer * | tracer | ) |
Definition at line 1227 of file cadical_solver.cpp.
Definition at line 1218 of file cadical_solver.cpp.
| void CaDiCaL::Solver::disconnect_terminator | ( | ) |
Definition at line 921 of file cadical_solver.cpp.

| bool CaDiCaL::Solver::failed | ( | int | lit | ) |
Definition at line 850 of file cadical_solver.cpp.

| int CaDiCaL::Solver::fixed | ( | int | lit | ) | const |
Definition at line 873 of file cadical_solver.cpp.
| bool CaDiCaL::Solver::flip | ( | int | lit | ) |
Definition at line 824 of file cadical_solver.cpp.

| bool CaDiCaL::Solver::flippable | ( | int | lit | ) |
Definition at line 837 of file cadical_solver.cpp.

Definition at line 1152 of file cadical_solver.cpp.

| void CaDiCaL::Solver::force_backtrack | ( | size_t | new_level | ) |
Definition at line 1494 of file cadical_solver.cpp.
| void CaDiCaL::Solver::freeze | ( | int | lit | ) |
Definition at line 1095 of file cadical_solver.cpp.
| bool CaDiCaL::Solver::frozen | ( | int | lit | ) | const |
Definition at line 1113 of file cadical_solver.cpp.
| Solver::CubesWithStatus CaDiCaL::Solver::generate_cubes | ( | int | depth, |
| int | min_depth = 0 ) |
Definition at line 681 of file cadical_solver.cpp.
| int CaDiCaL::Solver::get | ( | const char * | name | ) |
Definition at line 493 of file cadical_solver.cpp.
| void CaDiCaL::Solver::implied | ( | std::vector< int > & | implicants | ) |
Definition at line 730 of file cadical_solver.cpp.

| bool CaDiCaL::Solver::inconsistent | ( | ) |
Definition at line 647 of file cadical_solver.cpp.
| int64_t CaDiCaL::Solver::irredundant | ( | ) | const |
Definition at line 1085 of file cadical_solver.cpp.
| bool CaDiCaL::Solver::is_decision | ( | int | lit | ) |
Definition at line 1485 of file cadical_solver.cpp.
Definition at line 483 of file cadical_solver.cpp.

Definition at line 559 of file cadical_solver.cpp.

Definition at line 548 of file cadical_solver.cpp.

Definition at line 487 of file cadical_solver.cpp.

Definition at line 479 of file cadical_solver.cpp.

Definition at line 540 of file cadical_solver.cpp.

| int CaDiCaL::Solver::lookahead | ( | void | ) |
Definition at line 673 of file cadical_solver.cpp.
| void CaDiCaL::Solver::melt | ( | int | lit | ) |
Definition at line 1103 of file cadical_solver.cpp.
| void CaDiCaL::Solver::optimize | ( | int | val | ) |
Definition at line 533 of file cadical_solver.cpp.
| void CaDiCaL::Solver::options | ( | ) |
Definition at line 1335 of file cadical_solver.cpp.
| void CaDiCaL::Solver::phase | ( | int | lit | ) |
Definition at line 882 of file cadical_solver.cpp.
| void CaDiCaL::Solver::prefix | ( | const char * | verbose_message_prefix | ) |
Definition at line 552 of file cadical_solver.cpp.

| int CaDiCaL::Solver::propagate | ( | ) |
Definition at line 713 of file cadical_solver.cpp.

| const char * CaDiCaL::Solver::read_dimacs | ( | const char * | path, |
| int & | vars, | ||
| int | strict, | ||
| bool & | incremental, | ||
| std::vector< int > & | cubes ) |

Definition at line 1389 of file cadical_solver.cpp.

| const char * CaDiCaL::Solver::read_dimacs | ( | FILE * | file, |
| const char * | name, | ||
| int & | vars, | ||
| int | strict, | ||
| bool & | incremental, | ||
| std::vector< int > & | cubes ) |

| const char * CaDiCaL::Solver::read_dimacs | ( | FILE * | file, |
| const char * | name, | ||
| int & | vars, | ||
| int | strict = 1 ) |
Definition at line 1375 of file cadical_solver.cpp.


| int64_t CaDiCaL::Solver::redundant | ( | ) | const |
Definition at line 1077 of file cadical_solver.cpp.
| void CaDiCaL::Solver::remove_observed_var | ( | int | var | ) |
Definition at line 1052 of file cadical_solver.cpp.
| void CaDiCaL::Solver::reserve | ( | int | min_max_var | ) |
Definition at line 440 of file cadical_solver.cpp.
| int CaDiCaL::Solver::reserve_difference | ( | int | number_of_vars | ) |
Definition at line 449 of file cadical_solver.cpp.
| void CaDiCaL::Solver::reset_assumptions | ( | ) |
Definition at line 693 of file cadical_solver.cpp.
| void CaDiCaL::Solver::reset_constraint | ( | ) |
Definition at line 702 of file cadical_solver.cpp.
| void CaDiCaL::Solver::reset_observed_vars | ( | ) |
Definition at line 1060 of file cadical_solver.cpp.
| void CaDiCaL::Solver::resources | ( | ) |
Definition at line 1353 of file cadical_solver.cpp.

Definition at line 498 of file cadical_solver.cpp.


Definition at line 514 of file cadical_solver.cpp.

|
static |
Definition at line 1333 of file cadical_solver.cpp.


| int CaDiCaL::Solver::simplify | ( | int | rounds = 3 | ) |
Definition at line 796 of file cadical_solver.cpp.
| int CaDiCaL::Solver::solve | ( | ) |
Definition at line 786 of file cadical_solver.cpp.


Definition at line 529 of file cadical.hpp.

| void CaDiCaL::Solver::statistics | ( | ) |
Definition at line 1344 of file cadical_solver.cpp.

|
inline |
Definition at line 534 of file cadical.hpp.
| void CaDiCaL::Solver::terminate | ( | ) |
Definition at line 900 of file cadical_solver.cpp.
Definition at line 1138 of file cadical_solver.cpp.

Definition at line 1124 of file cadical_solver.cpp.


| bool CaDiCaL::Solver::traverse_clauses | ( | ClauseIterator & | it | ) | const |
Definition at line 1502 of file cadical_solver.cpp.

| bool CaDiCaL::Solver::traverse_witnesses_backward | ( | WitnessIterator & | it | ) | const |
Definition at line 1512 of file cadical_solver.cpp.

| bool CaDiCaL::Solver::traverse_witnesses_forward | ( | WitnessIterator & | it | ) | const |
Definition at line 1521 of file cadical_solver.cpp.

| void CaDiCaL::Solver::unphase | ( | int | lit | ) |
Definition at line 890 of file cadical_solver.cpp.
|
static |
Definition at line 1340 of file cadical_solver.cpp.

| int CaDiCaL::Solver::val | ( | int | lit | ) |
Definition at line 809 of file cadical_solver.cpp.


| int CaDiCaL::Solver::vars | ( | ) |
Definition at line 432 of file cadical_solver.cpp.

|
static |
Definition at line 1565 of file cadical_solver.cpp.

Definition at line 1636 of file cadical_solver.cpp.

|
friend |
Definition at line 1068 of file cadical.hpp.
|
friend |
Definition at line 1163 of file cadical.hpp.
|
friend |
Definition at line 1150 of file cadical.hpp.
|
friend |
Definition at line 1161 of file cadical.hpp.
|
friend |
Definition at line 1069 of file cadical.hpp.
|
friend |
Definition at line 1164 of file cadical.hpp.
|
friend |
Definition at line 1162 of file cadical.hpp.
|
friend |
Definition at line 1070 of file cadical.hpp.
|
friend |
Definition at line 1034 of file cadical.hpp.