| ▲ | igornotarobot 3 days ago | |
Producing positive and negative examples is exactly where model checkers shine. I always write "falsy" invariants to produce examples of the specification reaching interesting control states for at least one input. After that, I think about the system boundaries and where it should break. Then, the model checker shows that it indeed breaks there. Having a specification does not mean that one should not touch it. It is just a different level of experimental thinking. | ||