summaryrefslogtreecommitdiff
path: root/src/theory/quantifiers/sygus_grammar_cons.cpp
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2017-11-13 11:53:33 -0600
committerGitHub <noreply@github.com>2017-11-13 11:53:33 -0600
commit8c04e55f16faebbe552752e2ff76ffda5a9fb21f (patch)
tree41fd1d9844b0d88bd9c4da15dbb5fdd6c6165628 /src/theory/quantifiers/sygus_grammar_cons.cpp
parent6e9f70f5bc59a57cbfdcf0f149265652461fcf2e (diff)
Argument Relevance for Synthesis Conjectures (#1311)
* Initial work on conjecture-specific symmetry breaking. * More infrastructure, working on process term. * Flattening. * Process defs * More setup * Fixes. * Sketching * Generalize to inference of argument definitions. * More, separate conjunct processing per synth function. * Single occurrence variables. * Assign relevance. * Document, connecting. * Connecting to grammar construction. * Enabled, add regressions. * Fix regressions. * Clang format. * Add regress1, minor. * Fix * Two passes. * Fix * Note * Improve check match, make single var occurrence more conservative. * Add regression. * Clang format * Minor comments * Update regression to new option. * Undo grammar cons changes. * Enable irrelevant args. * Improvements. * Format * Minor
Diffstat (limited to 'src/theory/quantifiers/sygus_grammar_cons.cpp')
-rw-r--r--src/theory/quantifiers/sygus_grammar_cons.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/theory/quantifiers/sygus_grammar_cons.cpp b/src/theory/quantifiers/sygus_grammar_cons.cpp
index f6b2ab07a..68926eb34 100644
--- a/src/theory/quantifiers/sygus_grammar_cons.cpp
+++ b/src/theory/quantifiers/sygus_grammar_cons.cpp
@@ -19,6 +19,7 @@
#include "expr/datatype.h"
#include "options/quantifiers_options.h"
#include "theory/quantifiers/ce_guided_conjecture.h"
+#include "theory/quantifiers/sygus_process_conj.h"
#include "theory/quantifiers/term_database_sygus.h"
#include "theory/quantifiers/term_util.h"
@@ -101,7 +102,7 @@ Node CegGrammarConstructor::process( Node q, std::map< Node, Node >& templates,
}else{
// check which arguments are irrelevant
std::unordered_set<unsigned> arg_irrelevant;
- // TODO (#1210) : get arg irrelevant based on conjecture-specific analysis
+ d_parent->getProcess()->getIrrelevantArgs(sf, arg_irrelevant);
std::unordered_set<Node, NodeHashFunction> term_irrelevant;
// convert to term
for (std::unordered_set<unsigned>::iterator ita = arg_irrelevant.begin();
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback