-
Notifications
You must be signed in to change notification settings - Fork 169
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
Simultaenous liveness and deadlock detection #20
Comments
OK, so it seems if I add an infinite cycle in the state-space then an error is found. I would like to trigger an error at any terminal state if some condition does not hold. Is that possible? |
Hi Paul, The deadlock property is encoded as a safety assertion in P. If you want to Note that by adding infinite looping process you made the trace infinite. On Thu, Feb 4, 2016 at 1:32 PM Paul Thomson notifications@github.com
|
Awesome! So doing the following makes it work:
The error message is not very clear though:
Does it make sense to have both liveness and deadlock safety checks? So a program has infinite paths but also has some terminal states? E.g. A program might be able to get stuck in an infinite failure loop without making progress but might also be able to terminate in a hot state. If so, would it make sense for the safety check be added even when using the |
Excellent point Paul ! On Thu, Feb 4, 2016 at 2:28 PM Paul Thomson notifications@github.com
|
I am not convinced yet that merging deadlock and livelock detection is a good idea. The current design requires the programmer to explicitly consider whether she is looking for a finite (assertions and deadlocks) or an infinite (livelocks) error trace. Different options should be passed to pc and zinger (consistently) depending on that choice. These options result in significantly different encodings and search techniques. |
On master branch. How do I get a hot monitor to cause an error?
See
TestMasterHot.p
.I have tried other Zinger liveness flags.
The text was updated successfully, but these errors were encountered: