d_conjuncts[2].push_back(cr);
std::unordered_set<Node, NodeHashFunction> fvs;
expr::getFreeVariables(cr, fvs);
- d_all_vars.insert(d_all_vars.end(), fvs.begin(), fvs.end());
+ d_all_vars.insert(fvs.begin(), fvs.end());
if (singleInvocation)
{
// replace with single invocation formulation
std::vector<Node> d_si_vars;
/** every free variable of conjuncts[2] */
- std::vector<Node> d_all_vars;
+ std::unordered_set<Node, NodeHashFunction> d_all_vars;
/** map from functions to first-order variables that anti-skolemized them */
std::map<Node, Node> d_func_fo_var;
/** map from first-order variables to the function it anti-skolemized */
regress1/sygus/issue3839-cond-rewrite.smt2
regress1/sygus/issue3944-div-rewrite.smt2
regress1/sygus/issue3947-agg-miniscope.smt2
+ regress1/sygus/issue4009-qep.smt2
regress1/sygus/large-const-simp.sy
regress1/sygus/let-bug-simp.sy
regress1/sygus/list-head-x.sy
--- /dev/null
+; EXPECT: unsat
+; COMMAND-LINE: --sygus-inference --sygus-qe-preproc
+(set-logic ALL)
+(declare-fun a () Real)
+(declare-fun b () Real)
+(assert (forall ((c Real)) (and (xor (> c a) (= b 0)) (distinct (+ a b) 0))))
+(check-sat)