Abstract:
The paper highlights the specificity of checking for compliance with the stated requirements of algorithms built on finite automata. A lightweight tool for verifying automatic algorithms based on a fragmentary description of input chains is proposed. The software solution has a client-server architecture, where complete chains are processed on the client side, and incomplete ones are transmitted to the server. Positive and negative modes of chain verification are possible. In the first case, the context of verification is the possibility of implementing a sequence of events by the algorithm, in the second case, the impossibility of implementing a chain. To solve the problem of checking chains with gaps, an original algorithm has been developed based on the construction of an auxiliary automaton reconstructing gaps. The purpose and functionality of the software solution are demonstrated by a well-known literary example.
Keywords:event-driven system, protocol, finite state machine, grammar, ANTLR