--
You received this message because you are subscribed to the Google Groups "tlaplus" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tlaplus+u...@googlegroups.com.
To post to this group, send email to tla...@googlegroups.com.
Visit this group at http://groups.google.com/group/tlaplus.
For more options, visit https://groups.google.com/d/optout.
(1) While TLC fingerprints the permuted state, it computes next states based on the actual state. Hence, every state that it examines is reachable.
(2) If your spec is actually symmetric, then every permutation of a reachable state is reachable. If there are permutations that are not reachable, then your model is incorrect. However, the result of this incorrectness is that TLC may fail to examine a reachable state that it should examine; it will not cause it to examine unreachable states.
Leslie
To fingerprint a state, TLC should construct a single new state that
is a permutation of that state and fingerprint the permuted state.
The time to construct that permuted state should be linear in the size
of the state.
A specification is symmetric in a set S iff for every behavior b
allowed by the specification and every permutation p of S, the
behavior obtained by applying p to every state of b is also a behavior
allowed by the specification. (Applying p to a state means replacing
each element s of S by p(s).)
I interpret what you have written to meant that your specification
allows only intial states in which foo = a iff bar = x. Such a
specification is not symmetric in either {a, b, c} or {x, y, z}.
Now introduce a constant, Map, which maps the set to {x, y, z} in any arbitrary way.
Does the following capture your example ?