mirror of
https://github.com/Z3Prover/z3
synced 2025-11-01 12:07:51 +00:00
add fintie_set_value_factory outline
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
1b918ce4ec
commit
cc8bfd7890
4 changed files with 97 additions and 0 deletions
|
|
@ -111,6 +111,13 @@ public:
|
|||
finite_set_recognizers(family_id fid):m_fid(fid) {}
|
||||
family_id get_family_id() const { return m_fid; }
|
||||
bool is_finite_set(sort* s) const { return is_sort_of(s, m_fid, FINITE_SET_SORT); }
|
||||
bool is_finite_set(sort* s, sort*& elem_sort) const {
|
||||
if (is_finite_set(s)) {
|
||||
elem_sort = to_sort(s->get_parameter(0).get_ast());
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
bool is_finite_set(expr const* n) const { return is_finite_set(n->get_sort()); }
|
||||
bool is_empty(expr const* n) const { return is_app_of(n, m_fid, OP_FINITE_SET_EMPTY); }
|
||||
bool is_singleton(expr const* n) const { return is_app_of(n, m_fid, OP_FINITE_SET_SINGLETON); }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue