Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-enable test store.wat #178

Merged
merged 1 commit into from
Feb 20, 2024
Merged

Conversation

krtab
Copy link
Collaborator

@krtab krtab commented Feb 19, 2024

Test was to slow because once the out of bounds cases have been ruled out, all "in bounds" cases still have to concretize a value for the symbol and perform the store, leading to approx. <page_size> calls to Z3.

By reducing the possible values of idx, we ensure that the test runs fast.

Closes #177

@krtab krtab requested a review from zapashcanon February 19, 2024 15:53
Test was to slow because once the out of bounds cases have been ruled
out, all "in bounds" cases still have to concretize a value for the symbol
and perform the store, leading to approx. <page_size> calls to Z3.

By reducing the possible values of idx, we ensure that the test runs fast.
@krtab krtab force-pushed the reenable_store_wat branch from e1078ab to b4f6259 Compare February 19, 2024 15:54
@zapashcanon
Copy link
Member

I understand that this now passes the test but I'm a little bit worried: are we going to have to insert such assume in any code we want to test ? I'm wondering if there is not a way to solve this in Owi directly... it probably means waiting for the new memory model ?

@krtab
Copy link
Collaborator Author

krtab commented Feb 19, 2024

I don't think there is a one size fits all solution.
We could have a lazier memory model, or one more symbolic. For real life applications, we can accept that exploration will anyway never be total and rely on a future exploration heuristic to ensure that all interesting cases are explored first. We can then time out after a while, and assume that the remaining cases would only lead to uninteresting behaviors (or even prove it and discard them entirely?).

@zapashcanon zapashcanon merged commit c535389 into OCamlPro:main Feb 20, 2024
2 checks passed
@zapashcanon
Copy link
Member

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

re-enable test/sym/store.wat test
2 participants