The document introduces the theory of computation and finite automata, focusing on deterministic finite acceptors (DFAs) and nondeterministic finite automata (NFAs). DFAs process strings with a single option, while NFAs can explore multiple choices, simplifying problem-solving. It emphasizes the equivalence of DFAs and NFAs and the importance of finding minimal DFAs for regular languages.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
3 views64 pages
Module 1 Part 2
The document introduces the theory of computation and finite automata, focusing on deterministic finite acceptors (DFAs) and nondeterministic finite automata (NFAs). DFAs process strings with a single option, while NFAs can explore multiple choices, simplifying problem-solving. It emphasizes the equivalence of DFAs and NFAs and the importance of finding minimal DFAs for regular languages.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 64
Formal languages and Automata
Theory (FLAT) MODULE 1 (PART B)
Introduction to the Theory of
Computation and Finite Automata FINITE AUTOMATA
Deterministic Finite Accepters
• Simple automaton, a finite state accepter. • It is finite because it has only a finite set of internal states and no other memory. • It is called an accepter because it processes strings and either accepts or rejects them, so we can think of it as a simple pattern recognition mechanism. • We start with a deterministic finite accepter, or dfa. • The adjective “deterministic” signifies that the automaton has one and only one option at any time. • We use dfa’s to define a certain type of language, called a regular language. • Nondeterministic automata (nfas). • In certain situations, an nfa can have several options and therefore can appear to have a choice. • A better way to visualize nondeterminism is to think that an nfa explores all choices (say, by a search and backtrack method) and makes no decision until all options have been analyzed. • The main reason for introducing nondeterminism is that it simplifies the solution of many problems. • We say that two accepters are equivalent if they accept the same language. • We can then also say that the class of nfa’s is equivalent to the class of dfa’s because for every every nfa, we can find an equivalent dfa. • For any given regular language there are many equivalent dfa’s, so it is of practical importance to find a minimal dfa, that is, a dfa with the smallest number of internal states. REFERENCES 1. Peter Linz, An Introduction to Formal Languages and Automat, (6e), Jones & Bartlett Learning, 2016