49 if ( p->vDiffPairs == NULL )
58 else if ( pObj0 ==
Aig_Not(pObj1) )
93 int i, k, Value0, Value1, RetValue, fFeasible;
95 assert( p->pPars->nFramesK > 1 );
119 Abc_Print( 1,
"Node = %5d : Supp = %3d. Regs = %3d. Feasible = %s. ",
121 fFeasible?
"yes":
"no " );
129 if ( Value0 != Value1 )
137 return RetValue && fFeasible;
153 Aig_Obj_t * pObj, * pObj1New, * pObj2New, * pMiter, * pTotal;
164 pMiter =
Aig_Exor( p->pFrames, pObj1New, pObj2New );
165 pTotal =
Aig_Or( p->pFrames, pTotal, pMiter );
186 assert( p->iOutputLit == -1 );
187 p->iOutputLit = pLits[0];
typedefABC_NAMESPACE_HEADER_START struct Vec_Ptr_t_ Vec_Ptr_t
INCLUDES ///.
void Ssw_CnfNodeAddToSolver(Ssw_Sat_t *p, Aig_Obj_t *pObj)
static int Saig_ObjIsLo(Aig_Man_t *p, Aig_Obj_t *pObj)
ABC_NAMESPACE_IMPL_START void Ssw_UniqueRegisterPairInfo(Ssw_Man_t *p)
DECLARATIONS ///.
Aig_Obj_t * Aig_Exor(Aig_Man_t *p, Aig_Obj_t *p0, Aig_Obj_t *p1)
static int Aig_IsComplement(Aig_Obj_t *p)
static Aig_Obj_t * Aig_Regular(Aig_Obj_t *p)
static Aig_Obj_t * Aig_ManConst0(Aig_Man_t *p)
void Aig_SupportNodes(Aig_Man_t *p, Aig_Obj_t **ppObjs, int nObjs, Vec_Ptr_t *vSupp)
typedefABC_NAMESPACE_HEADER_START struct Ssw_Man_t_ Ssw_Man_t
INCLUDES ///.
static Aig_Obj_t * Aig_Not(Aig_Obj_t *p)
int Ssw_ManGetSatVarValue(Ssw_Man_t *p, Aig_Obj_t *pObj, int f)
DECLARATIONS ///.
static int Vec_PtrSize(Vec_Ptr_t *p)
static Vec_Int_t * Vec_IntAlloc(int nCap)
FUNCTION DEFINITIONS ///.
static lit toLitCond(int v, int c)
static int Vec_IntEntry(Vec_Int_t *p, int i)
int Ssw_ManUniqueAddConstraint(Ssw_Man_t *p, Vec_Ptr_t *vCommon, int f1, int f2)
#define ABC_NAMESPACE_IMPL_END
static int Aig_ObjIsConst1(Aig_Obj_t *pObj)
Aig_Obj_t * Aig_Or(Aig_Man_t *p, Aig_Obj_t *p0, Aig_Obj_t *p1)
static int Aig_ObjPhaseReal(Aig_Obj_t *pObj)
static void Vec_IntPush(Vec_Int_t *p, int Entry)
#define Saig_ManForEachLo(p, pObj, i)
int Ssw_ManUniqueOne(Ssw_Man_t *p, Aig_Obj_t *pRepr, Aig_Obj_t *pObj, int fVerbose)
static void Abc_Print(int level, const char *format,...)
static int Saig_ManRegNum(Aig_Man_t *p)
static void Vec_PtrWriteEntry(Vec_Ptr_t *p, int i, void *Entry)
#define ABC_NAMESPACE_IMPL_START
static int Vec_IntSize(Vec_Int_t *p)
static int Saig_ManPiNum(Aig_Man_t *p)
MACRO DEFINITIONS ///.
static int Ssw_ObjSatNum(Ssw_Sat_t *p, Aig_Obj_t *pObj)
MACRO DEFINITIONS ///.
static int Aig_ObjId(Aig_Obj_t *pObj)
int Ssw_NodesAreEquiv(Ssw_Man_t *p, Aig_Obj_t *pOld, Aig_Obj_t *pNew)
DECLARATIONS ///.
#define Vec_PtrForEachEntry(Type, vVec, pEntry, i)
MACRO DEFINITIONS ///.
static int Aig_ObjIsCi(Aig_Obj_t *pObj)
static void Vec_IntClear(Vec_Int_t *p)
static void Vec_PtrShrink(Vec_Ptr_t *p, int nSizeNew)
#define Vec_IntForEachEntry(vVec, Entry, i)
MACRO DEFINITIONS ///.
static int Aig_ObjCioId(Aig_Obj_t *pObj)
static Aig_Obj_t * Ssw_ObjFrame(Ssw_Man_t *p, Aig_Obj_t *pObj, int i)