156     int * pMapping, 
Var, i;
 
  159     for ( i = 0; i < nVarsMax; i++ )
 
  285     if ( p->pSatMain == NULL || p->pSatTest == NULL || p->pSatBmc == NULL )
 
  331         vVec->pArray[i] = 
lit_neg( vVec->pArray[i] );
 
  348     int RetValue, iVar, i;
 
  350     RetValue = 
sat_solver_solve( p->pSatMain, NULL, NULL, (ABC_INT64_T)nBTLimit, (ABC_INT64_T)0, (ABC_INT64_T)0, (ABC_INT64_T)0 );
 
  384         (ABC_INT64_T)nBTLimit, (ABC_INT64_T)0, (ABC_INT64_T)0, (ABC_INT64_T)0 );
 
  428     int RetValue, iVar, i;
 
  441     for ( i = p->nSatVarsTestBeg; i < p->nSatVarsTestCur - 1; i++ )
 
  446         (ABC_INT64_T)nBTLimit, (ABC_INT64_T)0, (ABC_INT64_T)0, (ABC_INT64_T)0 );
 
  475     int LitM, LitN, VarM, VarN, i, j, k;
 
  487         else if ( VarM > VarN )
 
  568     int iLit, iLit2, i, k;
 
  600     int LitM, VarM, VarN, i, j, k;
 
  611         else if ( VarM > VarN )
 
  640     int Iter, RetValue, fFailed, i;
 
  646         printf( 
"The property is trivially inductive.\n" );
 
  653             printf( 
"%4d : ", Iter );
 
  656         if ( fVerbose && fVeryVerbose )
 
  674                     printf( 
"\nProperty is proved after %d iterations.\n", Iter+1 );
 
  684                 printf( 
" Reducing failed after %d iterations (BMC failed).\n", i );
 
  690                 printf( 
" Reducing failed after %d iterations (nothing left).\n", i );
 
  695         if ( fVerbose && fVeryVerbose )
 
  698             printf( 
" LitsInd = %3d.  ", 
Vec_IntSize(p->vCexMain) );
 
  705         if ( fVerbose && fVeryVerbose )
 
  708             printf( 
" LitsRed = %3d.  ", 
Vec_IntSize(p->vCexMain) );
 
  719         if ( p->pSatMain->qtail != p->pSatMain->qhead )
 
  723             assert( p->pSatMain->qtail == p->pSatMain->qhead );
 
  728     if ( Iter == nIters )
 
  730         printf( 
"Property is not proved after %d iterations.\n", nIters );
 
  733     printf( 
"Property is proved after %d iterations.\n", Iter );
 
