Commit f29fe2d0 by Alan Mishchenko

Specialized inductive check.

parent 78a0660e
...@@ -228,10 +228,10 @@ void Bmc_PerformICheck( Gia_Man_t * p, int nFramesMax, int nTimeOut, int fEmpty, ...@@ -228,10 +228,10 @@ void Bmc_PerformICheck( Gia_Man_t * p, int nFramesMax, int nTimeOut, int fEmpty,
// collect positive literals // collect positive literals
vLits = Vec_IntAlloc( Gia_ManCoNum(p) ); vLits = Vec_IntAlloc( Gia_ManCoNum(p) );
for ( i = 0; i < Gia_ManRegNum(p); i++ ) for ( i = 0; i < Gia_ManRegNum(p); i++ )
Vec_IntPush( vLits, Abc_Var2Lit(i, 0) ); Vec_IntPush( vLits, Abc_Var2Lit(i, fEmpty) );
// iteratively compute a minimal M-inductive set of next-state functions // iteratively compute a minimal M-inductive set of next-state functions
nLitsUsed = Vec_IntSize(vLits); nLitsUsed = fEmpty ? 0 : Vec_IntSize(vLits);
vUsed = Vec_IntAlloc( Vec_IntSize(vLits) ); vUsed = Vec_IntAlloc( Vec_IntSize(vLits) );
while ( 1 ) while ( 1 )
{ {
...@@ -239,10 +239,7 @@ void Bmc_PerformICheck( Gia_Man_t * p, int nFramesMax, int nTimeOut, int fEmpty, ...@@ -239,10 +239,7 @@ void Bmc_PerformICheck( Gia_Man_t * p, int nFramesMax, int nTimeOut, int fEmpty,
// derive SAT solver // derive SAT solver
pSat = Bmc_DeriveSolver( p, pMiter, pCnf, nFramesMax, nTimeOut, fVerbose ); pSat = Bmc_DeriveSolver( p, pMiter, pCnf, nFramesMax, nTimeOut, fVerbose );
// sat_solver_bookmark( pSat ); // sat_solver_bookmark( pSat );
if ( fEmpty ) status = sat_solver_solve( pSat, Vec_IntArray(vLits), Vec_IntArray(vLits) + Vec_IntSize(vLits), (ABC_INT64_T)0, (ABC_INT64_T)0, (ABC_INT64_T)0, (ABC_INT64_T)0 );
status = sat_solver_solve( pSat, NULL, NULL, (ABC_INT64_T)0, (ABC_INT64_T)0, (ABC_INT64_T)0, (ABC_INT64_T)0 );
else
status = sat_solver_solve( pSat, Vec_IntArray(vLits), Vec_IntArray(vLits) + Vec_IntSize(vLits), (ABC_INT64_T)0, (ABC_INT64_T)0, (ABC_INT64_T)0, (ABC_INT64_T)0 );
if ( status == l_Undef ) if ( status == l_Undef )
{ {
printf( "Timeout reached after %d seconds.\n", nTimeOut ); printf( "Timeout reached after %d seconds.\n", nTimeOut );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment