You are on page 1of 4

Final: 16-2-2016

ALLAMA IQBAL OPEN UNIVERSITY, ISLAMABAD


(Department of Computer Science)

WARNING

1.

PLAGIARISM OR HIRING OF GHOST WRITER(S) FOR SOLVING


THE ASSIGNMENT(S) WILL DEBAR THE STUDENT FROM AWARD
OF DEGREE/CERTIFICATE, IF FOUND AT ANY STAGE.
2. SUBMITTING ASSIGNMENTS BORROWED OR STOLEN FROM
OTHER(S) AS ONES OWN WILL BE PENALIZED AS DEFINED IN
AIOU PLAGIARISM POLICY.
Course: Theory of Automata (3452)
Semester: Spring 2016

Level: Bachelor

Total Marks: 100


Pass Marks: 50

ASSIGNMENT No. 1
Note: All questions carry equal marks.
Q. 1 (a)
(b)
Q. 2 (a)
(b)
(c)

Define theory of automata and write down the detailed history of automata.
Also elaborate the importance of automata theory.
(20)
Show that there are infinitely many different recursive definitions for the set
EVEN.
Define finite language. List the different functions that can be applied to a
finite language.
(20)
Differentiate between Kleen Closure and a positive closure with the help of
examples?
Let S = {a, bb, bab, abaab}. Is abbabaabab in S*? Is abaabbaabb does any
word in S* have an odd total number bs?

Q. 3 (a)

Consider the context free grammar S aS | bb. Prove that this generates the
language defined by the regular expression a*bb.
(20)
(b) Prove that XaXaX can generate any b*ab*ab*.

Q. 4 (a)

Find context free grammar for language over the alphabet = {a, b}. All
words in which the letter b is never triple. All words that have exactly two or
three bs.
(20)
(b) Describe the language generated by the following CFG:
S SS, S XXX, S aX | Xa | b

Q. 5 (a)

(b)

Give recursive definition of the following languages defined over alphabet


= {a, b},
(20)
i.
All strings starting with a or b
ii.
All strings ending with aa.
iii. All strings NOT ending with a.
iv. All strings NOT ending with bb.
v.
All strings having aa at any place.
vi. All strings NOT having aa at any place.
Design a pushdown transducer to convert infix to prefix.

ASSIGNMENT No. 2
Total Marks: 100
Pass Marks: 50
Q. 1 (a)

Differentiate between context free grammar and regular grammar. What are
the conditions when a context free grammar is also called a regular
grammar?
(20)
(b) Consider the following Context Free Grammar (CFG)

Q. 2 Define turing machine and explain standard turing machine with examples. Also
build a turing machine that accepts the language of all words that contain the
substring bbb.
(20)
Q. 3 (a)
(b)
(c)
(d)

Q. 4 (a)

(b)

Build a finite automata that accepts only those words that have an even
number of letters total.
Build a finite automata that accepts only those words that have more than
four letters.
Build an FA that accepts the language of all words with only as or only bs
in then.
Give a regular expression for the language.
L1 = odd length strings and L2 = a(a + b)* are the pair of regular languages,
find a regular expression and an FA that each define L1 L2.
(20)
Define and explain push down automata with the help of a suitable example.
Write a push down automaton to accept the langue {0^n 1^n 0^m 1^m, for all
n,m>=0.
(20)

Q. 5 Explain the following terms with suitable examples:


a)
Greibach Normal Form
b)
Chomsky Normal Form
c)
Closure properties of Regular Languages
d)
Non-Deterministic Finite Automata

(20)

ALLAMA IQBAL OPEN UNIVERSITY ISLAMABAD

(Department of Computer Science)


Course Code:
Course Title:
Credit Hours:
Session Offered:
Recommended Book:
A/V /Multimedia
Content:
Reference Book:

Pre-Requisite:
Course Coordinator:
Teaching Methodology:
Computer Usage:

