0% found this document useful (0 votes)
10 views

Week 1

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views

Week 1

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 23

Theory of Automata -Introduction

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY
Theory Of Automata

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


Course Content:

Course Content:
Finite State Models: Language definitions preliminaries, Regular expressions/Regular
languages, Finite automata (FAs), Transition graphs (TGs), NFAs, Kleene’s theorem,
Transducers (automata with output), Pumping lemma and non-regular language Grammars
and PDA: CFGs, Derivations, derivation trees and ambiguity, Simplifying CFLs, Normal form
grammars and parsing, Decidability, Context sensitive languages, grammars and linear
bounded automata (LBA), Chomsky’s hierarchy of grammars Turing Machines Theory: Turing
machines, Post machine, Variations on TM, TM
encoding, Universal Turing Machine, Defining Computers by TMs.

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


Course Books
https://pakistandasti.files.wordpress.com/2013/11/introduction-to-computer-
theory-by-cohen-copy.pdf
“Introduction to computer theory, Daniel I. A. Cohen, 2nd Edition”
"Introduction to Automata Theory, Languages, and Computation" 3rd Edition by
John Hopcroft, Rajeev Motwani, Jeffrey Ullman
“Introduction to Formal Languages, Automata Theory and Computation” by
Kamala Krithivasan and Rama R.
“An Introduction to Formal Languages and Automata”, 5th Edition by Peter Linz

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


Theory Of Automata
• Week-01
• Introduction to Theory of Automata and languages
• Defining Languages ,Alphabets and strings Chomsky
Hierarchy

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


What is automaton?
A self-operating (or self-acting) mechanism
What is a mechanism?
◦ A mechanism is a process or technique to perform a task
The concept of automaton can be likened to the familiar
concepts of automation or automatic machine i.e. self-
controlled machines
Examples of automatic machines include: Computer, ATM,
any machine that has automatic mechanism

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


Why we study Theory of Automata?
It allows us to think systematically about what machine do
without getting into hardware details.
◦ Remember, we are not students of “Electronics”!
We design theoretical models for machines. These
theoretical models are called abstract machines.
◦ These theoretical models enable us to understand how machines
solve problems.
It is a fundamental/core course of computer science.

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


What is Theory of Automata (TOA)?
TOA is an area of computer science that deals with the study
of abstract machines (mathematical models) as well as the
computational problems that can be solved using them
Unlike practical courses like “programming”, it is a
theoretical course but it provides foundation for some other
practical courses like “Compiler Construction”
Different names for ‘Theory of Automata’:
◦ Theory of Computer Science
◦ Theory of Computation
◦ Computer Theory

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


About Automata
An Automata is used for recognizer called acceptor and as a transducer i.e. a machine with
output capability as well. An acceptor automata accepts a set of words or strings and rejects
others. The main application of is in designing of lexical analyzer, which is an important part of
Compiler.
In a formal way an automata is defined as, “It is a system where energy, materials and the data
or information are transformed and used for performing some functions very less participation
of any human being directly”. Automatic photo printing machines, artificial card punching
machine, human detection and reorganization machine etc. are the real time examples of
automata.
Under the computer science branch the term ‘Automata’ means ‘Discrete Automata’ and it is
defined as;

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY
Some basic concepts of TOA- Letters, Alphabet,
Strings, Words, Language
Letters: Symbols out of which we build languages for machines e.g. a,
b, c, d,.. 0, 1, 2, 3, …
Alphabet: a set of letters, denoted by Greek letter Σ e.g. Σ={a, b}
String: Concatenation of letters OR sequence of letters e.g. aa, bab
Language: a set of strings with rules
◦ Example: Make a language for a machine where every string starts with an ‘a’ and
also ends with an ‘a’. Σ={a, b}
◦ L1={aa, aaa, aba, aaaa,….}

Word: String that is permissible in language

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


More on Automata……
Singular is automaton; Plural is automata
Abstract models of machines i.e. automaton consists of only states, transitions,
input/output. No other details.
Computations on input are performed by moving through states.
Sample automata:

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY
DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY
Formal Languages
We will also study formal language in this course.
Every formal language is defined using a set of rules
Context Free Grammars (CFG) and Regular Expressions (RE) are means
to define rules for formal languages
Theory of Automata and Theory of Formal Languages are
interconnected
◦ CFG and PDA are equivalent i.e. for every CFG there exists an equivalent PDA and
vice versa.
◦ RE and DFA are equivalent i.e. for every RE there is an equivalent DFA and vice
versa.

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


Chomsky Hierarchy

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


Formal Language vs. Informal Language
Formal Language: Concerned with just rules/syntax NOT with meaning
◦ E.g. Language of strings that starts with an ‘a’ and end with an ‘a’.
◦ L1={aa, aaa, aba, aaaa, aaba, abaa, abba ….}
◦ Formal language theory studies purely syntactical aspects of a language

Informal Language: Concerned with rules and meaning


◦ E.g. English language

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


Course Learning Outcomes (CLOs)
1.Explain the different concepts in automata theory and formal
languages
2.Analyze properties of languages, grammars, and automata with
formal methods.
3.Design grammars and models for different languages

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY
TEXT BOOK

https://pakistandasti.files.wordpress.com/2013/11/introductio
n-to-computer-theory-by-cohen-copy.pdf

Chapter 1 & 2

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


Thank You

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY


THE END

DEPARTMENT OF COMPUTING, FCIT, INDUS UNIVERSITY

You might also like