Promela and Model Description
11) Progress state
      progress states are transient states that other states have to go through
      one of them to make progress. Otherwise, it may indicate a starvation.
     ex1: proctype dijkstra() {
byte count = 1;
end: do
   :: (count == 1) ->
progress:        sema!p; count = 0 // progress state
   :: (count == 0) -> sema?v;  count = 1
od
}