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

Automata Theory

This document provides information about the course SCS B212: Automata Theory. The course introduces the theory of computation through models like finite automata, pushdown automata, and Turing machines. It examines the relationship between these models and formal languages. The course aims to help students demonstrate an in-depth understanding of automata theories and concepts, understand the connection between language and computation, and analyze the computational strengths and weaknesses of abstract machines. The content includes introduction to models of computation, finite automata, context-free grammars, pushdown automata, Turing machines, and undecidability. The course is delivered through lectures, practicals, discussions, and individual assignments.

Uploaded by

Rolland Andrew
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)
102 views

Automata Theory

This document provides information about the course SCS B212: Automata Theory. The course introduces the theory of computation through models like finite automata, pushdown automata, and Turing machines. It examines the relationship between these models and formal languages. The course aims to help students demonstrate an in-depth understanding of automata theories and concepts, understand the connection between language and computation, and analyze the computational strengths and weaknesses of abstract machines. The content includes introduction to models of computation, finite automata, context-free grammars, pushdown automata, Turing machines, and undecidability. The course is delivered through lectures, practicals, discussions, and individual assignments.

Uploaded by

Rolland Andrew
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/ 2

SCS B212: AUTOMATA THEORY

Contact Hours: 45 Prerequisite: SCS B207


Credit Hours: 3

Purpose of the Course

Introduces the theory of computation through a set of abstract machines that serve as models
for computation: finite automata, pushdown automata, and Turing machines and examines
the relationship between these automata and formal languages.

Expected Learning Outcomes

By the end of this course, the learner should be able to:


i. Demonstrate an in-depth understanding of theories, concepts and techniques in
automata and their link to computation.
ii. Understand the connection between language and computation.
iii. Develop abstract machines that demonstrate the properties of physical machines and
be able to specify the possible inputs, processes and outputs of these machines.
iv. Analyze the computational strengths and weaknesses of these machines. Understand
the concept of computability by manipulating these machines in order to demonstrate
the properties of computational processes.

Course Content

Introduction to models of computation and formal language. History of Automata. Finite


Automata: Deterministic Finite Automata, Nondeterministic Finite Automata, Regular
Expressions, Non-Regular Languages, Context-Free Grammars, Pushdown Automata,
Properties of Context-Free Languages, Turing theory, Turing Machines, Undecidability,
Intractable Problems. Introduction to functional programming.

Mode of Delivery

Lecture, practicals, lecture-discussion, small group work, demonstration, individual


assignment

Instructional Material and Equipment

Whiteboard, chalkboard, computers, computer software, networking, the internet, data


projector, electronic whiteboard, recording camera
Course Assessment

One sit-in End of Semester written exam: 70%; Continuous Assessment = 30% [One, 1hr. sit-
in written test = 20%; take-home assignments = 10%]

Core Textbooks

Cohen, D.I.A. (1997). Introduction to Computer Theory. (2nd ed.). Prentice-Hall


Linz, P. (2011). An Introduction to Formal Languages and Automata (5th ed.). Jones and
Bartlett Learning.
Sipser, M. (2013). Introduction to the Theory of Computation. (3rd ed.). Cengage Learning.
Hopcroft, J.E., Motwani, R. and Ullman, J.D. (2013). Introduction to Automata Theory,
Languages, and Computation. (3rd ed.). Pearson Education Limited.

Further Reading Materials

Kozen, D.C. (2006). Theory of Computation. Springer. ISBN-10: 1846282977.


Shallit, J. (2008). A Second Course in Formal Languages and Automata Theory. (1st ed.).
Cambridge University Press.
Simon, M. (1999). Automata Theory. (1st ed.) World Scientific Pub Co Inc;
Brookshear, J.G. (1989). Theory of Computation: Formal Languages, Automata, and

You might also like