0% found this document useful (0 votes)
31 views2 pages

Automata, Complexity and Computabilioty Course Outline

The course BCS 3311, Automata, Complexity and Computability, is designed for third-year students and covers foundational concepts in automata theory, complexity, and computability. It aims to prepare students for advanced studies in compiler construction and programming languages, with a focus on mathematical proofs and problem-solving. Assessment includes coursework and examinations, with a total of 100 marks.

Uploaded by

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

Automata, Complexity and Computabilioty Course Outline

The course BCS 3311, Automata, Complexity and Computability, is designed for third-year students and covers foundational concepts in automata theory, complexity, and computability. It aims to prepare students for advanced studies in compiler construction and programming languages, with a focus on mathematical proofs and problem-solving. Assessment includes coursework and examinations, with a total of 100 marks.

Uploaded by

mosesagaba502
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Third Year - Semester I course units

4.5.1 Automata, Complexity and Computability (BCS 3311)

Course Title : Automata, Complexity and Computability


Course Code : BCS 3311
Course Level : Year III, Semester I
Course Credits : Contact Hours 45, Credit Units 3

Course Description
The course introduces students to the concept of automata and complexity.
It sets a background for more advanced studies like compiler construction
and principles of programming languages.

Course Objectives
a) To introduce students to the concepts of complexity, automata and
computability
b) introduce students to the mathematical foundations of computation
including automata theory
c) To enhance/develop students' ability to understand and conduct
mathematical proofs for computation and algorithms.
d) To prepare students for advanced studies in compiler construction and
principle of programming languages

Learning Outcomes
After completing this course, students will be able to:
Analyze and design finite automata, pushdown automata, Turing machines,
formal languages, and grammars.
a) Demonstrate their understanding of key notions, such as algorithm,
computability, decidability, and complexity through problem solving.
b) Prove the basic results of the Theory of Computation.
c) State and explain the relevance of the Church-Turing thesis.

Course Content

Topic and Content Hour


s
Finite state machines and regular languages: 5
Deterministic and non deterministic machines; 5
Equivalence and minimization; 5
Regular expressions and regular grammars; 3
Kleene's theorem. 5
Push-down automata and context free grammars; 5
Normal forms of grammars; Top-down and bottom-up parsing 5
Turing machines and computability; 5
Church's thesis; 3
NP-Computable problems 4
Mode of Instruction and Assessment
Main instruction mode will be through lectures, tutorials and practical.

Mode of Assessment
The Course unit will be assessed on the basis of 100 total marks with
proportions as follows:

(i) Course Work - 30; and


(ii) Examination - 70.

References
1) Rich (2008), Automata, Computability and Complexity: Theory and
Applications,1st Edition, Prentice Hall, ISBN-10: 0132288060
2) Hopcroft, Motwani & Ullman, (2007), Introduction to Automata Theory,
Languages, and Computation,3rd Edition, Prentice Hall ISBN-10:
0321455363
3) Kinber & Smith, (2001) Theory of Computing: A Gentle Introduction,1st
Edition, Prentice Hall ISBN-10: 0130279617
4) Hamburger & Richards, (2002), Logic and Language Models for Computer
Science, 1st Edition, Prentice Hall, ISBN-10: 0130654876
5) John E. Hopcroft, Rajeev Motwani, Je_rey D. Ullman, 2000, Introduction to
Automata Theory, Languages, and Computation; AddisonWesley.

You might also like