diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2017-11-13 11:53:33 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-13 11:53:33 -0600 |
commit | 8c04e55f16faebbe552752e2ff76ffda5a9fb21f (patch) | |
tree | 41fd1d9844b0d88bd9c4da15dbb5fdd6c6165628 /src/theory/quantifiers/sygus_grammar_cons.cpp | |
parent | 6e9f70f5bc59a57cbfdcf0f149265652461fcf2e (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.cpp | 3 |
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(); |