3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-02-28 19:01:29 +00:00
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2020-03-02 18:15:29 -08:00
parent a319f4bf58
commit f736f7e83e
17 changed files with 189 additions and 7 deletions

View file

@ -65,6 +65,7 @@ z3_add_component(smt
theory_opt.cpp
theory_pb.cpp
theory_recfun.cpp
theory_refinement_sort.cpp
theory_seq.cpp
theory_special_relations.cpp
theory_str.cpp

View file

@ -840,7 +840,8 @@ namespace smt {
\brief Internalize an uninterpreted function application or constant.
*/
void context::internalize_uninterpreted(app * n) {
SASSERT(!e_internalized(n));
if (e_internalized(n))
return;
// process args
for (expr * arg : *n) {
internalize_rec(arg, false);

View file

@ -34,6 +34,7 @@ Revision History:
#include "smt/theory_seq_empty.h"
#include "smt/theory_seq.h"
#include "smt/theory_special_relations.h"
#include "smt/theory_refinement_sort.h"
#include "smt/theory_pb.h"
#include "smt/theory_fpa.h"
#include "smt/theory_str.h"
@ -942,6 +943,10 @@ namespace smt {
m_context.register_plugin(alloc(smt::theory_special_relations, m_manager));
}
void setup::setup_refinement_sort() {
m_context.register_plugin(alloc(smt::theory_refinement_sort, m_manager));
}
void setup::setup_unknown() {
static_features st(m_manager);
ptr_vector<expr> fmls;
@ -958,6 +963,7 @@ namespace smt {
setup_card();
setup_fpa();
if (st.m_has_sr) setup_special_relations();
if (st.m_has_rs) setup_refinement_sort();
}
void setup::setup_unknown(static_features & st) {
@ -975,6 +981,7 @@ namespace smt {
setup_fpa();
setup_recfuns();
if (st.m_has_sr) setup_special_relations();
if (st.m_has_rs) setup_refinement_sort();
return;
}

View file

@ -83,6 +83,7 @@ namespace smt {
void setup_LRA();
void setup_CSP();
void setup_special_relations();
void setup_refinement_sort();
void setup_AUFLIA(bool simple_array = true);
void setup_AUFLIA(static_features const & st);
void setup_AUFLIRA(bool simple_array = true);