Incorrect Answer.


       MODULE main
       VAR
           a : boolean;
           b : boolean;
       ASSIGN
           init(a) := 0;
           init(b) := 0;
           next(a) := case
                        !a : 1;
                        1  : {0, 1};
                       esac;
           next(b) := case
                        !a : 0;
                        b  : 1;
                        1  : {0, 1};
                       esac;
       FAIRNESS !a
       SPEC AG(!a & EX(b))

Running the SMV program above, we obtain
nunk% smv test5.smv
-- specification AG (!a & EX b) is false
-- as demonstrated by the following execution sequence
state 1.1:
a = 0
b = 0
so the specification does not hold for some initial state under the fairness constraint !a. Note that the CTL formula AG ( a EX b) states that at every state t reachable from the initial state, the formula a EX b is true. The state a!b is reachable from the initial sate, but a and hence a EX b, does not hold at state a!b. Note that this analysis is not impacted by the presence, or absence, of the given fairness constraint.
Back to Question.
Next Question.