diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2012-08-27 13:49:53 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2012-08-27 13:49:53 -0700 |
commit | c25f5dee05c24c146680c555176b827d0008a444 (patch) | |
tree | f8e5bd5913b96e61ba8d542bb9bededf549db110 /src/aig | |
parent | 1ba1e6574cb4421f8a7c5984aa199e4efa62c3bf (diff) | |
download | abc-c25f5dee05c24c146680c555176b827d0008a444.tar.gz abc-c25f5dee05c24c146680c555176b827d0008a444.tar.bz2 abc-c25f5dee05c24c146680c555176b827d0008a444.zip |
Bug fix in &gla.
Diffstat (limited to 'src/aig')
-rw-r--r-- | src/aig/gia/giaAbsGla2.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/aig/gia/giaAbsGla2.c b/src/aig/gia/giaAbsGla2.c index 2c628ea8..fe8c7e3d 100644 --- a/src/aig/gia/giaAbsGla2.c +++ b/src/aig/gia/giaAbsGla2.c @@ -1484,6 +1484,15 @@ int Ga2_ManPerform( Gia_Man_t * pAig, Gia_ParVta_t * pPars ) nVarsOld = p->nSatVars; for ( c = 0; ; c++ ) { + // consider the special case when the target literal is implied false + // by implications which happened as a result of previous refinements + // note that incremental UNSAT core cannot be computed because there is no learned clauses + // in this case, we will assume that UNSAT core cannot reduce the problem + if ( var_is_assigned(p->pSat, Abc_Lit2Var(Lit)) ) + { + Prf_ManStopP( &p->pSat->pPrf2 ); + break; + } // perform SAT solving clk2 = clock(); Status = sat_solver2_solve( p->pSat, &Lit, &Lit+1, (ABC_INT64_T)pPars->nConfLimit, (ABC_INT64_T)0, (ABC_INT64_T)0, (ABC_INT64_T)0 ); |