Automata Theory is a branch of computer science that deals with designing abstract selfpropelled computing devices that follow a predetermined sequence of operations automatically. An automaton with a finite number of states is called a Finite Automaton. This is a brief and concise tutorial that introduces the fundamental concepts automata theory computer science pdf Finite Automata, Regular Languages, and Pushdown Automata before moving onto Turing machines and Decidability. This tutorial has been prepared for students pursuing a degree in any information technology or computer science related field.
It attempts to help students grasp the essential concepts involved in automata theory. This tutorial has a good balance between theory and mathematical rigor. The readers are expected to have a basic understanding of discrete mathematical structures. The study of the mathematical properties of such automata is automata theory.
The picture is a visualization of an automaton that recognizes strings containing an even number of 0s. The automaton starts in state S1, and transitions to the non-accepting state S2 upon reading the symbol 0.
Reading another 0 causes the automaton to transition back to the accepting state S1. In both states the symbol 1 is ignored by making a transition to the current state. Automata theory is the study of abstract machines and automata, as well as the computational problems that can be solved using them. Greek word αὐτόματα, which means “self-acting”.
The figure at right illustrates a finite-state machine, which belongs to a well-known type of automaton. Automata theory is closely related to formal language theory. An automaton is a finite representation of a formal language that may be an infinite set.