ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
pdrInt.h
Go to the documentation of this file.
1
20
21#ifndef ABC__sat__pdr__pdrInt_h
22#define ABC__sat__pdr__pdrInt_h
23
27
28#include "aig/saig/saig.h"
29#include "misc/vec/vecWec.h"
30#include "sat/cnf/cnf.h"
31#include "pdr.h"
32#include "misc/hash/hashInt.h"
33#include "aig/gia/giaAig.h"
34
35//#define PDR_USE_SATOKO 1
36
37#ifndef PDR_USE_SATOKO
38 #include "sat/bsat/satSolver.h"
39#else
40 #include "sat/satoko/satoko.h"
41 #define l_Undef 0
42 #define l_True 1
43 #define l_False -1
44 #define sat_solver satoko_t
45 #define sat_solver_new satoko_create
46 #define sat_solver_delete satoko_destroy
47 #define zsat_solver_new_seed(s) satoko_create()
48 #define zsat_solver_restart_seed(s,a) satoko_reset(s)
49 #define sat_solver_nvars satoko_varnum
50 #define sat_solver_setnvars satoko_setnvars
51 #define sat_solver_addclause(s,b,e) satoko_add_clause(s,b,e-b)
52 #define sat_solver_final satoko_final_conflict
53 #define sat_solver_solve(s,b,e,c,x,y,z) satoko_solve_assumptions_limit(s,b,e-b,(int)c)
54 #define sat_solver_var_value satoko_read_cex_varvalue
55 #define sat_solver_set_runtime_limit satoko_set_runtime_limit
56 #define sat_solver_set_runid satoko_set_runid
57 #define sat_solver_set_stop_func satoko_set_stop_func
58 #define sat_solver_compress(s)
59#endif
60
62
66
70
71typedef struct Txs_Man_t_ Txs_Man_t;
72typedef struct Txs3_Man_t_ Txs3_Man_t;
73
74typedef struct Pdr_Set_t_ Pdr_Set_t;
76{
77 word Sign; // signature
78 int nRefs; // ref counter
79 int nTotal; // total literals
80 int nLits; // num flop literals
81 int Lits[0];
82};
83
84typedef struct Pdr_Obl_t_ Pdr_Obl_t;
86{
87 int iFrame; // time frame
88 int prio; // priority
89 int nRefs; // reference counter
90 Pdr_Set_t * pState; // state cube
91 Pdr_Obl_t * pNext; // next one
92 Pdr_Obl_t * pLink; // queue link
93};
94
95typedef struct Pdr_Man_t_ Pdr_Man_t;
97{
98 // input problem
99 Pdr_Par_t * pPars; // parameters
100 Aig_Man_t * pAig; // user's AIG
101 Gia_Man_t * pGia; // user's AIG
102 // static CNF representation
103 Cnf_Man_t * pCnfMan; // CNF manager
104 Cnf_Dat_t * pCnf1; // CNF for this AIG
105 Vec_Int_t * vVar2Reg; // mapping of SAT var into registers
106 // dynamic CNF representation
107 Cnf_Dat_t * pCnf2; // CNF for this AIG
108 Vec_Int_t * pvId2Vars; // for each used ObjId, maps frame into SAT var
109 Vec_Ptr_t vVar2Ids; // for each used frame, maps SAT var into ObjId
110 Vec_Wec_t * vVLits; // CNF literals
111 // data representation
112 int iOutCur; // current output
113 int nPrioShift;// priority shift
114 Vec_Ptr_t * vCexes; // counter-examples for each output
115 Vec_Ptr_t * vSolvers; // SAT solvers
116 Vec_Vec_t * vClauses; // clauses by timeframe
117 Pdr_Obl_t * pQueue; // proof obligations
118 int * pOrder; // ordering of the lits
119 Vec_Int_t * vActVars; // the counter of activation variables
120 int iUseFrame; // the first used frame
121 int nAbsFlops; // the number of flops used
122 Vec_Int_t * vAbsFlops; // flops currently used
127 // terminary simulation
129 // internal use
130 Vec_Int_t * vPrio; // priority flops
131 Vec_Int_t * vLits; // array of literals
132 Vec_Int_t * vCiObjs; // cone leaves
133 Vec_Int_t * vCoObjs; // cone roots
134 Vec_Int_t * vCiVals; // cone leaf values
135 Vec_Int_t * vCoVals; // cone root values
136 Vec_Int_t * vNodes; // cone nodes
137 Vec_Int_t * vUndo; // cone undos
138 Vec_Int_t * vVisits; // intermediate
139 Vec_Int_t * vCi2Rem; // CIs to be removed
140 Vec_Int_t * vRes; // final result
141 abctime * pTime4Outs;// timeout per output
142 Vec_Ptr_t * vInfCubes; // infinity clauses/cubes
143 // statistics
144 int nBlocks; // the number of times blockState was called
145 int nObligs; // the number of proof obligations derived
146 int nCubes; // the number of cubes derived
147 int nCalls; // the number of SAT calls
148 int nCallsS; // the number of SAT calls (sat)
149 int nCallsU; // the number of SAT calls (unsat)
150 int nStarts; // the number of SAT solver restarts
151 int nFrames; // frames explored
161 // runtime
164 // time stats
175};
176
180
181static inline sat_solver * Pdr_ManSolver( Pdr_Man_t * p, int k ) { return (sat_solver *)Vec_PtrEntry(p->vSolvers, k); }
182
183static inline abctime Pdr_ManTimeLimit( Pdr_Man_t * p )
184{
185 if ( p->timeToStop == 0 )
186 return p->timeToStopOne;
187 if ( p->timeToStopOne == 0 )
188 return p->timeToStop;
189 if ( p->timeToStop < p->timeToStopOne )
190 return p->timeToStop;
191 return p->timeToStopOne;
192}
193
197
198/*=== pdrCnf.c ==========================================================*/
199extern int Pdr_ObjSatVar( Pdr_Man_t * p, int k, int Pol, Aig_Obj_t * pObj );
200extern int Pdr_ObjRegNum( Pdr_Man_t * p, int k, int iSatVar );
201extern int Pdr_ManFreeVar( Pdr_Man_t * p, int k );
202extern sat_solver * Pdr_ManNewSolver( sat_solver * pSat, Pdr_Man_t * p, int k, int fInit );
203/*=== pdrCore.c ==========================================================*/
204extern int Pdr_ManCheckContainment( Pdr_Man_t * p, int k, Pdr_Set_t * pSet );
205/*=== pdrInv.c ==========================================================*/
207extern void Pdr_ManPrintProgress( Pdr_Man_t * p, int fClose, abctime Time );
208extern void Pdr_ManPrintClauses( Pdr_Man_t * p, int kStart );
209extern void Pdr_ManDumpClauses( Pdr_Man_t * p, char * pFileName, int fProved );
211extern void Pdr_ManReportInvariant( Pdr_Man_t * p );
212extern void Pdr_ManVerifyInvariant( Pdr_Man_t * p );
213extern Vec_Int_t * Pdr_ManDeriveInfinityClauses( Pdr_Man_t * p, int fReduce );
214/*=== pdrMan.c ==========================================================*/
215extern Pdr_Man_t * Pdr_ManStart( Aig_Man_t * pAig, Pdr_Par_t * pPars, Vec_Int_t * vPrioInit );
216extern void Pdr_ManStop( Pdr_Man_t * p );
219/*=== pdrSat.c ==========================================================*/
220extern sat_solver * Pdr_ManCreateSolver( Pdr_Man_t * p, int k );
221extern sat_solver * Pdr_ManFetchSolver( Pdr_Man_t * p, int k );
222extern void Pdr_ManSetPropertyOutput( Pdr_Man_t * p, int k );
223extern Vec_Int_t * Pdr_ManCubeToLits( Pdr_Man_t * p, int k, Pdr_Set_t * pCube, int fCompl, int fNext );
224extern Vec_Int_t * Pdr_ManLitsToCube( Pdr_Man_t * p, int k, int * pArray, int nArray );
225extern void Pdr_ManSolverAddClause( Pdr_Man_t * p, int k, Pdr_Set_t * pCube );
226extern void Pdr_ManCollectValues( Pdr_Man_t * p, int k, Vec_Int_t * vObjIds, Vec_Int_t * vValues );
227extern int Pdr_ManCheckCubeCs( Pdr_Man_t * p, int k, Pdr_Set_t * pCube );
228extern int Pdr_ManCheckCube( Pdr_Man_t * p, int k, Pdr_Set_t * pCube, Pdr_Set_t ** ppPred, int nConfLimit, int fTryConf, int fUseLit );
229/*=== pdrTsim.c ==========================================================*/
230extern Pdr_Set_t * Pdr_ManTernarySim( Pdr_Man_t * p, int k, Pdr_Set_t * pCube );
231/*=== pdrTsim2.c ==========================================================*/
232extern Txs_Man_t * Txs_ManStart( Pdr_Man_t * pMan, Aig_Man_t * pAig, Vec_Int_t * vPrio );
233extern void Txs_ManStop( Txs_Man_t * );
234extern Pdr_Set_t * Txs_ManTernarySim( Txs_Man_t * p, int k, Pdr_Set_t * pCube );
235/*=== pdrTsim3.c ==========================================================*/
236extern Txs3_Man_t * Txs3_ManStart( Pdr_Man_t * pMan, Aig_Man_t * pAig, Vec_Int_t * vPrio );
237extern void Txs3_ManStop( Txs3_Man_t * );
238extern Pdr_Set_t * Txs3_ManTernarySim( Txs3_Man_t * p, int k, Pdr_Set_t * pCube );
239/*=== pdrUtil.c ==========================================================*/
240extern Pdr_Set_t * Pdr_SetAlloc( int nSize );
241extern Pdr_Set_t * Pdr_SetCreate( Vec_Int_t * vLits, Vec_Int_t * vPiLits );
242extern Pdr_Set_t * Pdr_SetCreateFrom( Pdr_Set_t * pSet, int iRemove );
243extern Pdr_Set_t * Pdr_SetCreateSubset( Pdr_Set_t * pSet, int * pLits, int nLits );
244extern Pdr_Set_t * Pdr_SetDup( Pdr_Set_t * pSet );
245extern Pdr_Set_t * Pdr_SetRef( Pdr_Set_t * p );
246extern void Pdr_SetDeref( Pdr_Set_t * p );
247extern Pdr_Set_t * ZPdr_SetIntersection( Pdr_Set_t * p1, Pdr_Set_t * p2, Hash_Int_t * keep );
248extern int Pdr_SetContains( Pdr_Set_t * pOld, Pdr_Set_t * pNew );
249extern int Pdr_SetContainsSimple( Pdr_Set_t * pOld, Pdr_Set_t * pNew );
250extern int Pdr_SetIsInit( Pdr_Set_t * p, int iRemove );
251extern int ZPdr_SetIsInit( Pdr_Set_t * p );
252extern void Pdr_SetPrint( FILE * pFile, Pdr_Set_t * p, int nRegs, Vec_Int_t * vFlopCounts );
253extern void ZPdr_SetPrint( Pdr_Set_t * p );
254extern void Pdr_SetPrintStr( Vec_Str_t * vStr, Pdr_Set_t * p, int nRegs, Vec_Int_t * vFlopCounts );
255extern int Pdr_SetCompare( Pdr_Set_t ** pp1, Pdr_Set_t ** pp2 );
256extern Pdr_Obl_t * Pdr_OblStart( int k, int prio, Pdr_Set_t * pState, Pdr_Obl_t * pNext );
257extern Pdr_Obl_t * Pdr_OblRef( Pdr_Obl_t * p );
258extern void Pdr_OblDeref( Pdr_Obl_t * p );
259extern int Pdr_QueueIsEmpty( Pdr_Man_t * p );
260extern Pdr_Obl_t * Pdr_QueueHead( Pdr_Man_t * p );
261extern Pdr_Obl_t * Pdr_QueuePop( Pdr_Man_t * p );
262extern void Pdr_QueueClean( Pdr_Man_t * p );
263extern void Pdr_QueuePush( Pdr_Man_t * p, Pdr_Obl_t * pObl );
264extern void Pdr_QueuePrint( Pdr_Man_t * p );
265extern void Pdr_QueueStop( Pdr_Man_t * p );
266
268
269
270#endif
271
275
ABC_INT64_T abctime
Definition abc_global.h:332
#define ABC_NAMESPACE_HEADER_END
#define ABC_NAMESPACE_HEADER_START
NAMESPACES ///.
struct Aig_Obj_t_ Aig_Obj_t
Definition aig.h:51
typedefABC_NAMESPACE_HEADER_START struct Aig_Man_t_ Aig_Man_t
INCLUDES ///.
Definition aig.h:50
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
Definition bblif.c:37
struct Vec_Str_t_ Vec_Str_t
Definition bblif.c:46
#define sat_solver
Definition cecSatG2.c:34
typedefABC_NAMESPACE_HEADER_START struct Cnf_Man_t_ Cnf_Man_t
INCLUDES ///.
Definition cnf.h:51
struct Cnf_Dat_t_ Cnf_Dat_t
Definition cnf.h:52
Cube * p
Definition exorList.c:222
struct Gia_Man_t_ Gia_Man_t
Definition gia.h:96
struct Hash_Int_t_ Hash_Int_t
PARAMETERS ///.
Definition hashInt.h:45
unsigned __int64 word
DECLARATIONS ///.
Definition kitPerm.c:36
void Pdr_QueueStop(Pdr_Man_t *p)
Definition pdrUtil.c:699
sat_solver * Pdr_ManNewSolver(sat_solver *pSat, Pdr_Man_t *p, int k, int fInit)
Definition pdrCnf.c:439
Vec_Int_t * Pdr_ManDeriveInfinityClauses(Pdr_Man_t *p, int fReduce)
Definition pdrInv.c:595
sat_solver * Pdr_ManFetchSolver(Pdr_Man_t *p, int k)
Definition pdrSat.c:77
void Pdr_ManPrintClauses(Pdr_Man_t *p, int kStart)
Definition pdrInv.c:244
int Pdr_ManCheckCubeCs(Pdr_Man_t *p, int k, Pdr_Set_t *pCube)
Definition pdrSat.c:262
Vec_Int_t * Pdr_ManCountFlopsInv(Pdr_Man_t *p)
Definition pdrInv.c:196
void Pdr_QueueClean(Pdr_Man_t *p)
Definition pdrUtil.c:632
Pdr_Set_t * Pdr_SetCreate(Vec_Int_t *vLits, Vec_Int_t *vPiLits)
Definition pdrUtil.c:65
void Pdr_ManDumpClauses(Pdr_Man_t *p, char *pFileName, int fProved)
Definition pdrInv.c:352
void Pdr_OblDeref(Pdr_Obl_t *p)
Definition pdrUtil.c:556
Pdr_Obl_t * Pdr_OblRef(Pdr_Obl_t *p)
Definition pdrUtil.c:539
Pdr_Set_t * ZPdr_SetIntersection(Pdr_Set_t *p1, Pdr_Set_t *p2, Hash_Int_t *keep)
Definition pdrUtil.c:283
Pdr_Set_t * Pdr_SetDup(Pdr_Set_t *pSet)
Definition pdrUtil.c:166
int Pdr_ManCheckCube(Pdr_Man_t *p, int k, Pdr_Set_t *pCube, Pdr_Set_t **ppPred, int nConfLimit, int fTryConf, int fUseLit)
Definition pdrSat.c:290
struct Pdr_Set_t_ Pdr_Set_t
Definition pdrInt.h:74
Pdr_Man_t * Pdr_ManStart(Aig_Man_t *pAig, Pdr_Par_t *pPars, Vec_Int_t *vPrioInit)
Definition pdrMan.c:248
void Pdr_SetDeref(Pdr_Set_t *p)
Definition pdrUtil.c:208
Pdr_Set_t * Txs3_ManTernarySim(Txs3_Man_t *p, int k, Pdr_Set_t *pCube)
Definition pdrTsim3.c:188
void Txs_ManStop(Txs_Man_t *)
Definition pdrTsim2.c:82
Pdr_Obl_t * Pdr_OblStart(int k, int prio, Pdr_Set_t *pState, Pdr_Obl_t *pNext)
Definition pdrUtil.c:515
Txs3_Man_t * Txs3_ManStart(Pdr_Man_t *pMan, Aig_Man_t *pAig, Vec_Int_t *vPrio)
FUNCTION DEFINITIONS ///.
Definition pdrTsim3.c:63
int Pdr_QueueIsEmpty(Pdr_Man_t *p)
Definition pdrUtil.c:578
Pdr_Set_t * Pdr_ManTernarySim(Pdr_Man_t *p, int k, Pdr_Set_t *pCube)
Definition pdrTsim.c:351
Abc_Cex_t * Pdr_ManDeriveCexAbs(Pdr_Man_t *p)
Definition pdrMan.c:448
void Txs3_ManStop(Txs3_Man_t *)
Definition pdrTsim3.c:87
int Pdr_SetContains(Pdr_Set_t *pOld, Pdr_Set_t *pNew)
Definition pdrUtil.c:382
void Pdr_QueuePush(Pdr_Man_t *p, Pdr_Obl_t *pObl)
Definition pdrUtil.c:651
void Pdr_SetPrintStr(Vec_Str_t *vStr, Pdr_Set_t *p, int nRegs, Vec_Int_t *vFlopCounts)
Definition pdrUtil.c:342
void Pdr_ManStop(Pdr_Man_t *p)
Definition pdrMan.c:318
void Pdr_ManPrintProgress(Pdr_Man_t *p, int fClose, abctime Time)
DECLARATIONS ///.
Definition pdrInv.c:48
Pdr_Set_t * Pdr_SetRef(Pdr_Set_t *p)
Definition pdrUtil.c:191
void Pdr_SetPrint(FILE *pFile, Pdr_Set_t *p, int nRegs, Vec_Int_t *vFlopCounts)
Definition pdrUtil.c:225
Pdr_Set_t * Pdr_SetCreateFrom(Pdr_Set_t *pSet, int iRemove)
Definition pdrUtil.c:98
int Pdr_ManFreeVar(Pdr_Man_t *p, int k)
Definition pdrCnf.c:332
struct Txs3_Man_t_ Txs3_Man_t
Definition pdrInt.h:72
void Pdr_ManSetPropertyOutput(Pdr_Man_t *p, int k)
Definition pdrSat.c:179
Pdr_Obl_t * Pdr_QueuePop(Pdr_Man_t *p)
Definition pdrUtil.c:610
struct Pdr_Obl_t_ Pdr_Obl_t
Definition pdrInt.h:84
int Pdr_SetIsInit(Pdr_Set_t *p, int iRemove)
Definition pdrUtil.c:460
typedefABC_NAMESPACE_HEADER_START struct Txs_Man_t_ Txs_Man_t
INCLUDES ///.
Definition pdrInt.h:71
void Pdr_ManReportInvariant(Pdr_Man_t *p)
Definition pdrInv.c:477
Vec_Int_t * Pdr_ManLitsToCube(Pdr_Man_t *p, int k, int *pArray, int nArray)
Definition pdrSat.c:117
int Pdr_SetContainsSimple(Pdr_Set_t *pOld, Pdr_Set_t *pNew)
Definition pdrUtil.c:420
void ZPdr_SetPrint(Pdr_Set_t *p)
Definition pdrUtil.c:263
int Pdr_ObjSatVar(Pdr_Man_t *p, int k, int Pol, Aig_Obj_t *pObj)
FUNCTION DECLARATIONS ///.
Definition pdrCnf.c:241
int Pdr_SetCompare(Pdr_Set_t **pp1, Pdr_Set_t **pp2)
Definition pdrUtil.c:485
sat_solver * Pdr_ManCreateSolver(Pdr_Man_t *p, int k)
DECLARATIONS ///.
Definition pdrSat.c:45
void Pdr_ManVerifyInvariant(Pdr_Man_t *p)
Definition pdrInv.c:500
void Pdr_QueuePrint(Pdr_Man_t *p)
Definition pdrUtil.c:681
struct Pdr_Man_t_ Pdr_Man_t
Definition pdrInt.h:95
Pdr_Obl_t * Pdr_QueueHead(Pdr_Man_t *p)
Definition pdrUtil.c:594
Vec_Int_t * Pdr_ManCubeToLits(Pdr_Man_t *p, int k, Pdr_Set_t *pCube, int fCompl, int fNext)
Definition pdrSat.c:144
int Pdr_ObjRegNum(Pdr_Man_t *p, int k, int iSatVar)
Definition pdrCnf.c:312
Pdr_Set_t * Txs_ManTernarySim(Txs_Man_t *p, int k, Pdr_Set_t *pCube)
Definition pdrTsim2.c:490
Abc_Cex_t * Pdr_ManDeriveCex(Pdr_Man_t *p)
Definition pdrMan.c:408
Pdr_Set_t * Pdr_SetAlloc(int nSize)
DECLARATIONS ///.
Definition pdrUtil.c:46
Vec_Str_t * Pdr_ManDumpString(Pdr_Man_t *p)
Definition pdrInv.c:435
int Pdr_ManCheckContainment(Pdr_Man_t *p, int k, Pdr_Set_t *pSet)
Definition pdrCore.c:390
void Pdr_ManSolverAddClause(Pdr_Man_t *p, int k, Pdr_Set_t *pCube)
Definition pdrSat.c:213
Pdr_Set_t * Pdr_SetCreateSubset(Pdr_Set_t *pSet, int *pLits, int nLits)
Definition pdrUtil.c:132
Txs_Man_t * Txs_ManStart(Pdr_Man_t *pMan, Aig_Man_t *pAig, Vec_Int_t *vPrio)
FUNCTION DEFINITIONS ///.
Definition pdrTsim2.c:60
int ZPdr_SetIsInit(Pdr_Set_t *p)
void Pdr_ManCollectValues(Pdr_Man_t *p, int k, Vec_Int_t *vObjIds, Vec_Int_t *vValues)
Definition pdrSat.c:236
typedefABC_NAMESPACE_HEADER_START struct Pdr_Par_t_ Pdr_Par_t
INCLUDES ///.
Definition pdr.h:40
Vec_Ptr_t vVar2Ids
Definition pdrInt.h:109
abctime timeToStop
Definition pdrInt.h:162
abctime tSatSat
Definition pdrInt.h:166
Cnf_Man_t * pCnfMan
Definition pdrInt.h:103
Vec_Int_t * vNodes
Definition pdrInt.h:136
Vec_Int_t * vAbsFlops
Definition pdrInt.h:122
int nQueMax
Definition pdrInt.h:157
Vec_Wec_t * vVLits
Definition pdrInt.h:110
abctime tCnf
Definition pdrInt.h:172
abctime tContain
Definition pdrInt.h:171
abctime tPush
Definition pdrInt.h:169
int * pOrder
Definition pdrInt.h:118
Vec_Int_t * vRes
Definition pdrInt.h:140
int nCubes
Definition pdrInt.h:146
Cnf_Dat_t * pCnf1
Definition pdrInt.h:104
int nCallsS
Definition pdrInt.h:148
int nCasesSU
Definition pdrInt.h:153
abctime tAbs
Definition pdrInt.h:173
Vec_Int_t * vMapPpi2Ff
Definition pdrInt.h:124
int nBlocks
Definition pdrInt.h:144
int nAbsFlops
Definition pdrInt.h:121
Vec_Int_t * vCoVals
Definition pdrInt.h:135
abctime * pTime4Outs
Definition pdrInt.h:141
Vec_Int_t * vVisits
Definition pdrInt.h:138
Vec_Int_t * vCoObjs
Definition pdrInt.h:133
Pdr_Obl_t * pQueue
Definition pdrInt.h:117
Vec_Int_t * vActVars
Definition pdrInt.h:119
Vec_Vec_t * vClauses
Definition pdrInt.h:116
int nQueCur
Definition pdrInt.h:156
int iUseFrame
Definition pdrInt.h:120
Vec_Ptr_t * vCexes
Definition pdrInt.h:114
int nCallsU
Definition pdrInt.h:149
Vec_Int_t * vCiVals
Definition pdrInt.h:134
int nCasesUS
Definition pdrInt.h:154
Vec_Int_t * vCi2Rem
Definition pdrInt.h:139
abctime tGeneral
Definition pdrInt.h:168
Gia_Man_t * pGia
Definition pdrInt.h:101
int nCasesSS
Definition pdrInt.h:152
int nCalls
Definition pdrInt.h:147
abctime tSatUnsat
Definition pdrInt.h:167
abctime timeToStopOne
Definition pdrInt.h:163
int nFrames
Definition pdrInt.h:151
Vec_Int_t * vLits
Definition pdrInt.h:131
int nQueLim
Definition pdrInt.h:158
int nCexesTotal
Definition pdrInt.h:126
Vec_Int_t * vMapFf2Ppi
Definition pdrInt.h:123
Vec_Int_t * vPrio
Definition pdrInt.h:130
Vec_Ptr_t * vInfCubes
Definition pdrInt.h:142
Txs3_Man_t * pTxs3
Definition pdrInt.h:128
int nCasesUU
Definition pdrInt.h:155
int iOutCur
Definition pdrInt.h:112
Cnf_Dat_t * pCnf2
Definition pdrInt.h:107
int nPrioShift
Definition pdrInt.h:113
int nCexes
Definition pdrInt.h:125
Vec_Int_t * vCiObjs
Definition pdrInt.h:132
Vec_Int_t * vVar2Reg
Definition pdrInt.h:105
int nXsimLits
Definition pdrInt.h:160
int nObligs
Definition pdrInt.h:145
int nStarts
Definition pdrInt.h:150
abctime tTotal
Definition pdrInt.h:174
Vec_Int_t * pvId2Vars
Definition pdrInt.h:108
int nXsimRuns
Definition pdrInt.h:159
abctime tTsim
Definition pdrInt.h:170
Vec_Ptr_t * vSolvers
Definition pdrInt.h:115
Pdr_Par_t * pPars
Definition pdrInt.h:99
Aig_Man_t * pAig
Definition pdrInt.h:100
abctime tSat
Definition pdrInt.h:165
Vec_Int_t * vUndo
Definition pdrInt.h:137
int prio
Definition pdrInt.h:88
Pdr_Obl_t * pLink
Definition pdrInt.h:92
Pdr_Obl_t * pNext
Definition pdrInt.h:91
int nRefs
Definition pdrInt.h:89
Pdr_Set_t * pState
Definition pdrInt.h:90
int iFrame
Definition pdrInt.h:87
int nRefs
Definition pdrInt.h:78
int nTotal
Definition pdrInt.h:79
int Lits[0]
Definition pdrInt.h:81
int nLits
Definition pdrInt.h:80
word Sign
Definition pdrInt.h:77
DECLARATIONS ///.
Definition pdrTsim3.c:31
DECLARATIONS ///.
Definition pdrTsim2.c:31
typedefABC_NAMESPACE_HEADER_START struct Abc_Cex_t_ Abc_Cex_t
INCLUDES ///.
Definition utilCex.h:39
typedefABC_NAMESPACE_HEADER_START struct Vec_Ptr_t_ Vec_Ptr_t
INCLUDES ///.
Definition vecPtr.h:42
typedefABC_NAMESPACE_HEADER_START struct Vec_Vec_t_ Vec_Vec_t
INCLUDES ///.
Definition vecVec.h:42
typedefABC_NAMESPACE_HEADER_START struct Vec_Wec_t_ Vec_Wec_t
INCLUDES ///.
Definition vecWec.h:42