|
yosys-master
|
#include <ezminisat.h>
Inheritance diagram for ezMiniSAT:
Collaboration diagram for ezMiniSAT:Public Types | |
| enum | OpId { OpNot, OpAnd, OpOr, OpXor, OpIFF, OpITE } |
Public Member Functions | |
| ezMiniSAT () | |
| virtual | ~ezMiniSAT () |
| virtual void | clear () |
| virtual void | freeze (int id) |
| virtual bool | eliminated (int idx) |
| virtual bool | solver (const std::vector< int > &modelExpressions, std::vector< bool > &modelValues, const std::vector< int > &assumptions) |
| void | keep_cnf () |
| void | non_incremental () |
| bool | mode_keep_cnf () const |
| bool | mode_non_incremental () const |
| int | value (bool val) |
| int | literal () |
| int | literal (const std::string &name) |
| int | frozen_literal () |
| int | frozen_literal (const std::string &name) |
| int | expression (OpId op, int a=0, int b=0, int c=0, int d=0, int e=0, int f=0) |
| int | expression (OpId op, const std::vector< int > &args) |
| void | lookup_literal (int id, std::string &name) const |
| const std::string & | lookup_literal (int id) const |
| void | lookup_expression (int id, OpId &op, std::vector< int > &args) const |
| const std::vector< int > & | lookup_expression (int id, OpId &op) const |
| int | parse_string (const std::string &text) |
| std::string | to_string (int id) const |
| int | numLiterals () const |
| int | numExpressions () const |
| int | eval (int id, const std::vector< int > &values) const |
| bool | solve (const std::vector< int > &modelExpressions, std::vector< bool > &modelValues, const std::vector< int > &assumptions) |
| bool | solve (const std::vector< int > &modelExpressions, std::vector< bool > &modelValues, int a=0, int b=0, int c=0, int d=0, int e=0, int f=0) |
| bool | solve (int a=0, int b=0, int c=0, int d=0, int e=0, int f=0) |
| void | setSolverTimeout (int newTimeoutSeconds) |
| bool | getSolverTimoutStatus () |
| void | assume (int id) |
| int | bind (int id, bool auto_freeze=true) |
| int | bound (int id) const |
| int | numCnfVariables () const |
| int | numCnfClauses () const |
| const std::vector< std::vector < int > > & | cnf () const |
| void | consumeCnf () |
| void | consumeCnf (std::vector< std::vector< int >> &cnf) |
| void | getFullCnf (std::vector< std::vector< int >> &full_cnf) const |
| std::string | cnfLiteralInfo (int idx) const |
| int | VAR (_V a) |
| int | NOT (_V a) |
| int | AND (_V a=0, _V b=0, _V c=0, _V d=0, _V e=0, _V f=0) |
| int | OR (_V a=0, _V b=0, _V c=0, _V d=0, _V e=0, _V f=0) |
| int | XOR (_V a=0, _V b=0, _V c=0, _V d=0, _V e=0, _V f=0) |
| int | IFF (_V a, _V b=0, _V c=0, _V d=0, _V e=0, _V f=0) |
| int | ITE (_V a, _V b, _V c) |
| void | SET (_V a, _V b) |
| std::vector< int > | vec_const (const std::vector< bool > &bits) |
| std::vector< int > | vec_const_signed (int64_t value, int numBits) |
| std::vector< int > | vec_const_unsigned (uint64_t value, int numBits) |
| std::vector< int > | vec_var (int numBits) |
| std::vector< int > | vec_var (std::string name, int numBits) |
| std::vector< int > | vec_cast (const std::vector< int > &vec1, int toBits, bool signExtend=false) |
| std::vector< int > | vec_not (const std::vector< int > &vec1) |
| std::vector< int > | vec_and (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| std::vector< int > | vec_or (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| std::vector< int > | vec_xor (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| std::vector< int > | vec_iff (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| std::vector< int > | vec_ite (const std::vector< int > &vec1, const std::vector< int > &vec2, const std::vector< int > &vec3) |
| std::vector< int > | vec_ite (int sel, const std::vector< int > &vec1, const std::vector< int > &vec2) |
| std::vector< int > | vec_count (const std::vector< int > &vec, int numBits, bool clip=true) |
| std::vector< int > | vec_add (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| std::vector< int > | vec_sub (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| std::vector< int > | vec_neg (const std::vector< int > &vec) |
| void | vec_cmp (const std::vector< int > &vec1, const std::vector< int > &vec2, int &carry, int &overflow, int &sign, int &zero) |
| int | vec_lt_signed (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| int | vec_le_signed (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| int | vec_ge_signed (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| int | vec_gt_signed (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| int | vec_lt_unsigned (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| int | vec_le_unsigned (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| int | vec_ge_unsigned (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| int | vec_gt_unsigned (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| int | vec_eq (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| int | vec_ne (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| std::vector< int > | vec_shl (const std::vector< int > &vec1, int shift, bool signExtend=false) |
| std::vector< int > | vec_srl (const std::vector< int > &vec1, int shift) |
| std::vector< int > | vec_shr (const std::vector< int > &vec1, int shift, bool signExtend=false) |
| std::vector< int > | vec_srr (const std::vector< int > &vec1, int shift) |
| std::vector< int > | vec_shift (const std::vector< int > &vec1, int shift, int extend_left, int extend_right) |
| std::vector< int > | vec_shift_right (const std::vector< int > &vec1, const std::vector< int > &vec2, bool vec2_signed, int extend_left, int extend_right) |
| std::vector< int > | vec_shift_left (const std::vector< int > &vec1, const std::vector< int > &vec2, bool vec2_signed, int extend_left, int extend_right) |
| void | vec_append (std::vector< int > &vec, const std::vector< int > &vec1) const |
| void | vec_append_signed (std::vector< int > &vec, const std::vector< int > &vec1, int64_t value) |
| void | vec_append_unsigned (std::vector< int > &vec, const std::vector< int > &vec1, uint64_t value) |
| int64_t | vec_model_get_signed (const std::vector< int > &modelExpressions, const std::vector< bool > &modelValues, const std::vector< int > &vec1) const |
| uint64_t | vec_model_get_unsigned (const std::vector< int > &modelExpressions, const std::vector< bool > &modelValues, const std::vector< int > &vec1) const |
| int | vec_reduce_and (const std::vector< int > &vec1) |
| int | vec_reduce_or (const std::vector< int > &vec1) |
| void | vec_set (const std::vector< int > &vec1, const std::vector< int > &vec2) |
| void | vec_set_signed (const std::vector< int > &vec1, int64_t value) |
| void | vec_set_unsigned (const std::vector< int > &vec1, uint64_t value) |
| struct ezSATbit | bit (_V a) |
| struct ezSATvec | vec (const std::vector< int > &vec) |
| void | printDIMACS (FILE *f, bool verbose=false) const |
| void | printInternalState (FILE *f) const |
| int | onehot (const std::vector< int > &vec, bool max_only=false) |
| int | manyhot (const std::vector< int > &vec, int min_hot, int max_hot=-1) |
| int | ordered (const std::vector< int > &vec1, const std::vector< int > &vec2, bool allow_equal=true) |
Data Fields | |
| int | solverTimeout |
| bool | solverTimoutStatus |
Static Public Attributes | |
| static const int | CONST_TRUE = 1 |
| static const int | CONST_FALSE = 2 |
Protected Member Functions | |
| void | preSolverCallback () |
Private Types | |
| typedef Minisat::SimpSolver | Solver |
Static Private Member Functions | |
| static void | alarmHandler (int) |
Private Attributes | |
| Solver * | minisatSolver |
| std::vector< int > | minisatVars |
| bool | foundContradiction |
| std::set< int > | cnfFrozenVars |
Static Private Attributes | |
| static ezMiniSAT * | alarmHandlerThis = NULL |
| static clock_t | alarmHandlerTimeout = 0 |
Definition at line 38 of file ezminisat.h.
|
private |
Definition at line 42 of file ezminisat.h.
|
inherited |
| Enumerator | |
|---|---|
| OpNot | |
| OpAnd | |
| OpOr | |
| OpXor | |
| OpIFF | |
| OpITE | |
Definition at line 44 of file ezsat.h.
| ezMiniSAT::ezMiniSAT | ( | ) |
Definition at line 38 of file ezminisat.cc.
Here is the call graph for this function:
|
virtual |
Definition at line 47 of file ezminisat.cc.
|
staticprivate |
Definition at line 87 of file ezminisat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 201 of file ezsat.h.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 388 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 520 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
|
virtual |
Reimplemented from ezSAT.
Definition at line 53 of file ezminisat.cc.
Here is the call graph for this function:
|
inlineinherited |
|
inherited |
|
inherited |
|
inherited |
|
virtual |
Reimplemented from ezSAT.
|
inherited |
Definition at line 293 of file ezsat.cc.
Here is the call graph for this function:
|
inherited |
Definition at line 102 of file ezsat.cc.
Here is the caller graph for this function:
|
inherited |
Definition at line 110 of file ezsat.cc.
Here is the call graph for this function:
|
virtual |
|
inherited |
Definition at line 88 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 95 of file ezsat.cc.
Here is the call graph for this function:
|
inherited |
Definition at line 213 of file ezsat.h.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 217 of file ezsat.h.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineinherited |
|
inherited |
|
inherited |
Definition at line 218 of file ezsat.cc.
Here is the caller graph for this function:
|
inherited |
Definition at line 225 of file ezsat.cc.
|
inherited |
|
inherited |
|
inherited |
Definition at line 1333 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Definition at line 197 of file ezsat.h.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Definition at line 112 of file ezsat.h.
|
inlineinherited |
|
inherited |
Definition at line 1303 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 205 of file ezsat.h.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 1371 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
|
protectedinherited |
|
inherited |
Definition at line 1188 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 1263 of file ezsat.cc.
Here is the call graph for this function:
|
inlineinherited |
|
inlineinherited |
Definition at line 122 of file ezsat.h.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineinherited |
Definition at line 126 of file ezsat.h.
Here is the call graph for this function:
|
inlineinherited |
Definition at line 137 of file ezsat.h.
Here is the call graph for this function:
|
virtual |
Reimplemented from ezSAT.
Definition at line 97 of file ezminisat.cc.
Here is the call graph for this function:
|
inherited |
Definition at line 237 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
|
inlineinherited |
|
inherited |
Definition at line 1183 of file ezsat.cc.
Here is the caller graph for this function:
|
inherited |
Definition at line 819 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
Definition at line 873 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
|
inherited |
|
inherited |
|
inherited |
Definition at line 789 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 954 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 912 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 940 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 919 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 947 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
|
inherited |
|
inherited |
|
inherited |
Definition at line 905 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 933 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 898 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 926 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
|
inherited |
|
inherited |
Definition at line 959 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 867 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
|
inherited |
|
inherited |
Definition at line 1139 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 1144 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
Definition at line 1059 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 1016 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
|
inlineinherited |
Definition at line 266 of file ezsat.h.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
|
inlineinherited |
Definition at line 267 of file ezsat.h.
Here is the call graph for this function:
|
inherited |
Definition at line 843 of file ezsat.cc.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
|
inherited |
|
inherited |
Definition at line 209 of file ezsat.h.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 55 of file ezminisat.h.
|
staticprivate |
Definition at line 56 of file ezminisat.h.
|
private |
Definition at line 51 of file ezminisat.h.
|
private |
Definition at line 48 of file ezminisat.h.
|
private |
Definition at line 46 of file ezminisat.h.
|
private |
Definition at line 47 of file ezminisat.h.