std::vector<TypeNode> argts;
if (tdb->canConstructKind(tn, d_req_kind, argts))
{
- bool ret = true;
for (std::map<unsigned, ReqTrie>::iterator it = d_children.begin();
it != d_children.end();
++it)
return false;
}
}
- if (!ret)
- {
- return false;
- }
}
else
{
CandidateRewriteDatabaseGen::CandidateRewriteDatabaseGen(
std::vector<Node>& vars, unsigned nsamples)
- : d_vars(vars.begin(), vars.end()), d_nsamples(nsamples)
+ : d_qe(nullptr), d_vars(vars.begin(), vars.end()), d_nsamples(nsamples)
{
}
activateInstantiationVariable(pv, i);
//get the instantiator object
- Instantiator * vinst = NULL;
- std::map< Node, Instantiator * >::iterator itin = d_instantiator.find( pv );
- if( itin!=d_instantiator.end() ){
- vinst = itin->second;
- }
+ Assert(d_instantiator.find(pv) != d_instantiator.end());
+ Instantiator* vinst = d_instantiator[pv];
Assert( vinst!=NULL );
d_active_instantiators[pv] = vinst;
vinst->reset(this, sf, pv, d_effort);
: d_id(0),
d_status(0),
d_status_num(0),
+ d_status_child_num(0),
d_match_status(0),
d_match_status_child_num(0),
d_match_mode(0)
}
CandidateGeneratorQE::CandidateGeneratorQE(QuantifiersEngine* qe, Node pat)
- : CandidateGenerator(qe), d_term_iter(-1), d_term_iter_limit(0)
+ : CandidateGenerator(qe),
+ d_term_iter(-1),
+ d_term_iter_limit(0),
+ d_mode(cand_term_none)
{
d_op = qe->getTermDatabase()->getMatchOperator( pat );
Assert( !d_op.isNull() );
bool setBoundVar = false;
if( it->second==BOUND_INT_RANGE ){
//must have both
- if( bound_lit_map[0].find( v )!=bound_lit_map[0].end() && bound_lit_map[1].find( v )!=bound_lit_map[1].end() ){
+ std::map<Node, Node>& blm0 = bound_lit_map[0];
+ std::map<Node, Node>& blm1 = bound_lit_map[1];
+ if (blm0.find(v) != blm0.end() && blm1.find(v) != blm1.end())
+ {
setBoundedVar( f, v, BOUND_INT_RANGE );
setBoundVar = true;
for( unsigned b=0; b<2; b++ ){
}
if( pol ){
if( status==EqualityQueryInstProp::STATUS_MERGED_KNOWN ){
- Trace("qip-rlv-propagate") << "Relevant propagation : " << a << ( pol ? " == " : " != " ) << b << std::endl;
+ Trace("qip-rlv-propagate")
+ << "Relevant propagation : " << a << " == " << b << std::endl;
Assert( d_qy.getEngine()->hasTerm( a ) );
Assert( d_qy.getEngine()->hasTerm( b ) );
Trace("qip-prop-debug") << "...equality between known terms." << std::endl;
class PointSeparator : public LazyTrieEvaluator
{
public:
+ PointSeparator() : d_dt(nullptr) {}
/** initializes this class */
void initialize(DecisionTreeInfo* dt);
/**