diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2013-10-23 16:26:13 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2013-10-23 16:26:13 -0700 |
commit | 47afd0f4f4f258ddc9231b791e6149430240ba52 (patch) | |
tree | e421d9e2913bdccd368e588122f5c9664a672338 /src/proof/ssw | |
parent | 8ad1729aa9f3f9da65c36f89a57a8272ece196d9 (diff) | |
download | abc-47afd0f4f4f258ddc9231b791e6149430240ba52.tar.gz abc-47afd0f4f4f258ddc9231b791e6149430240ba52.tar.bz2 abc-47afd0f4f4f258ddc9231b791e6149430240ba52.zip |
Multi-output property solver.
Diffstat (limited to 'src/proof/ssw')
-rw-r--r-- | src/proof/ssw/ssw.h | 1 | ||||
-rw-r--r-- | src/proof/ssw/sswRarity.c | 12 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/proof/ssw/ssw.h b/src/proof/ssw/ssw.h index 57bd91bf..cd65fc67 100644 --- a/src/proof/ssw/ssw.h +++ b/src/proof/ssw/ssw.h @@ -101,6 +101,7 @@ struct Ssw_RarPars_t_ int fSetLastState; int fVerbose; int fNotVerbose; + int fSilent; int fDropSatOuts; int fMiter; int fUseCex; diff --git a/src/proof/ssw/sswRarity.c b/src/proof/ssw/sswRarity.c index e5640f6a..cd93d28b 100644 --- a/src/proof/ssw/sswRarity.c +++ b/src/proof/ssw/sswRarity.c @@ -1051,16 +1051,22 @@ int Ssw_RarSimulate( Aig_Man_t * pAig, Ssw_RarPars_t * pPars ) // check timeout if ( pPars->TimeOut && Abc_Clock() > nTimeToStop ) { + if ( !pPars->fSilent ) + { if ( pPars->fVerbose && !pPars->fSolveAll ) Abc_Print( 1, "\n" ); Abc_Print( 1, "Simulated %d frames for %d rounds with %d restarts. ", pPars->nFrames, nNumRestart * pPars->nRestart + r, nNumRestart ); Abc_Print( 1, "Reached timeout (%d sec).\n", pPars->TimeOut ); + } goto finish; } if ( pPars->TimeOutGap && timeLastSolved && Abc_Clock() > timeLastSolved + pPars->TimeOutGap * CLOCKS_PER_SEC ) { + if ( !pPars->fSilent ) + { if ( pPars->fVerbose && !pPars->fSolveAll ) Abc_Print( 1, "\n" ); Abc_Print( 1, "Simulated %d frames for %d rounds with %d restarts. ", pPars->nFrames, nNumRestart * pPars->nRestart + r, nNumRestart ); Abc_Print( 1, "Reached gap timeout (%d sec).\n", pPars->TimeOutGap ); + } goto finish; } // check if all outputs are solved by now @@ -1106,15 +1112,21 @@ finish: } if ( pPars->nSolved ) { + if ( !pPars->fSilent ) + { if ( pPars->fVerbose && !pPars->fSolveAll ) Abc_Print( 1, "\n" ); Abc_Print( 1, "Simulation of %d frames for %d rounds with %d restarts asserted %d (out of %d) POs. ", pPars->nFrames, nNumRestart * pPars->nRestart + r, nNumRestart, pPars->nSolved, Saig_ManPoNum(p->pAig) ); Abc_PrintTime( 1, "Time", Abc_Clock() - clkTotal ); + } } else if ( r == pPars->nRounds && f == pPars->nFrames ) { + if ( !pPars->fSilent ) + { if ( pPars->fVerbose ) Abc_Print( 1, "\n" ); Abc_Print( 1, "Simulation of %d frames for %d rounds with %d restarts did not assert POs. ", pPars->nFrames, nNumRestart * pPars->nRestart + r, nNumRestart ); Abc_PrintTime( 1, "Time", Abc_Clock() - clkTotal ); + } } // cleanup Ssw_RarManStop( p ); |