0% found this document useful (0 votes)
567 views3 pages

Formal Language and Automata Course Outline

This course covers formal language theory and automata theory. Over the course of the semester, students will learn about fundamental concepts such as grammars, finite automata, regular expressions, pushdown automata, and Turing machines. Specific topics include the Chomsky hierarchy of formal languages, operations on languages, regular expressions and their equivalence to non-deterministic finite automata, context-free languages, and parsing. The goal is for students to understand these theoretical foundations of computer science and be able to analyze and solve problems using the concepts learned.

Uploaded by

shimelis
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)
567 views3 pages

Formal Language and Automata Course Outline

This course covers formal language theory and automata theory. Over the course of the semester, students will learn about fundamental concepts such as grammars, finite automata, regular expressions, pushdown automata, and Turing machines. Specific topics include the Chomsky hierarchy of formal languages, operations on languages, regular expressions and their equivalence to non-deterministic finite automata, context-free languages, and parsing. The goal is for students to understand these theoretical foundations of computer science and be able to analyze and solve problems using the concepts learned.

Uploaded by

shimelis
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
You are on page 1/ 3

Harambe University cOLLEGE

Department of Computer Science

Course Title : Formal Language Theory


Course Code : CoSc 3111
Credit Hour : Credit hours = 3
Instructor : Shimelis T.
Email: [email protected]

Course Description:

This course aims to develop the theoretical foundations of computer science through study of mathematical
and abstract models of computers and the theory of formal languages. It also, introduces some fundamental
concepts in automata theory and formal languages including grammar, finite automaton, regular
expression, formal language, pushdown automaton, and Turing machine. Not only do they form basic
models of computation, they are also the foundation of many branches of computer science, e.g. compilers,
software engineering, concurrent systems, etc.

Course Goal (Learning outcome):


On completion of this course students should be able to: Introduce concepts in automata theory and theory
of computation Study the central concepts of automata theory Acquire insights into the relationship among
formal languages, formal grammars, and automata. Identify different formal language classes and their
relationships. Design grammars and recognizers for different formal languages Prove or disprove theorems
in automata theory using its properties Familiar with thinking analytically and naturally for problem
solving situations in related areas of theory in computer science.

Content of the course

Chapter Title Detailed Content

Mathematical foundation and set


 Sets
 Representation of sets
 Finite set and infinite sets
Introduction
1  Sequence and tuples
 Relation and its types
 Function
 Boolean logic
 Graph and tree

The Theory  Definition of automata


of Automata  Description of a Finite Automaton
2  DFA
 NFA
 Equivalence of DFA and NFA
 Applications of FA
1


3 Formal
Languages Symbol, Alphabets String and Language

 Operation on Languages

 Definition of a Grammar

 Chomsky Classification of Language

Regular Sets and


 Operations on Languages
4 Regular
Grammars
 Regular Expressions

 Equivalence of Regular Expressions and NFA

 Inductive Hypothesis

 Arden’s Theorem

 Lemma Theorem

 Definition of CFG
5 Context Free  Context Free Languages and Derivation Trees
Language  Right-Linear Grammar
 Right-Linear Gram mars and NFAs
 Left-Linear Grammar
 Definition of a Derivation Tree
 Parsing and ambiguity
 Ambiguous Grammars/Ambiguous Languages
 Simplification of CFG
6 Pushdown
Automata

 Formal Definition of PDF


 Characteristics of PDAs
 Summary of mathematical terms

References
• An Introduction to Formal Languages and Automata, Third Edition, Peter Linz, 2001 or
new edition
• An Introduction to Formal Language Theory that Integrates Experimentation and Proof
Allen Stoughton, 2004 or new edition.

You might also like