Skip to content

does Z3_mk_datatype write to the constructors argument? #5761

Answered by NikolajBjorner
bakkot asked this question in Q&A
Discussion options

You must be logged in to vote

in-out-array: The elements of the array are initialized (with pointers). Then the function reads those elements and change (write) their state. In the two functions that use inout_array the elements don't change. They stay the same, but their internal state is changed. It is extremely unlikely the behavior will change. In fact other API wrapper build in this assumption. So you should be able to assume that the elements are unchanged.
in-array: the elements are read by the function, but not changed.
out-array: the elements are un-initialized and they are set by the function.

With this behavior you may be able to treat inout_array as just in_array.

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by bakkot
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants
Converted from issue

This discussion was converted from issue #5759 on January 08, 2022 23:11.