Principles and methods of testing finite state machines-a survey | Synapse