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

Wellcome

The presentation by Sanjib Halder introduces the Theory of Computing, covering key concepts such as finite automata, formal languages, and Turing machines. It discusses various types of automata, their definitions, functions, and applications in fields like programming languages and compilers. The document also includes a bibliography of foundational texts in the field.

Uploaded by

ronnyhalder007
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views15 pages

Wellcome

The presentation by Sanjib Halder introduces the Theory of Computing, covering key concepts such as finite automata, formal languages, and Turing machines. It discusses various types of automata, their definitions, functions, and applications in fields like programming languages and compilers. The document also includes a bibliography of foundational texts in the field.

Uploaded by

ronnyhalder007
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 15

WELLCOME

TO MY
PRESENTATION

Sanjib Halder

February 19 2025

Department of computer science


BIBLIOGRAPHY  Hopcroft, J. E., Motwani, R., & Ullman, J. D.
(2006). Introduction to Automata Theory,
Languages, and Computation. Pearson.

 Sipser, M. (2012). Introduction to the Theory of


Computation. Cengage Learning.

 Sudkamp, T. A. (2006). Languages and Machines:


An Introduction to the Theory of Computer Science.
Pearson.

 Lewis, H. R., & Papadimitriou, C. H. (1998).


Elements of the Theory of Computation. Prentice
Hall.

03/22/2025 2
01 INTRODUCTION

The Theory of Computing


explores the fundamental principles
of computation, including automata,
formal languages, computability,
and complexity. It studies what
problems can be solved by
computers, how efficiently they can
be solved, and the mathematical
models that define computation.

03/22/2025 3
02 TOPICS
Formal
Finite Grammar Regular
Automata. and Language.
Languages.

Context-
Pushdown Turing
Free
Automata. Machine.
Language.
03 FINITE AUTOMATA

 Definition – A Finite Automaton (FA) is a


mathematical model of computation that processes
input strings using a finite number of states.

 Types – It includes Deterministic Finite Automata


(DFA) and Nondeterministic Finite Automata (NFA).

 Function – FA accepts or rejects input based on state


transitions.

 Applications – Used in text search, lexical analysis, and


pattern recognition.

5
04 TYPES OF FINITE AUTOMATA

Deterministic Finite Automaton (DFA)

 EACH INPUT LEADS TO A SINGLE, UNIQUE


STATE TRANSITION. NO AMBIGUITY IN STATE
TRANSITION

Nondeterministic Finite Automaton


(NFA)
 An input can lead to multiple possible state
transitions, including epsilon moves

03/22/2025 6
05 FORMAL GRAMMAR AND LANGUAGES.

 Definition – A formal grammar defines rules for


generating strings in a language.

 Components – Consists of terminals, non-terminals,


production rules, and a start symbol.

 Types – Includes Regular, Context-Free, Context-


Sensitive, and Unrestricted grammars.

 Applications – Used in programming languages,


compilers, and natural language processing.

03/22/2025 7
06 COMPONENTS OF FORMAL GRAMMAR AND
LANGUAGES
Terminals (Σ)
 The basic symbols of the language (e.g., letters, digits).

Non-terminals
(V)
 Symbols representing groups of strings, used in production rules.

Production Rules
(P)
 Rules that define how symbols can be replaced or derived.

Start Symbol (S)


 The initial non-terminal from which derivations begin.

03/22/2025 8
07
REGULAR LANGUAGE.

 Definition – A regular language is a type of formal


language that can be recognized by a finite automaton.

 Representation – It can be expressed using regular


expressions and finite automata.

 Closure Properties – Closed under union,


concatenation, and Kleene star.

 Applications – Used in compilers, pattern matching,


and text processing.
08
CLOSURE PROPERTIES

Definition Regular Languages Usefulness


Application
Closure properties Regular languages Helps in proving
Used in compiler
describe are closed under whether a language
design, pattern
operations under union, is regular without
matching, and
which a class of intersection, constructing
formal language
languages remains complement, automata.
analysis.
within the same concatenation,
class. and Kleene star.

03/22/2025 10
CONTEXT-FREE LANGUAGE.
09
 Definition – A Context-Free Language (CFL) is a
language generated by a Context-Free Grammar
(CFG), consisting of recursive production rules.

 Recognition – CFLs are recognized by Pushdown


Automata (PDA).

 Structure – Supports nested and recursive structures.

 Applications – Used in programming languages,


parsers, and XML processing.

11
PUSHDOWN AUTOMATA.
10
 Definition – A Pushdown Automaton (PDA) is an
automaton with a stack, allowing it to handle context-
free languages.

 Components – Consists of states, input tape, stack, and


transition functions.

 Types – Deterministic (DPDA) and Nondeterministic


(NPDA).

 Applications – Used in parsing, syntax analysis, and


programming languages.
TYPES OF PUSHDOWN AUTOMATA
11 Deterministic Nondeterministic
Pushdown Pushdown Automaton
Automaton (DPDA) (NPDA)

For each state and Allows multiple possible


input, there is at most moves for the same
one possible move. input, making it more
Used in simple parsing powerful. Used in
tasks like deterministic parsing complex
context-free languages. languages like natural
and programming
languages.
TURING MACHINE.
12
 Definition – A Turing Machine (TM) is a theoretical
model of computation that manipulates symbols on an
infinite tape using a set of rules.

 Components – It consists of a tape, head, states,


and transition function.

 Function – It reads, writes, and moves on the tape to


process input.

 Applications – Used to define computability, algorithm


design, and complexity theory.
13 THANK YOU
Thank you for your time and attention! I hope this
presentation provided valuable insights into the Theory of
Computing and its significance.

You might also like