UoY-RoboStar / robocert-textual

Textual plugin and CSP generator for RoboCert
Eclipse Public License 2.0
2 stars 0 forks source link

Interrupts have strange refusal interaction with gaps #64

Closed MattWindsor91 closed 2 years ago

MattWindsor91 commented 3 years ago

A follow-up issue from #63: while the gap itself is now allowing the model to refuse actions stated inside the gap set. the interrupt /\ used to connect the gap set to the action it follows doesn't seem to have the right semantics.

Specifically, in the translation of anything in E until event x, the gap apparently cannot refuse x at any time - if x is offered by the environment it always makes the gap resolve. This is unwanted, as the model might want to perform more things in E first.

Some solutions (discussing with Pedro) include:

At time of typing, I'm heading towards the latter, but am unsure whether that wrapper should be part of the gap or a more general modality on arrow actions.

MattWindsor91 commented 2 years ago

Solved (for now) with the temperature modality: by default actions get wrapped in a cold temperature that allows the indefinite refusal of the action.