101 int i, iPrev, iObj, iPrevNew, iObjNew;
138 if ( iPrevNew != iObjNew && iPrevNew != 0 && iObjNew != 1 )
151 if ( iPrevNew != iObjNew && iPrevNew != 0 && iObjNew != 1 )
170 if ( iPrevNew != iObjNew )
203 int nItersMax = 1000;
230 pParsSat->nBTLimit = pPars->
nBTLimit;
231 pParsSat->fVerbose = pPars->
fVerbose;
234 Abc_Print( 1,
"Obj = %7d. And = %7d. Conf = %5d. Ring = %d. CSat = %d.\n",
239 for ( r = 0; r < nItersMax; r++ )
286 if ( r == nItersMax )
287 Abc_Print( 1,
"The refinement was not finished. The result may be incorrect.\n" );
296 Abc_PrintTimeP( 1,
"Other", clkTotal-clkSat-clkSrm-clkSim, clkTotal );
363 pPars->nBTLimit = pParsChc->
nBTLimit;
364 pPars->fUseCSat = pParsChc->
fUseCSat;
365 pPars->fVerbose = pParsChc->
fVerbose;
389 if ( pPars->fVerbose )
392 pParsChc->
nBTLimit = pPars->nBTLimit;
393 pParsChc->
fUseCSat = pPars->fUseCSat;
396 pParsChc->
fVerbose = pPars->fVerbose;
int Cec_ManSimClassesPrepare(Cec_ManSim_t *p, int LevelMax)
static int Gia_ObjPhase(Gia_Obj_t *pObj)
Aig_Man_t * Dar_ManChoiceNew(Aig_Man_t *pAig, Dch_Pars_t *pPars)
void Dch_ManSetDefaultParams(Dch_Pars_t *p)
DECLARATIONS ///.
void Gia_ManStop(Gia_Man_t *p)
void Cec_ManChcSetDefaultParams(Cec_ParChc_t *p)
typedefABC_NAMESPACE_HEADER_START struct Aig_Man_t_ Aig_Man_t
INCLUDES ///.
static int Gia_ManAppendCo(Gia_Man_t *p, int iLit0)
int Gia_ManHashXor(Gia_Man_t *p, int iLit0, int iLit1)
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
void Aig_ManStop(Aig_Man_t *p)
Vec_Int_t * Cec_ManSatSolveMiter(Gia_Man_t *pAig, Cec_ParSat_t *pPars, Vec_Str_t **pvStatus)
static int Gia_ManAppendCi(Gia_Man_t *p)
void Cec_ManRefinedClassPrintStats(Gia_Man_t *p, Vec_Str_t *vStatus, int iIter, abctime Time)
MACRO DEFINITIONS ///.
static int Gia_ObjIsHead(Gia_Man_t *p, int Id)
void Cec_ManSimStop(Cec_ManSim_t *p)
void Gia_ManSetRegNum(Gia_Man_t *p, int nRegs)
typedefABC_NAMESPACE_HEADER_START struct Dch_Pars_t_ Dch_Pars_t
INCLUDES ///.
Gia_Man_t * Cec_ManChoiceComputation(Gia_Man_t *pAig, Cec_ParChc_t *pParsChc)
static abctime Abc_Clock()
static void Abc_PrintTimeP(int level, const char *pStr, abctime time, abctime Time)
static Gia_Obj_t * Gia_ManObj(Gia_Man_t *p, int v)
static int Abc_LitNotCond(int Lit, int c)
Cec_ManSim_t * Cec_ManSimStart(Gia_Man_t *pAig, Cec_ParSim_t *pPars)
Vec_Int_t * Cbs_ManSolveMiterNc(Gia_Man_t *pGia, int nConfs, Vec_Str_t **pvStatus, int fVerbose)
unsigned Gia_ManRandom(int fReset)
FUNCTION DEFINITIONS ///.
int Gia_ManCheckRefinements(Gia_Man_t *p, Vec_Str_t *vStatus, Vec_Int_t *vOutputs, Cec_ManSim_t *pSim, int fRings)
void Cec_ManSimSetDefaultParams(Cec_ParSim_t *p)
Gia_Man_t * Gia_ManFromAig(Aig_Man_t *p)
INCLUDES ///.
#define Gia_ManForEachCi(p, pObj, i)
static void Abc_PrintTime(int level, const char *pStr, abctime time)
Gia_Man_t * Gia_ManEquivToChoices(Gia_Man_t *p, int nSnapshots)
static int Gia_ManAndNum(Gia_Man_t *p)
int Cec_ManResimulateCounterExamplesComb(Cec_ManSim_t *pSim, Vec_Int_t *vCexStore)
static Gia_Obj_t * Gia_ObjFanin0(Gia_Obj_t *pObj)
static Vec_Int_t * Vec_IntAlloc(int nCap)
FUNCTION DEFINITIONS ///.
Gia_Man_t * Cec_ManCombSpecReduce(Gia_Man_t *p, Vec_Int_t **pvOutputs, int fRings)
static int Gia_ObjFanin1Copy(Gia_Obj_t *pObj)
static void Vec_StrFree(Vec_Str_t *p)
static int Cec_ManCombSpecReal(Gia_Man_t *pNew, Gia_Man_t *p, Gia_Obj_t *pObj)
FUNCTION DEFINITIONS ///.
static int Gia_ObjIsConst(Gia_Man_t *p, int Id)
#define ABC_NAMESPACE_IMPL_END
Gia_Man_t * Gia_ManStart(int nObjsMax)
DECLARATIONS ///.
#define Gia_ClassForEachObj1(p, i, iObj)
Aig_Man_t * Gia_ManToAig(Gia_Man_t *p, int fChoices)
static void Vec_IntPush(Vec_Int_t *p, int Entry)
static int Gia_ObjId(Gia_Man_t *p, Gia_Obj_t *pObj)
void Gia_ManFillValue(Gia_Man_t *p)
Aig_Man_t * Cec_ComputeChoices(Gia_Man_t *pGia, Dch_Pars_t *pPars)
static void Abc_Print(int level, const char *format,...)
static int Gia_ObjFanin0Copy(Gia_Obj_t *pObj)
int Cec_ManChoiceComputation_int(Gia_Man_t *pAig, Cec_ParChc_t *pPars)
#define ABC_NAMESPACE_IMPL_START
static Gia_Obj_t * Gia_ObjReprObj(Gia_Man_t *p, int Id)
static int Gia_ManCiNum(Gia_Man_t *p)
int Cec_ManSimClassesRefine(Cec_ManSim_t *p)
static int Abc_LitNot(int Lit)
static int Vec_IntSize(Vec_Int_t *p)
static ABC_NAMESPACE_IMPL_START void Cec_ManCombSpecReduce_rec(Gia_Man_t *pNew, Gia_Man_t *p, Gia_Obj_t *pObj)
DECLARATIONS ///.
static int Gia_ObjIsAnd(Gia_Obj_t *pObj)
static Gia_Obj_t * Gia_ManConst0(Gia_Man_t *p)
static Gia_Obj_t * Gia_ObjFanin1(Gia_Obj_t *pObj)
typedefABC_NAMESPACE_HEADER_START struct Cec_ParSat_t_ Cec_ParSat_t
INCLUDES ///.
void Gia_ManSetPhase(Gia_Man_t *p)
void Gia_ManHashAlloc(Gia_Man_t *p)
#define Gia_ManForEachObj1(p, pObj, i)
static void Vec_IntFree(Vec_Int_t *p)
Gia_Man_t * Gia_ManCleanup(Gia_Man_t *p)
char * Abc_UtilStrsav(char *s)
#define Vec_IntForEachEntry(vVec, Entry, i)
MACRO DEFINITIONS ///.
void Cec_ManSatSetDefaultParams(Cec_ParSat_t *p)
DECLARATIONS ///.
int Gia_ManHashAnd(Gia_Man_t *p, int iLit0, int iLit1)
static int Gia_ManObjNum(Gia_Man_t *p)
void Gia_ManHashStop(Gia_Man_t *p)
static int Gia_ManCoNum(Gia_Man_t *p)
Gia_Man_t * Cec_ManChoiceComputationVec(Gia_Man_t *pGia, int nGias, Cec_ParChc_t *pPars)
static int Gia_ManRegNum(Gia_Man_t *p)