3452
Theory of Automata
3 (3 + 0), 3 hours lectures per week
As per offering schedule
Introduction to the Theory of Computation by Micheal
Sipser, 3rd Edition, 2012.
As defined by the Instructor / MOOCs links
1. Introduction to computer theory, Daniel I. A. Cohen, 2nd
Edition, 1996
2. Introduction to Automata Theory, Languages, and
Computation (3rd Edition) by John E. Hopcroft, Rajeev
Motwani, and Jeffrey D. Ullman, 2006.
3. Automata Theory with Modern Applications 1st Edition
by James A. Anderson Elaine Rich, 2011
4. An Introduction to Formal Languages and Automata, By
Peter Linz, 4th edition, Jones & Bartlett Publishers, 2006.
3406 Discrete Mathematics
Ch. Muhammad Shahbaz Anjum
Face-to-Face/Online/Blended
Student is desired to use internet for self-learning in this
course

Course Introduction:
This course aims to provide an introduction to formal languages and automata
theory. This course provides detailed explanation of Finite Automata, Normal
Form, Regular Languages, Pushdown Automata, Context-Free Grammar and
Turing Machines.
Course Objectives:
At the end of the course the students are expected to:
1.
Comprehend the theoretical foundations of Computer Science.
2.
Apprehend the mathematical and abstract models of computers.
3.
Discuss basic concepts in formal language theory and related grammars.
4.
Be able to design a simple finite-state machine for a computational task.
5.
Illustrate the terminology of Turing Machine.
Evaluation Criteria:
i.
Assignments and/or quizzes as per instructors choice 10%
ii.
Midterm theory/practical/ presentation/ mini projects as per instructors choice 20%
iii. Final Examination 70%

Course Outline :
Unit# 1 Mathematical Preliminaries and Languages
Set theory, Relations and Functions, Recursive Definitions, Directed Graphs and
Mathematics, Strings and Languages, Finite Specification of Languages, Regular
Sets and Expression, Recursive Definition of Sets
Unit# 2 Regular Expressions (REs) and Finite Automata
Kleen Star, Defining REs for different languages, Mathematical Operations in
REs, Languages associated with REs; Defining and Designing Finite Automaton,
Regular Operations with FAs, Equivalence of REs and FAs.
Unit# 3 Transition Graphs and Non Deterministic Finite Automata
Transition Graphs, Defining and Designing Nondeterministic Finite Automaton,
Equivalence of NFAs and DFAs.
Unit# 4 KleensTheorm
Prove that any language that can be defined by 1) RE or 2) FA or 3) TG, can also
be defined by all three methods.
Unit# 5 Finite Automata with Output
Transducers, Moore Machines, Mealy Machines, Equivalence of Moore and
Mealy Machines
Unit# 6 Regular, Non Regular Languages and Decidability
Regular Grammar and Finite Automate; Non-Regular Language, Pumping Lemma
for Regular Language, Closure Properties of Regular Languages; Decidability,
Equivalence of Two REs, Equivalence of Two FAs, Number of Words in a
Language Define by an FA.
Unit# 7 Context-Free Grammars
Defining Context-Free Grammars (CFGs) and Context-Free Languages (CFLs),
Designing CFGs, Trees and Their Derivation, Ambiguity, Chomsky Normal Form.
Unit# 8 Pushdown Automata
Defining and Designing Pushdown Automata (PDA), Equivalence of PDA and
CFG, Normal Form Grammars and Parsing, Decidability, Chomskys hierarchy of
Grammars
Unit# 9 Turing Machines
Turing machines, Post Machines, Variations on TMs, TMs Encoding, Universal
Turing Machine, Context Sensitive Grammars, Defining Computers by TMs
Activities/Practical:
The instructor must assign a mini project to a group of 2-3 students in the class.
The project may include the analysis and design of a given automata with its
implementation in any OO language.
Note: The instructor may assign additional activities.
Last revised: June 2015
======