48 int RetValue, nBTLimit, iVar, b, Mint;
53 RetValue =
sat_solver_solve( p->
pSat, NULL, NULL, (ABC_INT64_T)nBTLimit, (ABC_INT64_T)0, (ABC_INT64_T)0, (ABC_INT64_T)0 );
68 Lits[b] =
toLit( iVar );
116 if ( RetValue == -1 )
123 if ( p->
pPars->fVeryVerbose )
125 printf(
"Node %4d : Care = %2d. Total = %2d. ", pNode->
Id, p->
nCares, (1<<p->
nFanins) );
#define Vec_PtrForEachEntryStart(Type, vVec, pEntry, i, Start)
int sat_solver_addclause(sat_solver *s, lit *begin, lit *end)
static int Abc_InfoHasBit(unsigned *p, int i)
int sat_solver_solve(sat_solver *s, lit *begin, lit *end, ABC_INT64_T nConfLimit, ABC_INT64_T nInsLimit, ABC_INT64_T nConfLimitGlobal, ABC_INT64_T nInsLimitGlobal)
void sat_solver_delete(sat_solver *s)
static int Abc_ObjFaninNum(Abc_Obj_t *pObj)
static int Abc_TruthWordNum(int nVars)
static int Vec_PtrSize(Vec_Ptr_t *p)
static int sat_solver_var_value(sat_solver *s, int v)
static lit lit_neg(lit l)
static int Aig_ManCoNum(Aig_Man_t *p)
ABC_NAMESPACE_IMPL_START int Abc_NtkMfsSolveSat_iter(Mfs_Man_t *p)
DECLARATIONS ///.
static Aig_Obj_t * Aig_ManCi(Aig_Man_t *p, int i)
unsigned uCare[(MFS_FANIN_MAX<=5)?1:1<<(MFS_FANIN_MAX-5)]
static lit toLitCond(int v, int c)
#define ABC_NAMESPACE_IMPL_END
static void Vec_IntPush(Vec_Int_t *p, int Entry)
int Abc_NtkAddOneHotness(Mfs_Man_t *p)
#define ABC_NAMESPACE_IMPL_START
static void Abc_InfoSetBit(unsigned *p, int i)
static int Vec_IntSize(Vec_Int_t *p)
void Extra_PrintBinary(FILE *pFile, unsigned Sign[], int nBits)
int Abc_NtkMfsSolveSat(Mfs_Man_t *p, Abc_Obj_t *pNode)
static void Vec_IntClear(Vec_Int_t *p)
#define Vec_IntForEachEntry(vVec, Entry, i)
MACRO DEFINITIONS ///.
#define MFS_FANIN_MAX
INCLUDES ///.