47 return Kit_TruthIsImply( pIsf->
puOn, puTruth,
p->nVars ) &&
48 Kit_TruthIsDisjoint( puTruth, pIsf->
puOff,
p->nVars );
64 int fDisableCache = 0;
66 if ( fDisableCache && Kit_WordCountOnes(pIsf->
uSupp) > 1 )
68 if ( pIsf->
uSupp == 0 )
71 if ( Kit_TruthIsConst1( pIsf->
puOn,
p->nVars ) )
74 return Bdc_Not(
p->pNodes);
76 for ( pFunc =
p->pTable[pIsf->
uSupp]; pFunc; pFunc = pFunc->pNext )
80 for ( pFunc =
p->pTable[pIsf->
uSupp]; pFunc; pFunc = pFunc->pNext )
84 return Bdc_Not(pFunc);
103 if (
p->pTable[pFunc->uSupp] == NULL )
104 Vec_IntPush(
p->vSpots, pFunc->uSupp );
105 pFunc->pNext =
p->pTable[pFunc->uSupp];
106 p->pTable[pFunc->uSupp] = pFunc;
124 p->pTable[Spot] = NULL;
125 Vec_IntClear(
p->vSpots );
#define ABC_NAMESPACE_IMPL_START
#define ABC_NAMESPACE_IMPL_END
struct Bdc_Isf_t_ Bdc_Isf_t
void Bdc_TableAdd(Bdc_Man_t *p, Bdc_Fun_t *pFunc)
ABC_NAMESPACE_IMPL_START int Bdc_TableCheckContainment(Bdc_Man_t *p, Bdc_Isf_t *pIsf, unsigned *puTruth)
DECLARATIONS ///.
void Bdc_TableClear(Bdc_Man_t *p)
Bdc_Fun_t * Bdc_TableLookup(Bdc_Man_t *p, Bdc_Isf_t *pIsf)
typedefABC_NAMESPACE_HEADER_START struct Bdc_Fun_t_ Bdc_Fun_t
INCLUDES ///.
struct Bdc_Man_t_ Bdc_Man_t
#define Vec_IntForEachEntry(vVec, Entry, i)
MACRO DEFINITIONS ///.