DEPARTMENT OF SOFTWARE ENGINEERING (ENGLISH)
Bachelor TR-NQF-HE: Level 6 QF-EHEA: First Cycle EQF-LLL: Level 6

Ders Genel Tanıtım Bilgileri

Course Code: 1413211003
Ders İsmi: Theory of Computation
Ders Yarıyılı: Fall
Ders Kredileri:
Theoretical Practical Credit ECTS
3 0 3 5
Language of instruction: EN
Ders Koşulu:
Ders İş Deneyimini Gerektiriyor mu?: No
Type of course: Necessary
Course Level:
Bachelor TR-NQF-HE:6. Master`s Degree QF-EHEA:First Cycle EQF-LLL:6. Master`s Degree
Mode of Delivery:
Course Coordinator : Dr.Öğr.Üyesi Adem ÖZYAVAŞ
Course Lecturer(s): Assoc. Prof. Ali ÇİVRİL
Dr.Öğr.Üyesi İmren YEŞİLYURT
Course Assistants:

Dersin Amaç ve İçeriği

Course Objectives: The aim of this course is to introduce students to the mathematical foundations of computation, including automata theory and the theory of formal languages ​​and grammars; At the same time, automata, equivalent regular expressions, equivalence of languages ​​defined by automatons, regular expressions, pushdown automaton, equivalent context-free grammars, equivalent of languages ​​defined by pushdown automata, context. equivalence of languages ​​defined by free grammars, Turing machines, and Turing machines.
Course Content: Course Content Mathematical Tools (Definitions, Theorems and Proofs); Types of Proof; Regular Languages; Finite Automata; Nondeterministic Machines; Regular Expressions; Irregular Languages; Context-free Languages; Context-free Grammars; Press Automatic; Turing Machines; Types of Turing Machines; Definition of "Algorithm"; Decision Making; Decidable Languages; NP-integrity; Reducibility; Recognizability.

Learning Outcomes

The students who have succeeded in this course;
Learning Outcomes
1 - Knowledge
Theoretical - Conceptual
2 - Skills
Cognitive - Practical
3 - Competences
Communication and Social Competence
Learning Competence
Field Specific Competence
1) Students will be able to analyze finite automata, deterministic and non-deterministic automata, regular expressions, push automata, turing machines, formal languages ​​and grammars.
2) Students will be able to design for finite automata, deterministic and non-deterministic automata, regular expressions, push automata, turing machines, formal languages ​​and grammars.
3) Students will demonstrate an understanding of key concepts such as algorithm, computability, decidability, and complexity through problem solving.
4) Students will become familiar with Turing Machines and Problem Classes.
5) Students will develop their problem posing and solving skills.
6) Students will be able to prove the basic results of the Theory of Computation.
Competence to Work Independently and Take Responsibility

Ders Akış Planı

Week Subject Related Preparation
1) Formation of preliminary concepts, mathematical tools, definitions, theorems and proofs, types of proofs Data Structures – A Pseudocode Approach with C, R. Gillberg, B. Forouzan, Thomson Course Technology Second Edition
2) Deterministic finite automata (DFA) Data Structures – A Pseudocode Approach with C, R. Gillberg, B. Forouzan, Thomson Course Technology Second Edition
3) Non-deterministic finite automata (NFA) Data Structures – A Pseudocode Approach with C, R. Gillberg, B. Forouzan, Thomson Course Technology Second Edition
4) Equivalence of DFA and NFA and regular expressions Data Structures – A Pseudocode Approach with C, R. Gillberg, B. Forouzan, Thomson Course Technology Second Edition
5) Epsilon transition, pumping Lemma, pigeon principle and closure features Data Structures – A Pseudocode Approach with C, R. Gillberg, B. Forouzan, Thomson Course Technology Second Edition
6) Optimal DFA and overview Data Structures – A Pseudocode Approach with C, R. Gillberg, B. Forouzan, Thomson Course Technology Second Edition
7) Context-free languages, context-free grammars, parse tree, ambiguity, closure properties Data Structures – A Pseudocode Approach with C, R. Gillberg, B. Forouzan, Thomson Course Technology Second Edition
8)
9) Stacked Vending Machines Data Structures – A Pseudocode Approach with C, R. Gillberg, B. Forouzan, Thomson Course Technology Second Edition
10) Overview of context-free grammars and the Church-Turing hypothesis Data Structures – A Pseudocode Approach with C, R. Gillberg, B. Forouzan, Thomson Course Technology Second Edition
11) Turing Machines, Recognition and Computation, Church-Turing Hypothesis Data Structures – A Pseudocode Approach with C, R. Gillberg, B. Forouzan, Thomson Course Technology Second Edition
12) NP-completeness, decidability, reducibility and recognizability Data Structures – A Pseudocode Approach with C, R. Gillberg, B. Forouzan, Thomson Course Technology Second Edition
13) Data Structures – A Pseudocode Approach with C, R. Gillberg, B. Forouzan, Thomson Course Technology Second Edition

