SPIN model inspired by the Cruise control state machine used in UC Berkeley EECS 149/249 (Fall 2014) midterm 1. The model sets a simple state machine, a non-deterministic environment and a set of 4 LTL properties are verified.
The LTL properties are:
(x == ENABLE) -> <> (state == OFF)[]((x == DISABLE) -> <>(state == OFF))[](count == 0) -> <>(state == OFF)[]( (state == HOLD) -> ((x != DISABLE) && (x != RESUME) )) -> <>(state == STANDBY)
To compile and verify the model you can use 'ispin' (SPIN graphical environment), or, using the command line:
spin -a cruise.pmlgcc -o pan pan.c./pan -a -N p1 (for property p1)./pan -a -N p2 (for property p2)- ...
Author: Antonio Iannopollo
Email: [email protected]