Simulation and Testing of Deterministic Finite Automata Machine - B. Vayadande, Kuldeep; Sheth, Parth; Shelke, Arvind; Patil, Vaishnavi; Shevate, Srushti; Sawakare, Chinmayee (International Journal of Computer Sciences and Engineering, 2022)
This article describes a JavaScript and GUI-based visualization tool for constructing, debugging, and testing DFA that can be utilized in the automata theory classroom. In automata, DFA is an important problem. What DFA is, DFA refers to deterministic finite automata. Deterministic refers to the uniqueness of the computation. If the machine reads an input string one symbol at a time, the finite automata are termed deterministic finite automata. In DFA, there is only one path from the current state to the next state for specific input. The null move is not accepted by DFA, which means it cannot change the state without any input character. Multiple final states can be found in DFA. Like other automata visualization tools, users can edit and construct DFA by adding states and transitions and can observe transition execution by providing string input for testing. This DFA simulator allows users to construct DFA by adding states, marking any state as a final state, and also checking for string if it is valid for constructed DFA or not.