0

I changed my problem more clear here. there is two different model one is sender model and one is receiver model. I want to check the properties that message transmitted is not the same as the receiver receives.

MODULE main()
VAR 
    state : { informationsource, getinformation, transmitter, receiver, destination, ACK }; 
    messageReceived : boolean;
    messageTransmitted : boolean;

ASSIGN
    init(state) := informationsource; 
    init(messageReceived) := FALSE;


    next(state) := case 
        state = informationsource : getinformation; 
        state = getinformation : transmitter; 
        state = transmitter : receiver; 
        state = receiver  & messageReceived = TRUE : destination;
        TRUE : {destination, ACK} ;

    esac;

LTLSPEC (G(state=receiver -> messageTransmited != messageReceived))

knight
  • 13
  • 5
  • Thanks for updating the question. Exactly what property do you want to encode? *s does never become equal to a4* is `LTLSPEC G (s != a4)` – Patrick Trentin Aug 04 '16 at 13:08
  • Hey thank you ! this make some sense in my encoding but actually i want to encode that a1 is not equal to a4. – knight Aug 12 '16 at 01:12
  • a1 is by construction different from a4, they are different enum values.. unless you mean the value of b is different – Patrick Trentin Aug 12 '16 at 06:10
  • hey @PatrickTrentin i changed my question hope this will make you more clear to understand – knight Aug 19 '16 at 07:54
  • There are several problems with your code. For a start, you would need to instantiate *two modules*, rather than put everything in the *main* one. Then, you can't do any significant *model checking* when you let both *messageReceived* and *messageTransmitted* to evolve non-deterministically.. Sure *NuSMV* will detect that the property is violated, but it is not significant because the model doesn't match the problem you want to check. I strongly advice you to read all the slides of **Part II** presented in [this link](http://www.patricktrentin.com/pages/fm2016.html), focusing on the examples. – Patrick Trentin Aug 19 '16 at 10:54

0 Answers0