Design and Implementation of Finite State Automata Shell

Abstract

Finite State Automata, FSA, represents a main solution-model for different computational problems. The implementation of FSA for specific serious problem consumes times and efforts. The aim of this research is to design and implement a system shell which rapidly builds an FSA. This system involves no knowledge about the FSA underhand, but includes the general mechanism of parsing the input string in addition to a sub-system to collect the specification of a specific FSA. According to this shell, the building of a FSA requires no more than the time of presenting its specifications during what so-called construction phase. In the construction phase the tables of the FSA specifications are built such as the transition table which represents the transition function. In the second phase, the Application Phase, the machine becomes ready for use. The first phase includes many modules such as Specifications-File Reader and Machine Constructor modules, while the Application Phase includes Input-String File Reader, Parser Shell, and Output Visualizer. Many actual and randomly-generated machines had been used to test the shell. These FSAs are of 1 up to 100 states and 1 up to 39 alphabet symbols and they were built and tested successfully.