mirror of
https://github.com/Z3Prover/z3
synced 2026-08-14 09:45:36 +00:00
use definition of is_var from theory_seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
068edf6a46
commit
1e507cd11e
3 changed files with 18 additions and 10 deletions
|
|
@ -273,16 +273,13 @@ bool seq_monadic::parse_term(expr* t, vector<atom>& atoms, expr*& the_var) {
|
|||
}
|
||||
return true;
|
||||
}
|
||||
if (u().str.is_unit(t)) { // seq.unit of a constant element
|
||||
expr* elem = to_app(t)->get_arg(0);
|
||||
if (m.is_value(elem)) {
|
||||
atoms.push_back(atom(m, false, nullptr, elem));
|
||||
return true;
|
||||
}
|
||||
return false; // symbolic (non-constant) unit: unsupported
|
||||
expr *elem = nullptr;
|
||||
if (u().str.is_unit(t, elem) && m.is_value(elem)) { // seq.unit of a constant element
|
||||
atoms.push_back(atom(m, false, nullptr, elem));
|
||||
return true;
|
||||
}
|
||||
// uninterpreted 0-ary constant of sequence sort => a sequence variable
|
||||
if (is_uninterp_const(t)) {
|
||||
// uninterpreted constant of sequence sort => a sequence variable
|
||||
if (is_var(t)) {
|
||||
the_var = t; // mark that at least one variable occurs
|
||||
atoms.push_back(atom(m, true, t, nullptr));
|
||||
return true;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue