diff options
Diffstat (limited to 'src/proof')
-rw-r--r-- | src/proof/int/int.h | 1 | ||||
-rw-r--r-- | src/proof/int/intInt.h | 1 | ||||
-rw-r--r-- | src/proof/int/intMan.c | 8 |
3 files changed, 7 insertions, 3 deletions
diff --git a/src/proof/int/int.h b/src/proof/int/int.h index 97d628b4..906d8aaf 100644 --- a/src/proof/int/int.h +++ b/src/proof/int/int.h @@ -66,6 +66,7 @@ struct Inter_ManParams_t_ int fDropInvar; // dump inductive invariant into file int fVerbose; // print verbose statistics int iFrameMax; // the time frame reached + char * pFileName; // file name to dump interpolant }; //////////////////////////////////////////////////////////////////////// diff --git a/src/proof/int/intInt.h b/src/proof/int/intInt.h index 85b9bfa2..bf591b7a 100644 --- a/src/proof/int/intInt.h +++ b/src/proof/int/intInt.h @@ -69,6 +69,7 @@ struct Inter_Man_t_ int nConfCur; // the current number of conflicts int nConfLimit; // the limit on the number of conflicts int fVerbose; // the verbosiness flag + char * pFileName; // runtime clock_t timeRwr; clock_t timeCnf; diff --git a/src/proof/int/intMan.c b/src/proof/int/intMan.c index e419da86..6dbf6f66 100644 --- a/src/proof/int/intMan.c +++ b/src/proof/int/intMan.c @@ -52,6 +52,7 @@ Inter_Man_t * Inter_ManCreate( Aig_Man_t * pAig, Inter_ManParams_t * pPars ) p->vVarsAB = Vec_IntAlloc( Aig_ManRegNum(pAig) ); p->nConfLimit = pPars->nBTLimit; p->fVerbose = pPars->fVerbose; + p->pFileName = pPars->pFileName; p->pAig = pAig; if ( pPars->fDropInvar ) p->vInters = Vec_PtrAlloc( 100 ); @@ -102,14 +103,15 @@ void Inter_ManClean( Inter_Man_t * p ) ***********************************************************************/ void Inter_ManInterDump( Inter_Man_t * p, int fProved ) { + char * pFileName = p->pFileName ? p->pFileName : "invar.aig"; Aig_Man_t * pMan; pMan = Aig_ManDupArray( p->vInters ); - Ioa_WriteAiger( pMan, "invar.aig", 0, 0 ); + Ioa_WriteAiger( pMan, pFileName, 0, 0 ); Aig_ManStop( pMan ); if ( fProved ) - printf( "Inductive invariant is dumped into file \"invar.aig\".\n" ); + printf( "Inductive invariant is dumped into file \"%s\".\n", pFileName ); else - printf( "Interpolants are dumped into file \"inter.aig\".\n" ); + printf( "Interpolants are dumped into file \"%s\".\n", pFileName ); } /**Function************************************************************* |