PREFACE

This handbook presents a collection of introductory materials on finite state theories and their applications. A finite state model is a model of behavior composed of a finite number of states, transitions between those states, and actions. A state describes a behavioral node of the system in which it is waiting for a trigger to execute a transition. Automata are abstract models of machines that perform computations on an input by moving through a series of states or configurations. At each state of the computation, a transition function determines the next state out of a finite number of states that can be reached from the present configuration. Finite state based models, also called finite state machines or finite state automata are used to encode computations, recognize events, or can be used as a data structure for holding strategies for playing games. Basically they are applicable to all problems that require finite number of solutions. They have been widely applied to various areas of computer science and engineering, such as transforming text, computation linguistics, search engines, indexing of large bodies of text, speech recognition, neurological system modeling, digital logic circuit design and simulations, and programming languages design and implementation.

This book is meant to be a comprehensive and complete reference guide for readers interested in finite state based models and their applications. It can be used by beginners as a quick “lookup” reference and can also be used by researchers for in-depth study in this area as a discipline. The intended audiences are academic faculty members, researchers and doctoral students in computer science, software engineering and information systems, first year graduate students and senior year undergraduates in computer science, software engineering and information systems, industrial software engineers and industrial information technology practitioners.