Biçimsel Diller ve Soyut Makineler

Slides:



Advertisements
Benzer bir sunumlar
OPERATÖRLER.
Advertisements

LİMİT.
Sentaks ve Semantiği tanımlama
Yrd. Doç. Dr. M. Fatih HOCAOĞLU Mühendislik ve Mimarlık Fakültesi Endüstri Mühendisliği Bölümü.
Sözcüksel(Lexical) ve Sentaks Analiz
TURING MAKİNESİ NASIL ÇALIŞIR?
BAS-BIRAK OTOMATLARI (YIĞITLI ÖZDEVİNİRLER)
TURING MAKİNELERİ Yılmaz Kılıçaslan.
ÜNİTE 1 DOĞAL SAYILAR.
OTOMATA TEORİSİ SELÇUK KILINÇ
Sonlu Durum Makinesi M=(S, I, O, f, g, s0) S:durumlar kümesi
FIRST ENGLISH 4. ve 5. Sınıflar için by İrfan BOY
Alfabemizde 29 harf vardır.Her harfin büyüğü ve küçüğü vardır.
C++ Temelleri C++ genel amaçlı, nesne tabanlı, yüksek seviye programlama dilidir.
DEĞİŞKENLER, VERİ TÜRLERİ VE OPERATÖRLER
Bağlama Duyarlı Diller
Derleyici Teorisine Giriş
DÜZENLİ GRAMERLER Yılmaz Kılıçaslan.
BAĞLAMDAN BAĞIMSIZ GRAMERLER ÖZYİNELEMELİ GEÇİŞ AĞLARI (Chomsky Hiyerarşisi: Tip 2) Yılmaz Kılıçaslan.
C# Veri Tipleri ve Değişkenler
=>CÜMLEDE ANLAM<=
BAĞLAMA DUYARLI GRAMERLER
BAĞLAMA DUYARLI GRAMERLER
BAĞLAMA DUYARLI GRAMERLER
KÜMELER GEZEGENİNE HOŞ GELDİNİZ
KOMPOZİSYON YAZMA GİRİŞ BÖLÜMÜ.
FIRST ENGLISH ANKARA ve 5. Sınıflar için.
DÜZENLİ İFADELER Regular Expressions.
flex Sözcüksel Analiz İçin Bir Araç
Sözcüksel Çözümleme/Analiz (Lexical Analysis)
Biçimsel Diller ve Soyut Makineler
SONLU OTOMATLAR Yılmaz Kılıçaslan.
Sentaks (Sözdizim) ve Semantik (Anlam)
BISON (YACC) (Yet Another Compiler Compiler)
Değişkenler Programda Değişken Tanımlama. Değişken nedir? (Variables) Program içinde kullanılan veri(data)nin tutulduğu alanın adıdır. Her veri bir tür.
Bölüm 3: Sentaks ve Semantiği Tanımlama
Biçimsel Diller ve Soyut Makineler Push-Down Automata (PDAs)
NFA-, NFA, DFA dönüşümü 1.
Adım Adım Algoritma.
SAYISAL ANALİZ Doç.Dr. Cüneyt BAYILMIŞ.
YAPISINA GÖRE KELİMELER Basit Kelimeler Türemiş Kelimeler
Biçimsel Diller ve Soyut Makineler
Regüler İfadeler ve Regüler Diller
Biçimsel Diller ve Soyut Makineler
Formel Diller ve Soyut Makineler
Formel Diller ve Soyut Makineler
Bilgisayar Mühendisliği Bölümü
Formel Diller ve Soyut Makineler
Bilgisayar ile Çeviri Sistemleri
YÜZEY ve DÜZLEM
Formel Diller ve Soyut Makineler
Turing Machines Turing Makineleri.
Formel Diller ve Soyut Makineler
BSM208 PROGRAMLAMA DİLLERİNİN PRENSİPLERİ
Ambiguity Ambiguous Grammar: Bazi sentence lar icin birden fazla parse tree ureten grammarlere denir. Ambiguous Grammar ler bazi sentence lari birden fazla.
VERİ TÜRLERİ.
Sentaks ve Semantiği tanımlama
Sentaks ve semantik tarifi
NİŞANTAŞI ÜNİVERSİTESİ
Bilgisayar Bilimi Problem Çözme Süreci-2.
Akis diyagramı Örnekleri
NİŞANTAŞI ÜNİVERSİTESİ
Ortam Bağımsız Dillerin Özellikleri
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
OBG’nin ABÖ’ye Dönüştürülmesi ABÖ’nün OBG’ye Dönüştürülmesi
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
Ortam-Bağımsız Gramerler (OBG)
Sunum transkripti:

