mirror of https://github.com/YosysHQ/abc.git
Re-introducing floating-point activity in the SAT solver.
This commit is contained in:
parent
f2d096c9f0
commit
fce2b16a60
|
|
@ -26157,7 +26157,7 @@ int Abc_CommandPdr( Abc_Frame_t * pAbc, int argc, char ** argv )
|
|||
int c;
|
||||
Pdr_ManSetDefaultParams( pPars );
|
||||
Extra_UtilGetoptReset();
|
||||
while ( ( c = Extra_UtilGetopt( argc, argv, "MFCDRTHGSaxrmuyfsipdegoncvwzh" ) ) != EOF )
|
||||
while ( ( c = Extra_UtilGetopt( argc, argv, "MFCDRTHGSaxrmuyfsipdegonctvwzh" ) ) != EOF )
|
||||
{
|
||||
switch ( c )
|
||||
{
|
||||
|
|
@ -26308,6 +26308,9 @@ int Abc_CommandPdr( Abc_Frame_t * pAbc, int argc, char ** argv )
|
|||
case 'c':
|
||||
pPars->fCtgs ^= 1;
|
||||
break;
|
||||
case 't':
|
||||
pPars->fUseAbs ^= 1;
|
||||
break;
|
||||
case 'v':
|
||||
pPars->fVerbose ^= 1;
|
||||
break;
|
||||
|
|
@ -26349,7 +26352,7 @@ int Abc_CommandPdr( Abc_Frame_t * pAbc, int argc, char ** argv )
|
|||
return 0;
|
||||
|
||||
usage:
|
||||
Abc_Print( -2, "usage: pdr [-MFCDRTHGS <num>] [-axrmuyfsipdegoncvwzh]\n" );
|
||||
Abc_Print( -2, "usage: pdr [-MFCDRTHGS <num>] [-axrmuyfsipdegonctvwzh]\n" );
|
||||
Abc_Print( -2, "\t model checking using property directed reachability (aka IC3)\n" );
|
||||
Abc_Print( -2, "\t pioneered by Aaron R. Bradley (http://theory.stanford.edu/~arbrad/)\n" );
|
||||
Abc_Print( -2, "\t with improvements by Niklas Een (http://een.se/niklas/)\n" );
|
||||
|
|
@ -26378,6 +26381,7 @@ usage:
|
|||
Abc_Print( -2, "\t-o : toggle using property output as inductive hypothesis [default = %s]\n", pPars->fUsePropOut? "yes": "no" );
|
||||
Abc_Print( -2, "\t-n : * toggle skipping \'down\' in generalization [default = %s]\n", pPars->fSkipDown? "yes": "no" );
|
||||
Abc_Print( -2, "\t-c : * toggle handling CTGs in \'down\' [default = %s]\n", pPars->fCtgs? "yes": "no" );
|
||||
Abc_Print( -2, "\t-t : toggle using abstraction [default = %s]\n", pPars->fUseAbs? "yes": "no" );
|
||||
Abc_Print( -2, "\t-v : toggle printing optimization summary [default = %s]\n", pPars->fVerbose? "yes": "no" );
|
||||
Abc_Print( -2, "\t-w : toggle printing detailed stats default = %s]\n", pPars->fVeryVerbose? "yes": "no" );
|
||||
Abc_Print( -2, "\t-z : toggle suppressing report about solved outputs [default = %s]\n", pPars->fNotVerbose? "yes": "no" );
|
||||
|
|
|
|||
|
|
@ -63,6 +63,7 @@ struct Pdr_Par_t_
|
|||
int fSkipGeneral; // skips expensive generalization step
|
||||
int fSkipDown; // skips the application of down
|
||||
int fCtgs; // handle CTGs in down
|
||||
int fUseAbs; // use abstraction
|
||||
int fVerbose; // verbose output`
|
||||
int fVeryVerbose; // very verbose output
|
||||
int fNotVerbose; // not printing line by line progress
|
||||
|
|
|
|||
|
|
@ -90,6 +90,7 @@ struct Pdr_Man_t_
|
|||
int * pOrder; // ordering of the lits
|
||||
Vec_Int_t * vActVars; // the counter of activation variables
|
||||
int iUseFrame; // the first used frame
|
||||
Vec_Int_t * vAbs; // abstraction (mapping abstracted flop ID into its PPIs number)
|
||||
// terminary simulation
|
||||
Txs_Man_t * pTxs;
|
||||
// internal use
|
||||
|
|
|
|||
|
|
@ -286,6 +286,8 @@ Pdr_Man_t * Pdr_ManStart( Aig_Man_t * pAig, Pdr_Par_t * pPars, Vec_Int_t * vPrio
|
|||
p->vCi2Rem = Vec_IntAlloc( 100 ); // CIs to be removed
|
||||
p->vRes = Vec_IntAlloc( 100 ); // final result
|
||||
p->pCnfMan = Cnf_ManStart();
|
||||
if ( p->vAbs )
|
||||
p->vAbs = Vec_IntStart( Aig_ManRegNum(pAig) );
|
||||
// ternary simulation
|
||||
p->pTxs = pPars->fNewXSim ? Txs_ManStart( p, pAig, p->vPrio ) : NULL;
|
||||
// additional AIG data-members
|
||||
|
|
@ -368,6 +370,7 @@ void Pdr_ManStop( Pdr_Man_t * p )
|
|||
Vec_WecFreeP( &p->vVLits );
|
||||
// CNF manager
|
||||
Cnf_ManStop( p->pCnfMan );
|
||||
Vec_IntFreeP( &p->vAbs );
|
||||
// terminary simulation
|
||||
if ( p->pPars->fNewXSim )
|
||||
Txs_ManStop( p->pTxs );
|
||||
|
|
|
|||
Loading…
Reference in New Issue