Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

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

Handling k-safety property #517

Closed
Nivous opened this issue Aug 22, 2023 · 2 comments
Closed

Handling k-safety property #517

Nivous opened this issue Aug 22, 2023 · 2 comments

Comments

@Nivous
Copy link

Nivous commented Aug 22, 2023

Hi.
I am looking to implement k-safety property using seahorn.
For that I am trying to think what is the best way to introduce the pre \ post conditions in my program.
I am not sure at all what I should use as even from a technical point of view, I am not sure how the compiler would handle those function calls and how should I implement them.
Have you considered implementing something like that and maybe have a suggestion on how to begin?

Any help would be appreciated,
Niv

@Nivous
Copy link
Author

Nivous commented Aug 29, 2023

Still relevant. We could really use the help.

@agurfinkel
Copy link
Contributor

Sorry, your email came when most of the team is on vacation / travel. The best way to communicate pre- and post-conditions is with special function calls. In the same way we communicate assumptions using verifier.assume call.

It would work best if you can break your desired solution into a series of examples. If we can see what you are doing, we might be able to help.

There was a project in the past that used self-composition to convert k-safety into safety and solve it with seahorn. I don't believe it was ever merged in and seahorn has changed substantially since that time.

@seahorn seahorn locked and limited conversation to collaborators Aug 29, 2023
@agurfinkel agurfinkel converted this issue into discussion #518 Aug 29, 2023

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants