nimble-code / Spin

Explicit state logic model checking tool -- 2002 winner of the ACM System Software Award.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Verification gives “missing pars in receive” error though simulation works fine

mrityunjaypalash opened this issue · comments

Hello,
I posted the details on this stackoverflow question: Someone suggested I post here as well.
Essentially, I am getting this error when running verification, but not during simulation run. While I understand this is possible since verification runs more checks at run-time, I am not able to see why there will be an issue.

After much brain-dead investigation (deleting portions of the code to know what is a problem), I figured out that the random receive code doesn't seem to work. I suspect eval(id) doesn't return anything (which would explain why missing parameters error would be thrown). I finally updated my code to remove random receive depenency and used multiple channels, and the code works well.

I am not sure if this is an issue with SPIN or not, but certainly it will help if more details were available to really show what parameter is missing, or a way to surface this error during simulation.

Any help will be appreciated.

I looked at the model that you posted on Stackoverflow and tried to reproduce the error, but with the current version (dated March 2020) it doesn't seem to happen.
The search goes very deep (over 100K steps) and just continues forever without hitting that error.
What platform are you running on? (I used Windows10)

Thank you for the response, good to see that the model is correct!
I am using Linux, Spin version 6.5.1, 20 December 2019.
Your results are interesting. I will try with the latest version (Mar 2020) and see if it repros.

Thanks again.