static int * Vec_IntArray(Vec_Int_t *p)
void Fra_ClauMinimizeClause_rec(Cla_Man_t *p, Vec_Int_t *vBasis, Vec_Int_t *vExtra)
Vec_Int_t * Fra_ClauSaveLatchVars(Aig_Man_t *pMan, Cnf_Dat_t *pCnf, int fCsVars)
FUNCTION DEFINITIONS ///. 
void Fra_ClauMinimizeClause(Cla_Man_t *p, Vec_Int_t *vBasis, Vec_Int_t *vExtra)
typedefABC_NAMESPACE_HEADER_START struct Aig_Man_t_ Aig_Man_t
INCLUDES ///. 
void Fra_ClauPrintClause(Vec_Int_t *vSatCsVars, Vec_Int_t *vCex)
int sat_solver_addclause(sat_solver *s, lit *begin, lit *end)
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///. 
void Aig_ManStop(Aig_Man_t *p)
int sat_solver_solve(sat_solver *s, lit *begin, lit *end, ABC_INT64_T nConfLimit, ABC_INT64_T nInsLimit, ABC_INT64_T nConfLimitGlobal, ABC_INT64_T nInsLimitGlobal)
static int lit_var(lit l)
void sat_solver_delete(sat_solver *s)
#define Vec_IntForEachEntryReverse(vVec, pEntry, i)
int Fra_Clau(Aig_Man_t *pMan, int nIters, int fVerbose, int fVeryVerbose)
#define Aig_ManForEachCi(p, pObj, i)
ITERATORS ///. 
void Fra_ClauReduceClause(Vec_Int_t *vMain, Vec_Int_t *vNew)
#define Aig_ManForEachCo(p, pObj, i)
#define ABC_ALLOC(type, num)
Vec_Int_t * Fra_ClauSaveInputVars(Aig_Man_t *pMan, Cnf_Dat_t *pCnf, int nStarting)
Aig_Man_t * Aig_ManFrames(Aig_Man_t *pAig, int nFs, int fInit, int fOuts, int fRegs, int fEnlarge, Aig_Obj_t ***ppObjMap)
FUNCTION DEFINITIONS ///. 
Vec_Int_t * Fra_ClauSaveOutputVars(Aig_Man_t *pMan, Cnf_Dat_t *pCnf)
static lit lit_neg(lit l)
static void Vec_IntWriteEntry(Vec_Int_t *p, int i, int Entry)
static int Aig_ManCoNum(Aig_Man_t *p)
int Fra_ClauCheckClause(Cla_Man_t *p, Vec_Int_t *vClause, Vec_Int_t *vCex)
static Vec_Int_t * Vec_IntAlloc(int nCap)
FUNCTION DEFINITIONS ///. 
#define Aig_ManForEachLiLoSeq(p, pObjLi, pObjLo, k)
static lit toLitCond(int v, int c)
static int Vec_IntEntry(Vec_Int_t *p, int i)
static int Aig_ManCiNum(Aig_Man_t *p)
static void Vec_IntComplement(Vec_Int_t *vVec)
int sat_solver_nvars(sat_solver *s)
#define ABC_NAMESPACE_IMPL_END
void Fra_ClauStop(Cla_Man_t *p)
static void sat_solver_act_var_clear(sat_solver *s)
static void Vec_IntPush(Vec_Int_t *p, int Entry)
Vec_Int_t * vSatVarsMainCs
#define Vec_IntForEachEntryStart(vVec, Entry, i, Start)
static void Aig_ObjChild0Flip(Aig_Obj_t *pObj)
static int Aig_ManObjNumMax(Aig_Man_t *p)
#define ABC_NAMESPACE_IMPL_START
static Aig_Obj_t * Aig_ManCo(Aig_Man_t *p, int i)
Cla_Man_t * Fra_ClauStart(Aig_Man_t *pMan)
static int Aig_ManRegNum(Aig_Man_t *p)
int sat_solver_simplify(sat_solver *s)
Vec_Int_t * vSatVarsTestNs
static int Vec_IntSize(Vec_Int_t *p)
void * Cnf_DataWriteIntoSolver(Cnf_Dat_t *p, int nFrames, int fInit)
Cnf_Dat_t * Cnf_DeriveSimple(Aig_Man_t *p, int nOutputs)
static int lit_sign(lit l)
void Fra_ClauRemapClause(int *pMap, Vec_Int_t *vClause, Vec_Int_t *vRemapped, int fInv)
static void Vec_IntShrink(Vec_Int_t *p, int nSizeNew)
static int sat_solver_var_literal(sat_solver *s, int v)
typedefABC_NAMESPACE_IMPL_START struct Cla_Man_t_ Cla_Man_t
DECLARATIONS ///. 
int * Fra_ClauCreateMapping(Vec_Int_t *vSatVarsFrom, Vec_Int_t *vSatVarsTo, int nVarsMax)
void Cnf_DataFree(Cnf_Dat_t *p)
Vec_Int_t * vSatVarsTestCs
Vec_Int_t * vSatVarsBmcNs
static void Vec_IntFree(Vec_Int_t *p)
static void Vec_IntClear(Vec_Int_t *p)
#define Vec_IntForEachEntry(vVec, Entry, i)
MACRO DEFINITIONS ///. 
static Vec_Int_t * Vec_IntSplitHalf(Vec_Int_t *vVec)
int Fra_ClauCheckBmc(Cla_Man_t *p, Vec_Int_t *vClause)
int Fra_ClauCheckProperty(Cla_Man_t *p, Vec_Int_t *vCex)