I am describing some models in Alloy language. In order to describe a finite state machine I provided this few lines of code:
sig FSA_state {
transitions: some FSA_state,
initial: lone InitialState
}
sig InitialState {}
fact i {
all f: FSA_state | #(f.transitions) <= 0
}
pred show {
}
run show for 5 but 1 InitialState
Now I am trying to figure out why it makes more than zero transitions on a single state.
Using "Evaluator" instrument I found that some world has negative cardinality on set transitions, how is it possible (a set can't has less than zero elements)?
The instruction that I used in Evaluator is #(FSA_state.transitions)