You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Z3 defines model.decls() as functions that need to be called, even for constants having arity 0. CVC5 does not even define the arity method on constants (requiring the getattr trick above) nor the name method (requiring the use of str).
For expressions that are of a datatype (ADT) sort, you can get the name of the constructor in Z3 like so:
exp.decl().name()
In CVC5, this throws:
exp.decl().name()
^^^^^^^^^^
File "/Users/snip/lib/cvc5/build/src/api/python/cvc5/pythonic/cvc5_pythonic.py", line 418, in
decl
raise SMTException("Declarations for non-function applications")
cvc5.pythonic.cvc5_pythonic.SMTException: Declarations for non-function applications
Probably because constructors are not considered uninterpreted function applications.
The text was updated successfully, but these errors were encountered:
Two examples of differences of the CVC5 API to the Z3 API:
Z3 defines
model.decls()
as functions that need to be called, even for constants having arity 0. CVC5 does not even define thearity
method on constants (requiring thegetattr
trick above) nor thename
method (requiring the use ofstr
).In CVC5, this throws:
Probably because constructors are not considered uninterpreted function applications.
The text was updated successfully, but these errors were encountered: