Dersin Adı Ders Kodu Yarıyılı Teori
(Saat/Hafta)
Uygulama
(Saat/Hafta)
Akts
BİÇİMSEL DİLLER VE OTOMATLAR BLM326 6 3 0 4,0
Önkoşul(lar)-var ise
Dersin Dili
Dersin Türü Lisans
Dersin sorumlusu(ları)
Dersin Amacı Bu dersin amacı öğrencinin hesaplama teorisinin temel kavramlarını anlaması, biçimsel diller ve dil yapılarını öğrenmesi ve problem türlerini ayırt etme yeteneği kazanarak karşılaştığı problemleri doğru şekilde sınıflandırabilmesidir.
Dersin Verilme Şekli Örgün
Sıra No Dersin Öğrenme Çıktıları Öğretim Yöntemleri Değerlendirme Yöntemleri Program Yeterliliklerini Karşılama Düzeyi(1)(2)(3)(4)(5)
1 Distinguishes between computability and decidability problems.
1 Hesaplanabilirlik ve karar verilebilirlik problemlerini ayırt eder. Anlatım Sınav 1, 2, 4, 8
2 Temel Biçimsel dil kavramlarını bilir. Anlatım Sınav 1, 2, 4, 8
2 Knows the fundamental concepts of formal languages.
3 Understands the theoretical limits of computational problems.
3 Hesaplama problemlerinin teorik sınırlarını bilir. Anlatım Sınav 1, 2, 4, 8
4
4
5
5
6
6
7
7
8
8
9
9
10
10
11
11
12
12
13
13
14
14
15
15
Dersin İçeriği
Bu ders, Formal diller, Düzenli ifadeler, gramer yapıları ve katarlara giriş, Soyut makine ve dil kavramı, Turing makinası, Chomsky hiyerarşisi, Düzenli ifadeler ve hesaplanabilirlik konularını kapsamaktadır.
Kaynaklar
1. Linz, P. (2011). An Introduction to Formal Languages and Automata (5. ed.). Jones & Bartlett Learning.
Haftalara Göre İşlenecek Konular
Haftalar Konular Dokümanlar
1 . Hafta Hesaplama Teorisine Giriş
1 . Hafta Introduction to Computation Theory
2 . Hafta Finite Automata
2 . Hafta Sonlu Otomatlar
3 . Hafta Düzenli Diller ve Düzenli Gramerler
3 . Hafta Regular Languages and Regular Grammars
4 . Hafta Properties of Regular Languages
4 . Hafta Düzenli Dillerin Özellikleri
5 . Hafta Bağlam Bağımsız Diller
5 . Hafta Context-Free Languages
6 . Hafta Simplification of Context-Free Languages
6 . Hafta Bağlam Bağımsız Dillerin Sadeleştirilmesi
7 . Hafta Normal Formlar
7 . Hafta Normal Forms
8 . Hafta Midterm
8 . Hafta Ara Sınav
9 . Hafta Yığın Yapılı Otomatlar
9 . Hafta Pushdown Automata
10 . Hafta Properties of Context-Free Languages
10 . Hafta Bağlam Bağımsız Dillerin Özellikleri
11 . Hafta Turing Makineleri
11 . Hafta Turing Machines
12 . Hafta Turing Machine Models
12 . Hafta Turing Makinesi Modelleri
13 . Hafta Biçimsel Diller ve Otomatların Hiyerarşisi
13 . Hafta Formal Languages and Hierarchy of Machines
14 . Hafta Limitations of Algorithmic Computation
14 . Hafta Algoritmik Hesaplamanın Sınırlılıkları
15 . Hafta Diğer Hesaplama Modelleri ve Hesaplama Karmaşıklığı
15 . Hafta Other Computational Models and Computational Complexity
16 . Hafta Final Sınavı
Değerlendirme Sistemi
Yarıyıl içi çalışmaları Sayısı Katkı Payı (%)
Yarıyıl İçi Çalışmaları 1 40
Ara Sınav 0 0
Final Sınavı 0 0
0 0
0 0
0 0
1 40
0 0
0 0
0 0
14 20
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
Toplam 100
Yarıyıl İçi Çalışmalarının Başarı Notuna Katkısı 2 40
Yarıyıl Sonu Çalışmalarının Başarı Notuna Katkısı 1 0
Toplam 100
AKTS (Öğrenci İş Yükü) Tablosu
Etkinlikler Sayısı Süresi Toplam İş Yükü
Ders süresi (sınav haftası dahil: 16xders saati) 1 2 2
Ara Sınav 0 0 0
Final Sınavı 0 0 0
Sınıf Dışı Ders Çalışma Süresi (Ön çalışma, pekiştirme) 0 0 0
0 0 0
0 0 0
0 0 0
1 2 2
0 0 0
0 0 0
0 0 0
14 1 14
0 0 0
0 0 0
0 0 0
0 0 0
14 3 42
7 2 14
7 2 14
14 2 28
0 0 0
Toplam İş Yükü 116
Dersin Öğrenme Çıktılarının Program Yeterlilikleri İle İlişkilendirilmesi
Sıra No Program Yeterlilikleri Katkı Düzeyi*
1 2 3 4 5
1 A computer engineer possesses fundamental applied and conceptual knowledge in the field of computer engineering. X
2 They utilize mathematics, natural sciences, and theoretical and applied knowledge in computer engineering to solve engineering problems. X
3 They identify current engineering problems in various application domains and provide feasible recommendations for their solution using computer systems. X
4 They perform analyses of software or hardware-based systems, components, and processes required for problem-solving and create optimal designs that meet specified requirements and constraints. X
5 They select and implement modern methods and tools necessary for engineering applications. X
6 Problemlerin çözümü için gerekli olan veriyi toplar ve işler, deneyler tasarlar, deneyleri gerçekleştirir ve sonuçlarını yorumlar. X
7 Mühendislik projelerinin yönetim süreçlerini bilir, proje için en uygun yönetim araçlarını ve proje yaşam döngüsünü seçer ve uygular. X
8 They code, test, operate, and maintain computer-based systems. X
9 They work effectively in interdisciplinary research and software development teams, both within and outside their own field. X
10 They keep up with current developments in computer engineering and related areas with a consciousness of the necessity of continuous professional development. X
11 They utilize Turkish and English fluently and effectively for tracking scientific and technical resources, presenting projects, and writing academic publications. X
12 They are aware of the legal consequences of information technology applications and the individual, corporate, social, and universal impacts. X
13 Geliştirdiği yazılım ve sistemlerde mesleki ve etik sorumluk bilinciyle hareket eder. X
14 They design and develop computer systems that will facilitate human life or increase comfort with analytical thinking skills. X
15 They possess awareness as an individual who is informed about current and historical events and can interpret them rationally and draw conclusions. X