From 1a66a5823a37123c099e63cb94bba1fd844487d1 Mon Sep 17 00:00:00 2001 From: Yen-Sheng Ho Date: Sun, 19 Feb 2017 16:09:59 -0800 Subject: working on pdr with wla --- src/base/wlc/wlcAbs.c | 2 +- src/proof/pdr/pdrIncr.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/base/wlc/wlcAbs.c b/src/base/wlc/wlcAbs.c index 8cc79722..47bd9a3f 100644 --- a/src/base/wlc/wlcAbs.c +++ b/src/base/wlc/wlcAbs.c @@ -402,7 +402,7 @@ int Wlc_NtkPdrAbs( Wlc_Ntk_t * p, Wlc_Par_t * pPars ) } // spurious CEX, continue solving - vClauses = IPdr_ManSaveClauses( pPdr, 1 ); + vClauses = IPdr_ManSaveClauses( pPdr, 0 ); Pdr_ManStop( pPdr ); // update the set of objects to be un-abstracted diff --git a/src/proof/pdr/pdrIncr.c b/src/proof/pdr/pdrIncr.c index 4f66eeb4..9f7dfd90 100644 --- a/src/proof/pdr/pdrIncr.c +++ b/src/proof/pdr/pdrIncr.c @@ -81,14 +81,16 @@ int IPdr_ManCheckClauses( Pdr_Man_t * p ) { Pdr_Set_t * pCubeK; Vec_Ptr_t * vArrayK; - int j, k, RetValue, kMax = Vec_PtrSize(p->vSolvers)-1; + int j, k, RetValue, kMax = Vec_PtrSize(p->vSolvers); int iStartFrame = 1; + int counter = 0; Vec_VecForEachLevelStartStop( p->vClauses, vArrayK, k, iStartFrame, kMax ) { Vec_PtrForEachEntry( Pdr_Set_t *, vArrayK, pCubeK, j ) { - RetValue = Pdr_ManCheckCube( p, k, pCubeK, NULL, 0, 0, 1 ); + ++counter; + RetValue = Pdr_ManCheckCube( p, k - 1, pCubeK, NULL, 0, 0, 1 ); if ( !RetValue ) { printf( "Cube[%d][%d] not inductive!\n", k, j ); @@ -97,6 +99,7 @@ int IPdr_ManCheckClauses( Pdr_Man_t * p ) assert( RetValue == 1 ); } } + printf( "XXX: Pass check clauses! %d frames and %d clauses checked\n", k, counter ); return 1; } -- cgit v1.2.3