3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-28 11:25:51 +00:00

add seq methods

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2015-12-07 16:28:20 -08:00
parent d9fee9af1e
commit ca96fea2c0
4 changed files with 484 additions and 12 deletions

View file

@ -289,9 +289,15 @@ func_decl * seq_decl_plugin::mk_func_decl(decl_kind k, unsigned num_parameters,
ast_manager& m = *m_manager;
sort_ref rng(m);
switch(k) {
case OP_SEQ_UNIT:
case OP_SEQ_EMPTY:
match(*m_sigs[k], arity, domain, range, rng);
if (rng == m_string) {
parameter param(symbol(""));
return mk_func_decl(OP_STRING_CONST, 1, &param, 0, 0, m_string);
}
return m.mk_func_decl(m_sigs[k]->m_name, arity, domain, rng, func_decl_info(m_family_id, k));
case OP_SEQ_UNIT:
case OP_RE_PLUS:
case OP_RE_STAR:
case OP_RE_OPTION: