Ders AdıKodu Yerel KrediAKTS Ders (saat/hafta)Uygulama (saat/hafta)Laboratuar (saat/hafta)
Biçimsel Diller ve Soyut MakinelerBLM487134300
Önkoşullar0112502 - Hesaplama Kuramı
YarıyılGüz
Dersin DiliTürkçe
Dersin SeviyesiLisans
Dersin TürüZorunlu @ Bilgisayar Mühendisliği Lisans Programı
Ders KategorisiTemel Meslek Dersleri
Dersin Veriliş ŞekliYüz yüze
Dersi Sunan Akademik BirimBilgisayar Mühendisliği Bölümü
Dersin KoordinatörüÖmer Özgür Bozkurt
Dersi Veren(ler)Banu Diri
Asistan(lar)ı
Dersin AmacıDillerin sınıflandırılması ve tanımlanmasında en temel düzeyde bilgi sahibi olup, otomatları ve işlevlerini öğrenerek, programlama dilleri yeteneğinin geliştirilmesi.
Dersin İçeriğiAlfabe, Dil, Dilbilgisi, Dilbilgisi Sınıflar, Chomsky Sıradüzeni, Düzgün Dilbilgisi, Bağlamdan Bağımsız Dilbilgileri, CFG ve BNF Gösterimi, Ayrıştırma Ağacı,Soldan Özyineleme ve kaldırılması, Pompalama Teoremi, Karar verme problemi, Normal Biçimler, Yığıtlı Otomat, Bağlama Bağımlı Dilbilgileri, Doğrusal Bağımlı Otomatlar, Kısıtlamasız Diller, Turing makinesi, Curch Turing Hipotezi, Kodlar, Schutzenberger Kriteri, Sardinas Patterson Algoritması, Önek Kodlar, Sınırlı Gecikmeli Kodlar, Optimum Kodlar ve Huffman Algoritması
Ders Kitabı / Malzemesi / Önerilen Kaynaklar
  • John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman “Introduction to Automata Theory, Languages, and Computation 2E.”, Addison Wesley
  • Harrison, M.A.: Introduction to Formal Language Theory. Addison–Wesley
  • Ü. Yarımağan, "Özdevinirler (Otomatlar) Kuramı ve Biçimsel Diller, 2. Baskı", Seckin Yayinevi
Opsiyonel Program BileşenleriYok

Ders Öğrenim Çıktıları

  1. Öğrenciler rogramlama dillerine temel teşkil eden, bağlamdan bağımsız dilbilgileri ve düzgün dilbilgileri başta olmak üzere dilbilgisi sınıflarına hakimdir.
  2. Öğrenciler yeni programlama dilleri ögrenme ve tasarlama konusunda sürekli öğrenme motivasyonuna sahiptir.
  3. Öğrenciler Sonlu ve yığıtlı otamatlar, Turing makineleri gibi kavramsal temel konulara hakimiyet sahibidir.
  4. Öğrenciler Dilbilgisi ile üretilebilecek kodların sınırlamalarını bilir.
  5. Öğrenciler Programlama dili olarak kullanılabilecek dilbilgilerini ayırt eder.

Haftalık Konular ve İlgili Ön Hazırlık Çalışmaları

HaftaKonularÖn Hazırlık
1Temel Kavramlar ve Ders Tanıtımı
2Dilbilgisi Türleri ve Chomsky Sıradüzeni
3Düzgün Dilbilgileri
4Bağlamdan Bağımsız Dilbilgisi, Ayrıştırma Ağacı
5CFG Gösterimi
6BNF Gösterimi
7Soldan Özyineleme ve Kaldırılması, Pompalama Teoremi
8Karar Verme Problemi, Normal Biçimler, Yığıtlı Otomat
9Arasınav
10Bağlama Bağımlı Dilbilgisi, Doğrusal Bağımlı Otomatlar
11Kısıtlamasız Dilbilgileri, Turing Makineleri
12Turing Makineleri, Church-Turing Hipotezi
13Kodlar, Schutzenberger Kriteri
14Önek Kodlar, Sınırlı Gecikmeli Kodlar
15Optimum Kodlar, Huffman Algoritması
16Yılsonu Sınavı

Değerlendirme Sistemi

EtkinliklerSayıKatkı Payı
Devam/Katılım
Laboratuar
Uygulama
Arazi Çalışması
Derse Özgü Staj
Küçük Sınavlar/Stüdyo Kritiği210
Ödev525
Sunum/Jüri
Projeler
Seminer/Workshop
Ara Sınavlar125
Final140
Dönem İçi Çalışmaların Başarı Notuna Katkısı
Final Sınavının Başarı Notuna Katkısı
TOPLAM100

AKTS İşyükü Tablosu

EtkinliklerSayıSüresi (Saat)Toplam İşyükü
Ders Saati163
Laboratuar
Uygulama
Arazi Çalışması
Sınıf Dışı Ders Çalışması101
Derse Özgü Staj
Ödev55
Küçük Sınavlar/Stüdyo Kritiği25
Projeler
Sunum / Seminer
Ara Sınavlar (Sınav Süresi + Sınav Hazırlık Süresi)110
Final (Sınav Süresi + Sınav Hazırlık Süresi)120
Toplam İşyükü :
Toplam İşyükü / 30(s) :
AKTS Kredisi :
Diğer NotlarYok