105 int * pLit, i, iVar, iClaBeg, iClaEnd, RetValue;
106 int PolPres = (iVarThis & 3);
112 if ( (Pol & ~PolPres) )
117 assert( iClaBeg < iClaEnd );
133 if ( (Pol & ~PolPres) == 3 )
136 for ( i = iClaBeg; i < iClaEnd; i++ )
140 for ( pLit = p->
pCnf2->
pClauses[i]+1; pLit < p->pCnf2->pClauses[i+1]; pLit++ )
152 assert( (Pol & ~PolPres) );
153 for ( i = iClaBeg; i < iClaEnd; i++ )
158 for ( pLit = p->
pCnf2->
pClauses[i]+1; pLit < p->pCnf2->pClauses[i+1]; pLit++ )
205 int * pLit, i, iVar, iClaBeg, iClaEnd, RetValue;
210 assert( iClaBeg < iClaEnd );
213 for ( i = iClaBeg; i < iClaEnd; i++ )
217 for ( pLit = p->
pCnf2->
pClauses[i]+1; pLit < p->pCnf2->pClauses[i+1]; pLit++ )
243 if ( p->
pPars->fMonoCnf )
314 if ( p->
pPars->fMonoCnf )
334 if ( p->
pPars->fMonoCnf )
360 if ( p->
pCnf1 == NULL )
362 int nRegs = p->
pAig->nRegs;
365 p->
pAig->nRegs = nRegs;
392 if ( p->
pCnf2 == NULL )
403 if ( vVar2Ids == NULL )
438 if ( p->
pPars->fMonoCnf )
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)
static int Saig_ManPoNum(Aig_Man_t *p)
static int Saig_ObjIsLo(Aig_Man_t *p, Aig_Obj_t *pObj)
int sat_solver_addclause(sat_solver *s, lit *begin, lit *end)
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
Cnf_Dat_t * Cnf_DeriveWithMan(Cnf_Man_t *p, Aig_Man_t *pAig, int nOutputs)
static void Vec_PtrGrow(Vec_Ptr_t *p, int nCapMin)
static void sat_solver_compress(sat_solver *s)
static int lit_var(lit l)
Cnf_Dat_t * Cnf_DeriveOtherWithMan(Cnf_Man_t *p, Aig_Man_t *pAig, int fSkipTtMin)
static void * Vec_PtrGetEntry(Vec_Ptr_t *p, int i)
static Aig_Obj_t * Aig_ManObj(Aig_Man_t *p, int i)
static int Vec_IntGetEntry(Vec_Int_t *p, int i)
int Pdr_ObjSatVar(Pdr_Man_t *p, int k, int Pol, Aig_Obj_t *pObj)
static Vec_Int_t * Vec_IntStartFull(int nSize)
static sat_solver * Pdr_ManNewSolver2(sat_solver *pSat, Pdr_Man_t *p, int k, int fInit)
static int Saig_ObjIsLi(Aig_Man_t *p, Aig_Obj_t *pObj)
static sat_solver * Pdr_ManNewSolver1(sat_solver *pSat, Pdr_Man_t *p, int k, int fInit)
static void Vec_IntGrow(Vec_Int_t *p, int nCapMin)
static void Vec_IntWriteEntry(Vec_Int_t *p, int i, int Entry)
static int Aig_ManCoNum(Aig_Man_t *p)
static int Abc_LitIsCompl(int Lit)
static int Pdr_ObjSatVar2FindOrAdd(Pdr_Man_t *p, int k, Aig_Obj_t *pObj, int *pfNewVar)
static Vec_Int_t * Vec_IntAlloc(int nCap)
FUNCTION DEFINITIONS ///.
#define Saig_ManForEachLi(p, pObj, i)
static lit toLitCond(int v, int c)
void sat_solver_setnvars(sat_solver *s, int n)
static int Vec_IntEntry(Vec_Int_t *p, int i)
int Pdr_ObjSatVar2(Pdr_Man_t *p, int k, Aig_Obj_t *pObj, int Level, int Pol)
int sat_solver_nvars(sat_solver *s)
#define ABC_NAMESPACE_IMPL_END
void * Cnf_DataWriteIntoSolverInt(void *pSat, Cnf_Dat_t *p, int nFrames, int fInit)
int Pdr_ObjRegNum(Pdr_Man_t *p, int k, int iSatVar)
static void Vec_IntPush(Vec_Int_t *p, int Entry)
unsigned char * Cnf_DataDeriveLitPolarities(Cnf_Dat_t *p)
static void Vec_PtrWriteEntry(Vec_Ptr_t *p, int i, void *Entry)
static int Aig_ManObjNumMax(Aig_Man_t *p)
#define ABC_NAMESPACE_IMPL_START
static Vec_Int_t * Vec_WecEntry(Vec_Wec_t *p, int i)
static void * Vec_PtrEntry(Vec_Ptr_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)
static int Vec_IntSize(Vec_Int_t *p)
static int lit_sign(lit l)
static ABC_NAMESPACE_IMPL_START int Pdr_ObjSatVar1(Pdr_Man_t *p, int k, Aig_Obj_t *pObj)
DECLARATIONS ///.
#define ABC_CALLOC(type, num)
static int Aig_ObjId(Aig_Obj_t *pObj)
static int * Vec_IntEntryP(Vec_Int_t *p, int i)
int Pdr_ManFreeVar(Pdr_Man_t *p, int k)
static int Aig_ObjIsCi(Aig_Obj_t *pObj)
static void Vec_IntClear(Vec_Int_t *p)
#define Vec_IntForEachEntry(vVec, Entry, i)
MACRO DEFINITIONS ///.
static int Pdr_ObjRegNum1(Pdr_Man_t *p, int k, int iSatVar)
static int Aig_ObjCioId(Aig_Obj_t *pObj)
static int Pdr_ObjRegNum2(Pdr_Man_t *p, int k, int iSatVar)