3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-23 17:15:31 +00:00

fix perf regression with negative polynomial normalization, adding new datatype plugin

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2017-09-03 03:56:10 -07:00
parent 62f8cc1289
commit fff54d5d08
14 changed files with 1207 additions and 39 deletions

View file

@ -182,29 +182,20 @@ public:
}
void append(symbol_table<T> const& other) {
typename sym_table::iterator it = other.m_sym_table.begin();
typename sym_table::iterator end = other.m_sym_table.end();
for (; it != end; ++it) {
insert((*it).m_key, (*it).m_data);
for (auto const& kv : other.m_sym_table) {
insert(kv.m_key, kv.m_data);
}
}
void get_range(vector<T,false>& range) const {
typename sym_table::iterator it = m_sym_table.begin();
typename sym_table::iterator end = m_sym_table.end();
for (; it != end; ++it) {
range.push_back((*it).m_data);
for (auto kv : m_sym_table) {
range.push_back(kv.m_data);
}
}
void get_dom(svector<symbol>& dom) const {
typename sym_table::iterator it = m_sym_table.begin();
typename sym_table::iterator end = m_sym_table.end();
for (; it != end; ++it) {
dom.push_back((*it).m_key);
for (auto kv : m_sym_table) {
dom.push_back(kv.m_key);
}
}
};