107 int pLits[4], RetValue, VarF, VarI, VarT, VarE, fCompT, fCompE;
109 assert( !Aig_IsComplement( pNode ) );
114 VarF = Ssw_ObjSatNum(
p,pNode);
115 VarI = Ssw_ObjSatNum(
p,pNodeI);
116 VarT = Ssw_ObjSatNum(
p,Aig_Regular(pNodeT));
117 VarE = Ssw_ObjSatNum(
p,Aig_Regular(pNodeE));
119 fCompT = Aig_IsComplement(pNodeT);
120 fCompE = Aig_IsComplement(pNodeE);
130 pLits[0] = toLitCond(VarI, 1);
131 pLits[1] = toLitCond(VarT, 1^fCompT);
132 pLits[2] = toLitCond(VarF, 0);
135 if ( pNodeI->
fPhase ) pLits[0] = lit_neg( pLits[0] );
136 if ( Aig_Regular(pNodeT)->fPhase ) pLits[1] = lit_neg( pLits[1] );
137 if ( pNode->
fPhase ) pLits[2] = lit_neg( pLits[2] );
141 pLits[0] = toLitCond(VarI, 1);
142 pLits[1] = toLitCond(VarT, 0^fCompT);
143 pLits[2] = toLitCond(VarF, 1);
146 if ( pNodeI->
fPhase ) pLits[0] = lit_neg( pLits[0] );
147 if ( Aig_Regular(pNodeT)->fPhase ) pLits[1] = lit_neg( pLits[1] );
148 if ( pNode->
fPhase ) pLits[2] = lit_neg( pLits[2] );
152 pLits[0] = toLitCond(VarI, 0);
153 pLits[1] = toLitCond(VarE, 1^fCompE);
154 pLits[2] = toLitCond(VarF, 0);
157 if ( pNodeI->
fPhase ) pLits[0] = lit_neg( pLits[0] );
158 if ( Aig_Regular(pNodeE)->fPhase ) pLits[1] = lit_neg( pLits[1] );
159 if ( pNode->
fPhase ) pLits[2] = lit_neg( pLits[2] );
163 pLits[0] = toLitCond(VarI, 0);
164 pLits[1] = toLitCond(VarE, 0^fCompE);
165 pLits[2] = toLitCond(VarF, 1);
168 if ( pNodeI->
fPhase ) pLits[0] = lit_neg( pLits[0] );
169 if ( Aig_Regular(pNodeE)->fPhase ) pLits[1] = lit_neg( pLits[1] );
170 if ( pNode->
fPhase ) pLits[2] = lit_neg( pLits[2] );
188 pLits[0] = toLitCond(VarT, 0^fCompT);
189 pLits[1] = toLitCond(VarE, 0^fCompE);
190 pLits[2] = toLitCond(VarF, 1);
193 if ( Aig_Regular(pNodeT)->fPhase ) pLits[0] = lit_neg( pLits[0] );
194 if ( Aig_Regular(pNodeE)->fPhase ) pLits[1] = lit_neg( pLits[1] );
195 if ( pNode->
fPhase ) pLits[2] = lit_neg( pLits[2] );
199 pLits[0] = toLitCond(VarT, 1^fCompT);
200 pLits[1] = toLitCond(VarE, 1^fCompE);
201 pLits[2] = toLitCond(VarF, 0);
204 if ( Aig_Regular(pNodeT)->fPhase ) pLits[0] = lit_neg( pLits[0] );
205 if ( Aig_Regular(pNodeE)->fPhase ) pLits[1] = lit_neg( pLits[1] );
206 if ( pNode->
fPhase ) pLits[2] = lit_neg( pLits[2] );
226 int * pLits, nLits, RetValue, i;
227 assert( !Aig_IsComplement(pNode) );
228 assert( Aig_ObjIsNode( pNode ) );
230 nLits = Vec_PtrSize(vSuper) + 1;
236 pLits[0] = toLitCond(Ssw_ObjSatNum(
p,Aig_Regular(pFanin)), Aig_IsComplement(pFanin));
237 pLits[1] = toLitCond(Ssw_ObjSatNum(
p,pNode), 1);
240 if ( Aig_Regular(pFanin)->fPhase ) pLits[0] = lit_neg( pLits[0] );
241 if ( pNode->
fPhase ) pLits[1] = lit_neg( pLits[1] );
249 pLits[i] = toLitCond(Ssw_ObjSatNum(
p,Aig_Regular(pFanin)), !Aig_IsComplement(pFanin));
252 if ( Aig_Regular(pFanin)->fPhase ) pLits[i] = lit_neg( pLits[i] );
255 pLits[nLits-1] = toLitCond(Ssw_ObjSatNum(
p,pNode), 0);
258 if ( pNode->
fPhase ) pLits[nLits-1] = lit_neg( pLits[nLits-1] );