TCS Module 1-Part 1-Intro-RS
TCS Module 1-Part 1-Intro-RS
3. Nondeterministic Finite Automata (NFA): Definitions, transition diagrams and Language recognizers
7. Minimization of DFA.
8. FA with output: Definition and construction of Moore and Mealy machines and Equivalence ,Applications and
limitations of FA.
Module 2:Regular Expressions and Languages
TCS
Discrete Structures Data Structures
Mathematical Models
FA
(Finite Automata)
PDA
(Push Down Automata)
LBA
(Linear Bound Automata)
TM
(Turing Machine)
Why We Study?
• What is computable?
• What is not computable?
• What are the limitations?
• Whether the given problem can be solved or can not be
solved?
• If it can be solved then How much time and space is
required to solve a problem?
Application of TCS
1. Pattern Matching
2. Compiler and Interpreters
3. Machine Learning
4. Complexity Theory
5. Natural Language Processing
How to Study?
1. Start with the basic Model i.e. Finite Automata
6. See what are limitations of FA and how we can incorporate them using PDA.
7. Learn the other models like PDA, LBA, TM and how they differ in power and limitations.
Basic Concepts
Basic Concepts:
Alphabets
• Language can be defined as a system suitable for expression of certain ideas, facts, or concepts, which
includes a set of symbols and rules to manipulate these.
• We will be focusing on formal languages that need precise and formal definitions.
Context Recursively
Regular Context Free
Sensitive enumerable
Languages Languages
languages languages
FA PDA LBA TM
Finite Automata
Finite Automata (FA) (meaning-”self-acting”)
FA With FA Without
Output Output
0 2
Start
3
Finite Automata-Example
Vending Machines:
Video Games: Video games levels represent the states of automata. In which a sequence of instructions are followed by the
players to accomplish the task.
Text Parsing: Text parsing is a technique which is used to derive a text string using the production rules of a grammar to check
the acceptability of a string.
Regular Expression Matching: It is a technique to checking the two or more regular expression are similar to each other or
not. The finite state machine is useful to checking out that the expressions are acceptable or not by a machine or not.
Speech Recognition: Speech recognition via machine is the technology enhancement that is capable to identify words and
phrases in spoken language and convert them to a machine-readable format. Receiving words and phrases from real world and
then converted it into machine readable language automatically is effectively solved by using finite state machine.
Finite Automata-Model
Finite Automata-Model
1. A tape to hold the input string. The tape is divided into a finite
number of cells. Each cell holds a symbol from .
2. A tape head for reading symbols from the tape
3. A control , which itself consists of 3 things:
• finite number of states that the machine is allowed to be in (zero
or more states are designated as accept or final states),
• a current state, initially set to a start state,
• a state transition function for changing the current state.
Deterministic Finite State Automaton:
Formal Definition
Deterministic Finite State Automaton: A Deterministic Finite State Automaton (DFA) is a 5-tuple:
is the “next state” transition function (which is total ). Intuitively, is a function that
tells which state to move to in response to an input, i.e., if M is in state q and sees input a, it moves
to state .