Biçimsel Diller ve Soyut Makineler Gramerler ve Türetme Ağaçları

Gramerler Her Biçimsel Dil Sonlu Sayıda alfabeden oluşur. Alfabedeki karakterler kelimeleri oluşturur. Kelimeler bir araya gelerek cümleleri oluşturur.

Dilin Tanımı Bir gramer 4 bileşenden oluşur: G = < VN, VT, P, S > Burada; VN : Terminal (uç simge) olmayanlar-nonterminal kümesi (sonlu bir küme) VT = Terminal olanlar (Uç simgeler) kümesi (sonlu bir küme). VN ve VT farklı kümelerdir. VN ∩VT = ∅ S : Başlangıç non-termineli : S ∈ VN P : Kurallar kümesi (yeniden yazma)

Yeniden Yazma Kuralı 𝛼⇒𝛽 (yerine olabilir) 𝛼𝜖 𝑉 ∗ 𝛽𝜖 𝑉 + 𝑉= 𝑉 𝑁 + 𝑉 𝑇 𝑉 ∗ = 𝑉 + − Λ

Örnek 𝐿 𝐺 = 𝑎 𝑛 𝑏 𝑛 :𝑛≥1

Örnek

Gramer Türleri tür-0 (kısıtlamasız) gramer ve diller Turing makineler, tür-1 (bağlama-bağımlı) gramer ve diller, tür-2 Context Free Grammar (bağlamdan bağımsız) gramer ve diller, tür-3 Regüler gramer ve diller

Tür-0 Türetimin sol tarafında boşluk dahil istenildiği kadar terminal ve non-terminal, sağ tarafında istenildiği kadar terminal ve non-terminal bulunabilir.

Tür-1 Türetimin sol tarafındaki simge sayısı sağ taraftaki simge sayısına eşit veya daha az olmalıdır.

Reguler Diller

Context-Free Diller Reguler Diller

Context-Free Diller(CFL)-bağlamdan bağımsız Grammars Pushdown Automata stack automaton

Örnek Gramer: Cümle türetimi :

Gramer: Cümle türetimi :

Gramerin tanımladığı dil:

Biçimsel Tanım Değişkenler kümesi Uç simgeler (terminal) Başlangıç değişkeni Türetim kuralları

Örnek Gramer :

Tümcesel formlar Tümce Tümcesel form: nonterminal ve termineller içerir Örnek: Tümcesel formlar Tümce

Yerine : yazabiliriz Genel olarak da yerine yazabilriz.

Örnek Gramer Türetimler

Örnek Gramer Türetimler

Örnek Türetimler:

(((( )))) Örnek1 Bir CFG şu kurallarla verilmiş olsun: Bir türetim: Bir başka türetim: (((( ))))

Örnek 2 Bir diğer CFG şu kurallarla verilmiş olsun. Tanımladığı dili Yazınız.

Tanım: Context-Free Grammars nonterminal Terminal simgeler BaşlangıçNT Türetim Kuralları: Terminal yada NT Tek NT

Türetim Sırası Soldan türetim (Leftmost derivation): Sağdan türetim (Rightmost derivation):

Soldan türetim (Leftmost derivation): Sağdan türetim (Rightmost derivation):

Türetim Ağaçları

Türetim Ağacı

Türetim Ağacı

Sentential forms

BELİRSİZLİK (Ambiguity) leftmost

Leftmost

Aynı tümceye iki farklı Türetim ağacı

Belirsizlik neden önemlidir? olsun

Bir dildeki bu belirsizlikler kaldırılmalıdır yerine yazarız.

Haftaya Gramerlerin sadeleştirilmesi TEŞEKKÜRLER