0% found this document useful (0 votes)
4 views10 pages

Automata (Souvik)

The document is a report on finite automata, covering its definition, types (DFA and NFA), and their applications in various fields such as compiler design and natural language processing. It includes a comparison between DFA and NFA, highlighting their differences in state transitions and path-following. The conclusion emphasizes the significance of finite automata in computation and real-world applications.

Uploaded by

Rivu shit
Copyright
© © All Rights Reserved
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% found this document useful (0 votes)
4 views10 pages

Automata (Souvik)

The document is a report on finite automata, covering its definition, types (DFA and NFA), and their applications in various fields such as compiler design and natural language processing. It includes a comparison between DFA and NFA, highlighting their differences in state transitions and path-following. The conclusion emphasizes the significance of finite automata in computation and real-world applications.

Uploaded by

Rivu shit
Copyright
© © All Rights Reserved
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/ 10

GOVERNMENT COLLEGE OF ENGINEERING AND TEXTILE TECHNOLOGY,

SERAMPORE

TOPIC- finite automata


NAME: Souvik de
ROLL: 11000223049
STREAM: INFORMATION TECHNOLOGY
SEMESTER: 4TH
SUBJECT: formal language & theory
SUBJECT CODE: PCC-CS403
CONTENTS

SERIAL NO CONTENT PAGE NO


1 Introduction 3
2 Types of Finite Automata 4-5
3 Comparision between DFA 6
& NFA
4 Application of Finite 7
Automata
5 Conclusion 8
6 Reference 9
INTRODUCTION

• Formal language theory is the subject by which any form of grammar, sentence and language can be expressed in
general form.
• It acts as a base of compiler designing.
• A Finite Automaton (FA) is a mathematical model of computation used to represent and control execution flow in
systems with a finite number of states. It processes an input sequence and determines if the input is accepted or
rejected based on state transitions.
• A finite automata is a collection of 5-tuple (Q,Σ,δ,q0,F)
where:
Q: A finite set of states.
Σ: A finite set of input symbols (alphabet).
δ:Q×Σ→Q: A transition function that defines state changes based on inputs.
q0∈Q: The initial state where the automaton starts.
F⊆Q: A set of final (accepting) states.
TYPES OF FINITE AUTOMATA

Deterministic Finite Automata(DFA)

A Deterministic Finite Automaton (DFA) is a type of finite state machine where, for each state and input symbol, there is
exactly one transition to another state. This means there is no ambiguity in the state transitions, and the automaton can only
follow one path for a given input string.
Example:-
Construct a DFA that accepts all strings ending with ‘a’.
Given:
Symbol
State\ a b
Σ = {a, b},
Q = {q0, q1}, q0 q1 q0

F = {q1} q1 q1 q0
TYPES OF FINITE AUTOMATA

Non-Deterministic Finite Automata(NFA)

A Non-Deterministic Finite Automaton (NFA) is a type of finite state machine where:-


A state can have multiple transitions for the same input symbol.
The machine can transition to multiple states at once (parallel computation).
It may include ε-transitions, allowing movement between states without consuming an input symbol.
Example:-
Construct a NFA that accepts all strings ending with ‘a’.
Given: Symbol
State\ a b
Σ = {a, b},
q0 {q0, q1 } q0
Q = {q0, q1},
F = {q1} q1 φ φ
COMPARISON BETWEEN DFA & NFA
Feature DFA NFA
State Transitions Each state has only one transition per A state can have multiple transitions for
input symbol. the same input.

Epsilon Transitions Not allowed Allowed (state transitions can occur


without consuming input).

Path Only one path is followed at any time. Multiple paths may be followed
simultaneously.
Conversion Cannot be converted into an NFA. Can be converted into an equivalent DFA
(may increase the number of states).
APPLICATIONS OF FINITE AUTOMATA

•Lexical Analysis: Tokenizing source code in compilers.


•Pattern Matching: Text searching (e.g., regex, search engines).
•Network Protocols: Recognizing valid communication sequences.
•Control Systems: Traffic lights, vending machines.
•Natural Language Processing: Recognizing and parsing language patterns.
•Artificial Intelligence: Modeling decision-making processes.
•Robotics: Implementing behavior-based control mechanisms.
CONCLUSION

•Finite Automata is a fundamental model in computation.


•DFA is simpler but limited; NFA is more expressive.
•Used in various real-world applications such as text processing and hardware design.
REFERENCE
• Automata Theory, Languages, and Computation by John E. Hopcroft, Rajeev Motwani, and Jeffrey
D. Ullman
• https://chatgpt.com/c/67baa781-3354-8012-8cfa-ca07b890bed7
THANK YOU

You might also like