122 DdManager * dd =
p->dd;
123 DdNode * bRes, * E, * T;
127 fComp = Cudd_IsComplement(pUnit);
133 for ( HKey =
hashKey2(
p->Signature,pUnit,
p->nTableSize);
p->HTable[HKey].Sign ==
p->Signature; HKey = (HKey+1) %
p->nTableSize )
134 if (
p->HTable[HKey].Arg1 == pUnit )
136 bRes = (DdNode*)
p->HTable[HKey].Arg2;
138 return Cudd_NotCond( bRes, fComp );
145 bRes = cuddUniqueConst( dd, ((
double)((
int)(ABC_PTRUINT_T)(pUnit->
pE))) );
159 Cudd_RecursiveDeref(dd, E);
166 assert( !Cudd_IsComplement(T) );
168 bRes = cuddUniqueInter( dd,
p->pMapToDdVarsFinal[pUnit->
lev], T, E );
171 Cudd_RecursiveDeref(dd,E);
172 Cudd_RecursiveDeref(dd,T);
185 for ( ;
p->HTable[HKey].Sign ==
p->Signature; HKey = (HKey+1) %
p->nTableSize );
186 p->HTable[HKey].Sign =
p->Signature;
187 p->HTable[HKey].Arg1 = pUnit;
191 p->pRefNodes[
p->nRefNodes++] = bRes; Cudd_Ref( bRes );
198 return Cudd_NotCond( bRes, fComp );