Sources

Course Notes / Textbooks: Michael Sipser, Introduction to the Theory of Computation, Cengage Learning, 3rd Edition, 2012
Daniel I. A. Cohen, Introduction to Computer Theory, Prentice-Hall, 2nd Edition, 1997
References: Michael Sipser, Introduction to the Theory of Computation, Cengage Learning, 3rd Edition, 2012
Daniel I. A. Cohen, Introduction to Computer Theory, Prentice-Hall, 2nd Edition, 1997

Ders - Program Öğrenme Kazanım İlişkisi

Ders Öğrenme Kazanımları

1

2

3

4

5

6

Program Outcomes
1) Competent knowledge of mathematics, science and technology, and computer engineering; ability to apply this knowledge to engineering solutions.
2) Skills to design and conduct experiments, collect data, analyze and interpret results.
3) Ability to design a complex system, process, device or product under realistic constraints and conditions to meet specific requirements; ability to apply modern design methods for this purpose.
4) Ability to develop, select and use modern techniques and tools required for analysis and solution of complex problems encountered in engineering practice; ability to use information technologies effectively.
5) Ability to design and conduct experiments, collect data, analyze and interpret results to investigate complex engineering problems or discipline-specific research topics.
6) Ability to work effectively in intra-disciplinary and multi-disciplinary teams; ability to work individually.
7) Ability to communicate effectively in Turkish, both orally and in writing; Knowledge of at least one foreign language; the ability to write and understand written reports effectively, to prepare design and production reports, to make effective presentations, to give and receive clear and understandable instructions.
8) Awareness of the necessity of lifelong learning; the ability to access information, to follow developments in science and technology, and to constantly renew oneself.
9) Acting in accordance with ethical principles, professional and ethical responsibility awareness; information about standards used in engineering applications.
10) Information about business life practices such as project management, risk management and change management; awareness of entrepreneurship, innovation; information about sustainable development.
11) Knowledge about the universal and social effects of engineering applications on health, environment and safety and the problems of the age reflected in the field of engineering; awareness of the legal consequences of engineering solutions.

Ders - Öğrenme Kazanımı İlişkisi

No Effect 1 Lowest 2 Low 3 Average 4 High 5 Highest
           
Program Outcomes Level of Contribution
1) Competent knowledge of mathematics, science and technology, and computer engineering; ability to apply this knowledge to engineering solutions. 4
2) Skills to design and conduct experiments, collect data, analyze and interpret results. 3
3) Ability to design a complex system, process, device or product under realistic constraints and conditions to meet specific requirements; ability to apply modern design methods for this purpose.
4) Ability to develop, select and use modern techniques and tools required for analysis and solution of complex problems encountered in engineering practice; ability to use information technologies effectively. 3
5) Ability to design and conduct experiments, collect data, analyze and interpret results to investigate complex engineering problems or discipline-specific research topics.
6) Ability to work effectively in intra-disciplinary and multi-disciplinary teams; ability to work individually.
7) Ability to communicate effectively in Turkish, both orally and in writing; Knowledge of at least one foreign language; the ability to write and understand written reports effectively, to prepare design and production reports, to make effective presentations, to give and receive clear and understandable instructions.
8) Awareness of the necessity of lifelong learning; the ability to access information, to follow developments in science and technology, and to constantly renew oneself.
9) Acting in accordance with ethical principles, professional and ethical responsibility awareness; information about standards used in engineering applications.
10) Information about business life practices such as project management, risk management and change management; awareness of entrepreneurship, innovation; information about sustainable development.
11) Knowledge about the universal and social effects of engineering applications on health, environment and safety and the problems of the age reflected in the field of engineering; awareness of the legal consequences of engineering solutions.

Öğrenme Etkinliği ve Öğretme Yöntemleri

Ölçme ve Değerlendirme Yöntemleri ve Kriterleri

Assessment & Grading

Semester Requirements Number of Activities Level of Contribution
Quizzes 3 % 30
Midterms 1 % 30
Semester Final Exam 1 % 40
total % 100
PERCENTAGE OF SEMESTER WORK % 60
PERCENTAGE OF FINAL WORK % 40
total % 100

İş Yükü ve AKTS Kredisi Hesaplaması

Activities Number of Activities Duration (Hours) Workload
Course Hours 12 3 36
Study Hours Out of Class 6 3 18
Quizzes 2 10 20
Midterms 1 25 25
Final 1 35 35
Total Workload 134