119 for ( i = 0; i < nArray; i++ )
145 int i, iVar, iVarMax = 0;
148 assert( !(fNext && fCompl) );
149 for ( i = 0; i < pCube->nLits; i++ )
151 if ( pCube->Lits[i] == -1 )
181 int Lit, RetValue, i;
int Pdr_ManCheckCubeCs(Pdr_Man_t *p, int k, Pdr_Set_t *pCube)
static abctime sat_solver_set_runtime_limit(sat_solver *s, abctime Limit)
static int * Vec_IntArray(Vec_Int_t *p)
sat_solver * Pdr_ManNewSolver(sat_solver *pSat, Pdr_Man_t *p, int k, int fInit)
typedefABC_NAMESPACE_HEADER_START struct Vec_Ptr_t_ Vec_Ptr_t
INCLUDES ///.
Vec_Int_t * Pdr_ManLitsToCube(Pdr_Man_t *p, int k, int *pArray, int nArray)
#define Aig_ManForEachObjVec(vIds, p, pObj, i)
int sat_solver_addclause(sat_solver *s, lit *begin, lit *end)
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
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)
static void sat_solver_compress(sat_solver *s)
static int lit_var(lit l)
static Aig_Obj_t * Saig_ManLo(Aig_Man_t *p, int i)
#define Vec_VecForEachLevelStart(vGlob, vVec, i, LevelStart)
ABC_NAMESPACE_IMPL_START sat_solver * Pdr_ManCreateSolver(Pdr_Man_t *p, int k)
DECLARATIONS ///.
Vec_Int_t * Pdr_ManCubeToLits(Pdr_Man_t *p, int k, Pdr_Set_t *pCube, int fCompl, int fNext)
static void Vec_PtrPush(Vec_Ptr_t *p, void *Entry)
static abctime Abc_Clock()
static int Abc_MaxInt(int a, int b)
void Pdr_ManSolverAddClause(Pdr_Man_t *p, int k, Pdr_Set_t *pCube)
static int Vec_PtrSize(Vec_Ptr_t *p)
int Pdr_ObjSatVar(Pdr_Man_t *p, int k, int Pol, Aig_Obj_t *pObj)
static abctime Pdr_ManTimeLimit(Pdr_Man_t *p)
static int sat_solver_var_value(sat_solver *s, int v)
static lit lit_neg(lit l)
sat_solver * Pdr_ManFetchSolver(Pdr_Man_t *p, int k)
static void Vec_IntWriteEntry(Vec_Int_t *p, int i, int Entry)
static void Vec_IntAddToEntry(Vec_Int_t *p, int i, int Addition)
static lit toLitCond(int v, int c)
static int Vec_IntEntry(Vec_Int_t *p, int i)
#define ABC_NAMESPACE_IMPL_END
int Pdr_ObjRegNum(Pdr_Man_t *p, int k, int iSatVar)
static Aig_Obj_t * Saig_ManLi(Aig_Man_t *p, int i)
typedefABC_NAMESPACE_HEADER_START struct Pdr_Set_t_ Pdr_Set_t
INCLUDES ///.
static void Vec_IntPush(Vec_Int_t *p, int Entry)
void Pdr_ManSetPropertyOutput(Pdr_Man_t *p, int k)
void Pdr_ManCollectValues(Pdr_Man_t *p, int k, Vec_Int_t *vObjIds, Vec_Int_t *vValues)
Pdr_Set_t * Pdr_ManTernarySim(Pdr_Man_t *p, int k, Pdr_Set_t *pCube)
static void Vec_PtrWriteEntry(Vec_Ptr_t *p, int i, void *Entry)
#define ABC_NAMESPACE_IMPL_START
static void * Vec_PtrEntry(Vec_Ptr_t *p, int i)
static Aig_Obj_t * Aig_ManCo(Aig_Man_t *p, int i)
static sat_solver * Pdr_ManSolver(Pdr_Man_t *p, int k)
MACRO DEFINITIONS ///.
static int Aig_ManRegNum(Aig_Man_t *p)
sat_solver * sat_solver_new(void)
static int Vec_IntSize(Vec_Int_t *p)
static int lit_sign(lit l)
static void Vec_VecExpand(Vec_Vec_t *p, int Level)
int Pdr_ManCheckCube(Pdr_Man_t *p, int k, Pdr_Set_t *pCube, Pdr_Set_t **ppPred, int nConfLimit)
static int Vec_VecSize(Vec_Vec_t *p)
#define Saig_ManForEachPo(p, pObj, i)
int Pdr_ManFreeVar(Pdr_Man_t *p, int k)
#define Vec_PtrForEachEntry(Type, vVec, pEntry, i)
MACRO DEFINITIONS ///.
static void Vec_IntClear(Vec_Int_t *p)
void sat_solver_restart(sat_solver *s)