how to make a non-initialised variable in Spin?
问题 It seems that Promela initialises each variable (by default, to 0, or to the value that is given in the declaration). How can I declare a variable that is initialised by an unknown value? The documentation suggests if :: p = 0 :: p = 1 fi but I don't think that it works: Spin still verifies this claim bit p init { if :: p = 0 :: p = 1 fi } ltl { ! p } (and falsifies p ) So what exactly is the semantics of init ? There still is some "pre-initial" state? How can I work around this - and not