S# is a formal modeling and safety analysis framework for safety-critical systems. It provides a domain specific modeling language and fully automated formal safety analysis tools based on C# and .NET.
Agents should remove resource requests other agents made, if they can no longer handle the resource. They should also remove the requests they made to another agent, since they will have dropped their resource. One of these might suffice, but make sure that dead agents don't break this.
Without this, analysing the robot cell yields exceptions:
System.InvalidOperationException: no role found for resource request: invariant violated!
at SafetySharp.Odp.BaseAgent.ResourceReady(BaseAgent agent, Condition condition) in C:\Users\ssharp\ssharp\Source\Odp\BaseAgent.cs:line 228
at SafetySharp.Odp.BaseAgent.Work() in C:\Users\ssharp\ssharp\Source\Odp\BaseAgent.cs:line 129
at SafetySharp.Odp.BaseAgent.<UpdateAsync>d__18.MoveNext() in C:\Users\ssharp\ssharp\Source\Odp\BaseAgent.cs:line 64
Agents should remove resource requests other agents made, if they can no longer handle the resource. They should also remove the requests they made to another agent, since they will have dropped their resource. One of these might suffice, but make sure that dead agents don't break this.
Without this, analysing the robot cell yields exceptions: