Course Information
SemesterCourse Unit CodeCourse Unit TitleT+P+LCreditNumber of ECTS CreditsLast Updated Date
1BBM401AUTOMATA THEORY AND FORMAL LANGUAGES3+0+03606.09.2024

 
Course Details
Language of Instruction English
Level of Course Unit Bachelor's Degree
Department / Program COMPUTER ENGINEERING
Type of Program Formal Education
Type of Course Unit Elective
Course Delivery Method Face To Face
Objectives of the Course The objective of this course is to teach automata and formal language concepts which are important concepts of computer science discipline.
Course Content Introduction to automata theory.
Deterministic finite automata (DFA) and non-deterministic finite automata (NFA).
Regular languages and regular expressions.
Properties of regular languages and pumping lemma for regular languages.
Context-Free languages (CFL) and context-free grammars (CFG).
Parse trees.
Pushdown automata (PDA).
Equivalence of CFG’s and PDA’s.
Properties of Context-Free Languages and Pumping Lemma for Context-Free Languages.
Turing machines and computability theory.
Course Methods and Techniques Lecture, Problem Solving
Prerequisites and co-requisities ( BBM102 ) and ( BBM104 )
Course Coordinator None
Name of Lecturers Prof. Dr. İlyas Çiçekli
Assistants None
Work Placement(s) No

Recommended or Required Reading
Resources J.E. Hopcroft, R. Motwani, and J.D. Ullman, "Introduction to Automata Theory, Languages, and Computation", 3rd Edition, Addison Wesley, 2007. M. Sipser, "Introduction to The Theory of Computation", 2nd Edition, Course Technology, 2006.
Course Notes J.E. Hopcroft, R. Motwani, and J.D. Ullman, “Introduction to Automata Theory, Languages, and Computation”, 3rd Edition, Addison Wesley, 2007.
M. Sipser, “Introduction to The Theory of Computation”, 2nd Edition, Course Technology, 2006.
Ü. Yarımağan, “Özdevinirler Kuramı ve Biçimsel Diller”, Bıçaklar Kitabevi, 2003.



Planned Learning Activities and Teaching Methods
Activities are given in detail in the section of "Assessment Methods and Criteria" and "Workload Calculation"

Assessment Methods and Criteria
In-Term Studies Quantity Percentage
Midterm Exam 2 % 60
Final examination 1 % 40
Total
3
% 100

 
ECTS Allocated Based on Student Workload
Activities Quantity Duration Total Work Load
Course Duration 14 3 42
Hours for off-the-c.r.stud 14 5 70
Preparation for Midterm Exam 2 15 30
General Exam Preparation 1 20 20
Total Work Load   Number of ECTS Credits 5,4 162

 
Course Learning Outcomes: Upon the successful completion of this course, students will be able to:
NoLearning Outcomes
1 Learn finite automata and formal language concepts
2 Learn regular languages and regular expression concepts, and their relationships with finite automata.
3 Learn Pushdown Automata, Context-Free Grammars, and Context-Free Language concepts, and relationships among these concepts.
4 Learn parsing concepts and their relationships with formal language and automata concepts.
5 Learn Turing machines and Type-0 languages.
6 Learn formal language hierarchy and its relationships with computability theory.
7 Learn the importance of formal languages and automata in computer science.
8 Biçimsel dillerin ve özdevinirlerin bilgisayar bilimlerindeki uygulamalar için önemini öğrenirler.

 
Weekly Detailed Course Contents
WeekTopicsStudy MaterialsMaterials
1 Introduction to Automata Theory and Formal Proofs
2 Deterministic Finite Automata (DFA)
3 Nondeterministic Finite Automata (NFA)
4 Regular Expressions and Regular Languages
5 Properties of Regular Languages and pumping lemma for regular languages
6 Midterm exam
7 Context-Free Grammars (CFG's) and Context-Free Languages
8 Parse Trees and Ambiguity
9 Pushdown Automata (PDA)
10 Equivalence of CFG's and PDA's.
11 Midterm
12 Pumping Lemma for Context-Free Languages
13 Properties of Context-Free Languages
14 Turing Machines.
15 Final Exam Preparation
16 Final Exam

 
Contribution of Learning Outcomes to Programme Outcomes
P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12
All 4 2 2 2 2 2 2 3 2 1 1
C1
C2
C3
C4
C5
C6
C7
C8

  Contribution: 1: Very Slight 2:Slight 3:Moderate 4:Significant 5:Very Significant

  
  https://bilsis.hacettepe.edu.tr/oibs/bologna/progCourseDetails.aspx?curCourse=2687380&lang=en