130{
131 abctime clk = Abc_Clock(), clk2, clkTotal = 0;
134 int i, v, status, iLit,
nWords = 1, iOutVar = 1, Count = 0;
135 Vec_Int_t * vVars = Vec_IntAlloc( 1000 );
137
138
139 iLit = Abc_Var2Lit( iOutVar, 0 );
142
143
145
146
147 pSimInfo = Gia_ManMoObj(
p, Gia_ObjId(
p, Gia_ManCo(
p, 0)) );
148 for ( i = 0; i < 64*
nWords; i++ )
149 printf( "%d", Abc_InfoHasBit( (unsigned *)pSimInfo, i ) );
150 printf( "\n" );
151
152
153 for ( i = 0; i < 64*
nWords; i++ )
154 {
155 Vec_IntClear( vVars );
156 for ( v = 0; v < Gia_ManObjNum(
p); v++ )
157 {
159 continue;
160 pSimInfo = Gia_ManMoObj(
p, v );
161 if ( !Abc_InfoHasBit( (unsigned *)pSimInfo, i ) )
162 continue;
163 Vec_IntPush( vVars, pCnf->
pVarNums[v] );
164 }
165
166
167
168 clk2 = Abc_Clock();
170 clkTotal += Abc_Clock() - clk2;
171 printf(
"%c", status ==
l_True ?
'+' :
'-' );
173 Count++;
174 }
175 printf( "\n" );
176 printf( "Finished generating %d assignments. ", Count );
177 Abc_PrintTime( 1, "Time", Abc_Clock() - clk );
178 Abc_PrintTime( 1, "SAT solver time", clkTotal );
179
180 Vec_WrdFreeP( &
p->vSims );
181 Vec_IntFree( vVars );
184 return 1;
185}
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
void Gia_ManMoFindSimulate(Gia_Man_t *p, int nWords)
#define sat_solver_addclause
struct Cnf_Dat_t_ Cnf_Dat_t
void Cnf_DataFree(Cnf_Dat_t *p)
void * Mf_ManGenerateCnf(Gia_Man_t *pGia, int nLutSize, int fCnfObjIds, int fAddOrCla, int fMapping, int fVerbose)
unsigned __int64 word
DECLARATIONS ///.
void * Cnf_DataWriteIntoSolver(Cnf_Dat_t *p, int nFrames, int fInit)
void sat_solver_delete(sat_solver *s)