45 extern int Abc_NtkDSat(
Abc_Ntk_t * pNtk, ABC_INT64_T nConfLimit, ABC_INT64_T nInsLimit,
int nLearnedStart,
int nLearnedDelta,
int nLearnedPerce,
int fAlignPol,
int fAndOuts,
int fNewSolver,
int fVerbose );
66 Abc_Ntk_t * pNtkVer, * pNtkSyn, * pNtkSyn2, * pNtkTemp;
69 int nIters, nInputs, RetValue, fFound = 0;
85 Vec_Int_t * vVarMap, * vForAlls, * vExists;
110 printf(
"The 2QBF formula was written into file \"%s\".\n", pFileName );
129 printf(
"Iter %2d : ", 0 );
136 for ( nIters = 0; nIters < nItersMax; nIters++ )
141 RetValue =
Abc_NtkDSat( pNtkSyn, (ABC_INT64_T)0, (ABC_INT64_T)0, 0, 0, 0, 1, 0, 0, 0 );
149 if ( RetValue == -1 )
151 printf(
"Synthesis timed out.\n" );
174 if ( RetValue == -1 )
176 printf(
"Verification timed out.\n" );
191 printf(
"Iter %2d : ", nIters+1 );
198 if ( nIters+1 == nItersMax )
205 printf(
"Parameters: " );
208 printf(
"Solved after %d interations. ", nIters );
210 else if ( nIters == nItersMax )
211 printf(
"Unsolved after %d interations. ", nIters );
212 else if ( nIters == nItersMax )
213 printf(
"Quit after %d interatios. ", nItersMax );
215 printf(
"Implementation does not exist. " );
254 for ( i = 0; i < nPars; i++ )
290 for ( i = 0; i < nPars; i++ )
static int Abc_NtkIsStrash(Abc_Ntk_t *pNtk)
static int Abc_NtkIsComb(Abc_Ntk_t *pNtk)
Cnf_Dat_t * Cnf_Derive(Aig_Man_t *pAig, int nOutputs)
typedefABC_NAMESPACE_HEADER_START struct Aig_Man_t_ Aig_Man_t
INCLUDES ///.
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
void Aig_ManStop(Aig_Man_t *p)
void Cnf_DataWriteIntoFile(Cnf_Dat_t *p, char *pFileName, int fReadable, Vec_Int_t *vForAlls, Vec_Int_t *vExists)
#define Aig_ManForEachCi(p, pObj, i)
ITERATORS ///.
static abctime Abc_Clock()
int Abc_NtkDSat(Abc_Ntk_t *pNtk, ABC_INT64_T nConfLimit, ABC_INT64_T nInsLimit, int nLearnedStart, int nLearnedDelta, int nLearnedPerce, int fAlignPol, int fAndOuts, int fNewSolver, int fVerbose)
ABC_DLL void Abc_NtkDelete(Abc_Ntk_t *pNtk)
static void Vec_IntWriteEntry(Vec_Int_t *p, int i, int Entry)
static int Abc_NtkNodeNum(Abc_Ntk_t *pNtk)
static ABC_NAMESPACE_IMPL_START void Abc_NtkModelToVector(Abc_Ntk_t *pNtk, Vec_Int_t *vPiValues)
DECLARATIONS ///.
static Vec_Int_t * Vec_IntStart(int nSize)
static void Abc_NtkVectorClearPars(Vec_Int_t *vPiValues, int nPars)
void Abc_NtkQbf(Abc_Ntk_t *pNtk, int nPars, int nItersMax, int fDumpCnf, int fVerbose)
FUNCTION DEFINITIONS ///.
static Vec_Int_t * Vec_IntAlloc(int nCap)
FUNCTION DEFINITIONS ///.
Aig_Man_t * Abc_NtkToDar(Abc_Ntk_t *pNtk, int fExors, int fRegisters)
static int Vec_IntEntry(Vec_Int_t *p, int i)
#define ABC_NAMESPACE_IMPL_END
ABC_DLL int Abc_NtkMiterSat(Abc_Ntk_t *pNtk, ABC_INT64_T nConfLimit, ABC_INT64_T nInsLimit, int fVerbose, ABC_INT64_T *pNumConfs, ABC_INT64_T *pNumInspects)
FUNCTION DEFINITIONS ///.
static void Vec_IntPush(Vec_Int_t *p, int Entry)
ABC_DLL Abc_Ntk_t * Abc_NtkMiterCofactor(Abc_Ntk_t *pNtk, Vec_Int_t *vPiValues)
static void Abc_NtkVectorPrintPars(Vec_Int_t *vPiValues, int nPars)
static void Abc_NtkVectorPrintVars(Abc_Ntk_t *pNtk, Vec_Int_t *vPiValues, int nPars)
#define ABC_NAMESPACE_IMPL_START
static Abc_Obj_t * Abc_NtkPo(Abc_Ntk_t *pNtk, int i)
static int Abc_NtkPoNum(Abc_Ntk_t *pNtk)
static int Abc_NtkPiNum(Abc_Ntk_t *pNtk)
static void Abc_NtkVectorClearVars(Abc_Ntk_t *pNtk, Vec_Int_t *vPiValues, int nPars)
void Cnf_DataFree(Cnf_Dat_t *p)
static void Abc_ObjXorFaninC(Abc_Obj_t *pObj, int i)
static int Aig_ObjId(Aig_Obj_t *pObj)
static void Vec_IntFree(Vec_Int_t *p)
ABC_DLL Abc_Ntk_t * Abc_NtkMiterAnd(Abc_Ntk_t *pNtk1, Abc_Ntk_t *pNtk2, int fOr, int fCompl2)
#define Vec_IntForEachEntry(vVec, Entry, i)
MACRO DEFINITIONS ///.