Düzenli Diller Hakkında Sorular (“ Karar Özellikleri ”)

Slides:



Advertisements
Benzer bir sunumlar
Hâsılat kavramları Firmaların kârı maksimize ettikleri varsayılır. Kâr toplam hâsılat ile toplam maliyet arasındaki farktır. Kârı analiz etmek için hâsılat.
Advertisements

Prof. Dr. Ahmet Arıkan Gazi Ü niversitesi Gazi Eğitim Fakültesi OFMAE Bölümü Matematik Eğitimi Anabilim Dalı.
Algoritma.  Algoritma, belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir.  Başka bir deyişle; bir sorunu çözebilmek için gerekli olan.
BİLGİSAYAR PROGRAMLAMA Ders 2: Algoritma ve Akış Şemaları
Hat Dengeleme.
SAYISAL DEVRELER BÖLÜM-2 Sayı Sistemleri ve Kodlar
Determinant Bir kare matrisin tersinir olup olmadığına dair bilgi veriyor n- boyutlu uzayda matrisin satırlarından oluşmuş bir paralel kenarın hacmine.
Metrik koşullarını sağlıyor mu?
SIFIRIN TAR İ HÇES İ NESL İ HAN KAPLAN Haluk Bingöl CMPE 220-Fall 2010/ /11.
AKIL (ZİHİN) HARİTASI.
Zihinsel engellilerin sınıflandırılması
Paragraf Nedir? & Herhangi bir yazının bir satırbaşından öteki satırbaşına kadar olan bölümüdür. & Duygu, düşünce, istekleri anlatım tekniklerinden yararlanarak.
O R T L G İ M A A Ve Problem çözme.
OLASILIK TEOREMLERİ Permütasyon
MATEMATİK PROJE ÖDEVİ Adı-Soyadı:Nihat ELÇİ Sınıfı-Numarası:7/C 1057
2014 ORTA ÖĞRETİME YERLEŞTİRME SİSTEMİ – 2015 E ğ itim- ö ğ retim yılında altı temel ders için 8. sınıfta ö ğ retmen tarafından dönemsel olarak.
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
ÖZEL TANIMLI FONKSİYONLAR
BİLGİSAYAR PROGRAMLAMA DERSİ
KONULAR BÖLÜM: Kesirler, Ondalık Kesirler, Yüzde
Ders notlarına nasıl ulaşabilirim
x* denge noktası olmak üzere x* sabit nokta olmak üzere
HİPOTEZ TESTLERİ VE Kİ-KARE ANALİZİ
X-IŞINLARI KRİSTALOGRAFİSİ
Bölüm 2: Bir Boyutta Hareket. Bölüm 2: Bir Boyutta Hareket.
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
TAM SAYILAR.
ULUSAL MESLEKİ BİLGİ SİSTEMİ
DENEYSEL TERTİPLER VE PAZAR DENEMESİ
Problem Çözme ve Algoritmalar
Yapay Sinir Ağı Modeli (öğretmenli öğrenme) Çok Katmanlı Algılayıcı
C Programlama Yrd.Doç.Dr. Ziynet PAMUK BMM211-H05
DOĞAL SAYILAR TAM SAYILAR
Zaman ve Gölgesi Prof. Dr. Şafak URAL
Çözülemiyen Matematik Soruları
MAT – 101 Temel Matematik Mustafa Sezer PEHLİVAN *
MAT – 101 Temel Matematik Mustafa Sezer PEHLİVAN *
X=(X,d) metrik uzayında bazı özel alt kümeler
Uçak Bileti Değiştirme
Bilimsel Araştırma Yöntemleri
TEMEL GEOMETRİK KAVRAMLAR VE ÇİZİMLER
BİLEŞİK ÖNERMELERİN ELEKTRİKDEVRELERİNE UYGULANMASI
Buluş nedir?.
KÜMELER HAZIRLAYAN : SELİM ACAR
PARANIN ZAMAN DEĞERİ.
PROBLEM ÇÖZME VE ALGORİTMALAR
SİSMİK PROSPEKSİYON DERS-3
Prof.Dr.Şaban EREN Yasar Üniversitesi Fen-Edebiyat Fakültesi
İleri Algoritma Analizi
B+-Ağaçları.
SAYI ÖRÜNTÜLERİ ANAHTAR KAVRAMLAR MODELLEME ÖRÜNTÜ SAYI ÖRÜNTÜSÜ ÜS
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
Çizge Algoritmaları.
İleri Algoritma Analizi
ÖLÇME-DEĞERLENDİRME 1.DERS
LOJİK KAPILAR (GATES) ‘Değil’ veya ‘Tümleme’ Kapısı (NOT Gate)
Ayrıştırma Ağaçları Tanımlar Soldan ve Sağdan Türemeler ile İlişkisi
Sonlu Özdevinirlere Giriş
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
Düzenli Dillerin Kapalılık Özellikleri
NİŞANTAŞI ÜNİVERSİTESİ
5 Esneklik BÖLÜM İÇERİĞİ Talebin Fiyat Esnekliği
Kümeler.
Tanımlar Sonlu Özdevinirlerle Eşdeğerlik
İleri Algoritma Analizi
OLASILIK Uygulamada karşılaşılan olayların birçoğu kesin olmayan diğer bir ifadeyle belirsizlik içeren bir yapıya sahiptir. Olasılık kavramı kesin olmayan.
PROBLEM ÇÖZME TEKNİKLERİ
Ortam-Bağımsız Gramerler (OBG)
Bilimsel araştırma türleri (Deneysel Desenler)
Sunum transkripti:

Düzenli Diller Hakkında Sorular (“ Karar Özellikleri ”) Hakkında Genel Kavramlar Tekrarlama Yardımcı Önermesi (The Pumping Lemma) Üyelik, Boş olma durumu vs.

Dil Sınıflarının Özellikleri Dil sınıfı bir diller kümesidir. Bir örneğimiz var:düzenli diller. Bu sınıfa air birçok dil göreceğiz. Dil sınıflarının iki önemli özellik çeşidi var: Karar özellikleri. (Decision properties) Kapanış özellikleri. (Closure properties)

Dillerin Temsiliyeti Temsiliyet resmi veya gayriresmi olabilir. Örnek (resmi): bir dilin onu tanımlayan DD veya DSÖ tarafından temsil edilmesi. Örnek: (gayriresmi): dile ait diziler hakkında sözel veya mantıksal ifade: {0n1n | n eksi olmayan bir tamsayıdır} “Bir miktar 0 ve ayni sayıda onları takip eden 1’den oluşan diziler kümesi.”

Karar Özellikleri Bir dil sınıfı için karar özelliği dilin resmi bir tarifini alıp (örneğin DSÖ) bu dil için belli bir özelliğin doğru olup olmadığını söyleyen algoritmadır. Örnek: L dili boş mudur?

Neden Karar Özellikleri? DSÖ’ler tarafından temsil edilen protokoller hakkında konuşurken, iyi bir protokolun önemli özelliklerinin DSÖ’nün dili ile ilişkili olduğundan bahsetmiştik. Örnek: “Protokol sonlanır mı (durur mu?)” = “Dil sonlu mu?” Örnek: “Protokol başarısız olabilir mi?” = “Dil içinde en az bir elemanı (dizi) var mı?”

Neden Karar Özellikleri?– (2) Bir dili için “en küçük” temsil şeklini isityor olabiliriz, ör., en az sayıda durumu olan bir DSÖ veya en kısa DD. “ Bu iki dil aynimi?” sorusunu cevaplayamıyorsak yani, iki DSÖ ayni dili mi tanımlıyor? “En küçüğü” bulamayız.

Kapalıkık Özellikleri Bir dil sınıfına ait kapalılık özelliği , o sınıfın içinde olan iki dil üzerine işlem yapan bir işlemcinin (örneğin birleşme) neticesinin ayni dil sınıfına ait olduğunu söyler. Örnek: düzenli diller birleşme, bitiştirme ve Kleene kapatması altında kapalıdır. İspat: dilleri DD ile temsil edin.

Kapalılık Özelliği Kullanımı L1 = {0n1n | n > 0} dilinin düzenli olmadığının kolayca ispatlayabiliriz (tekrarlama yardımcı önermesini kullanarak). L2 = «içinde eşit sayıda 0 ve 1 olan diziler kümesi» de düzenli değil, ama ispatı daha zor. Düzenli diller  altında kapalıdır. L2 düzenli olsaydı, o zaman L2 L(0*1*) = L1 de olurdu, ama değil. Dolayısı ile, L2 düzenli değil (yanlış varsayım).

Üyelik Sorusu İlk karar özelliğimiz “w dizisi düzenli dil L’in içinde midir?” L’in bir DSÖ A tarafından temsil edildiğini varsayalım. w dizisini oluşturan sembollerle karşılaştığında A’nın hangi hareketleri yaptığını simüle edelim. (A’yı w üzerinde “çalıştıralım”.)

Örnek: Üyeliğin Test Edilmesi 0 1 0 1 1 Sonraki sembol Başla 1 A C B 0,1 Şimdiki durum

Örnek : Üyeliğin Test Edilmesi 0 1 0 1 1 Sonraki sembol Başla 1 A C B 0,1 Şimdiki durum

Örnek : Üyeliğin Test Edilmesi 0 1 0 1 1 Sonraki sembol Başla 1 A C B 0,1 Şimdiki durum

Örnek : Üyeliğin Test Edilmesi 0 1 0 1 1 Sonraki sembol Başla 1 A C B 0,1 Şimdiki durum

Örnek : Üyeliğin Test Edilmesi 0 1 0 1 1 Sonraki sembol Başla 1 A C B 0,1 Şimdiki durum

Örnek : Üyeliğin Test Edilmesi 0 1 0 1 1 Sonraki sembol Başla 1 A C B 0,1 Şimdiki durum

Ya Düzenli Dil DSÖ İle temsil Edilmemişse?? Bir türden diğer türe dönüşüm mümkün: DD ε- BSÖ DSÖ BSÖ

Boş Olma Problemi Bir düzenli dil verildiği zaman, dilin içinde herhangi bi r dizi var mı? Farzedelim DSÖ ile temsil ediliyor. Geçiş diyagramını çizin. Başlangıç durumundan erişilebilen durumları bulun. Herhangi bir final durumu erişilebiliyorsa, evet, aksi halde hayır.

Sonsuzluk Problemi Verilen düzenli dil sonsuz mu? Dili temsil eden DSÖ ile başlayın. Anahtar fikir: DSÖ’de n durum varsa ve dilin içinde uzunluğu n veya daha fazla olan bir dizi varsa, o zaman dil sonsuzdur. Aksi halde, dil sonludur. İçindeki dizi uzunluğu en fazla n.

Anahtar Fikrin İspatı n-durumlu bir DSÖ n veya daha fazla uzunluktaki bir w dizisini kabul ederse, başlangıç durumundan final durumuna giderken üzerinden geçtiğimiz yolda bir durumu birden çok defa ziyaret etmemiz gerekir. Çünkü bu yol üzerinde en az n+1 durum var.

İspat – (2) w = xyz x y z Dolayısı ile tüm i > 0 için xyiz dilin içindedir. y boş (ε) olmadığından, L içinde sonsuz sayıda dizi var.

Sonsuzluk – Devam Hala daha algoritmamız yok. Uzunluğu n’den daha büyük olan sonsuz sayıda dizi var ve tümünü deneyemeyiz. İkinci anahtar fikir: uzunluğu > n (= durum sayısı), o zaman dil içinde uzunluğu n ve 2n-1 arasında olan bir dizi de vardır.

2. Anahtar Fikrin İspatı Hatırlayalım: x y z Hatırlayalım: y’yi yol üstündeki ilk çevrim (cycle) olarak seçebiliriz. Böylece |xy| < n; özellikle 1 < |y| < n. w’nun uzunluğu 2n veya daha fazla ise, L içinde uzunluğu en az n olan daha kısa bir dizi vardır. [n, 2n-1] uzundluğunda bir dizi bulununcaya kadar kıslaltmaya devam et.

Sonsuzluk Algoritmasının Tamamlanması Uzunluğu n ve 2n-1 arasında olan tüm dizileri üyelik için test et. Herhangi biri kabul edilirse, sonsuz. Aksi halde sonlu. Kötü bir algoritma. Daha iyi: başlangıc durumu ile herhangi bir bitiş durumu arasında çevrimler bul.

Çevrimler Bulma Başlangıç durumundan erişilemeyen durumları yok et. Kendisinen bir bitiş durumuna gidilemeyen durumları yok et. Geride kalan geçiş diyagramında çevrim olup olmadığına bak.

Tekrarlama Yardımcı Önermesi (Pumping Lemma) Bazı dillerin düzenli olmadığını göstermek için kullanılan bir önerme. Tam adı: düzenli diller için tekrarlama yardımcı önermesi.

Tekrarlama Yardımcı Önermesinin İfade Edilişi L’i kabul eden DSÖ’nün durum sayısı Her düzenli dil L için Bir tamsayı n vardır, şöyle ki uzunluğu en az n olan ve L içinde olan her w dizisini, w = xyz olarak yazabiliriz, şöyle ki: |xy| < n. |y| > 0. Tüm i > 0 için, xyiz  L. w ile etiketlenmiş yolun üzerindeki ilk çevrim

Örnek: Tekrarlama Yardımcı Önermesinin Kullanılması {0k1k | k > 1} dilini düzenli olmadığını iddia ettik. Farzedelim düzenli. O zaman tekrarlama yardımcı önermesi için bununla ilgili bir n olmalı. w = 0n1n olsun. w = xyz yazabiliriz, şöyle ki x ve y sadece 0’dan oluşsun, ve y  ε. xyyz L içinde olması lazım, ama değil, çünkü 1’lerden daha çok sayıda 0’lar var.

Karar Özelliği: Eşdeğerlik İki düzenli dil L ve M birbirine eşdeğer midir? (L = M?) Algoritma L ve M’nin DSÖ’lerinin çarpım DSÖ’sünü oluşturarak çalışır. Bu DSÖ’lerin durum kümeleri sırası ile Q ve R olsun. Çarpım DSÖ’nun durum kümesi Q  R olur. yani, [q, r] çiftleri, şöyle ki q  Q, r  R.

Çarpım DSÖ’sü – Devam Start state = [q0, r0] (the start states of the DFA’s for L, M). Geçişler: δ([q,r], a) = [δL(q,a), δM(r,a)] δL, δM L ve M DSÖ’lerinin geçiş fonksiyonları. Yani, iki DSÖ’yü çarpım DSÖ’nün iki parçalı durumlarında simüle ederiz.

Örnek: Çarpım DSÖ 1 [A,C] [A,D] A B 1 0, 1 1 1 1 [B,C] [B,D] 1 C D 1

Eşdeğerlik Algoritması Çarpım DSÖ’nün final durumlarını [q, r] yapın, şöyle ki tam q ve r’den tam olarak bir tanesi kendi DSÖ’lerinin final durumu. Dolayısı ile, çarpım DSÖ w dizisini kabule derse, diğer DSÖ’lerden sadece biri ayni diziyi kabul etsin.

Örnek: Eşdeğerlik 1 [A,C] [A,D] A B 1 0, 1 1 1 1 [B,C] [B,D] 1 C D 1

Eşdeğerlik Algoritması– (2) Çarpım DSÖ’nün dili boşsa, L=M L=M ise, çarpım DSÖ’nün dili boştur. Halihazırda bir DSÖ’nün dilinin boş olduğunu bulma algortimamız var.

Karar Özelliği: Alt Küme İki düzenli dil L ve M için, L  M? Bu algoritma da çarpım DSÖ’sünü kullanır. Çarpımın [q, r] final durumlarını nasıl belirleyelim ki dili sadece ve sadece L  M olduğu zaman boş olsun? Birincisi kabul ettiğinde, ikincisi nin kabul etmediği durum hiç meydana gelmiyorsa, o zaman birincisi kabul ettiğinde, ikincisi de her zaman kabul ediyordur. Dolayısı ile birincinin dili, ikincinin alt kümesi oluyor. Cevap: q final; r değil

Örnek: Alt Küme 1 [A,C] [A,D] A B 1 0, 1 1 1 1 [B,C] [B,D] 1 C D 1 [A,C] [A,D] A B 1 0, 1 1 1 1 [B,C] [B,D] 1 C D Not: tek final durum erişilemez bir durumdur. Yok edilebilir. Birinci DSÖ’nün dili  İkinci DSÖ’nün dili. 1

Bir Düzenli Dil için En Az Sayıda Durumu Olan DSÖ Prensip olarak, DSÖ’lerin eşdeğerliğini test edebildiğimize göre, bize bir DSÖ verildiği zaman ayni dili kabul eden ve minimal sayıda durumu olan bir DSÖ bulabiliriz. Daha az sayıda durumu olan tüm DSÖ’leri eşdeğerlik için dene. Ama bu çok kötü bir algoritma.

Verimli Durum Minimizasyonu Tüm durum çiftlerini içeren bir tablo tanımla. İki çifti birbirinden farklı kılan bir dizi bulursan (sadece birini final durmuna götüren),o çifti işaretle.

Durum Minimizasyonu – (2) Temel: Bir çifti, çiftin içindeki durumların sadece biri final durumu ise işaretle. Tümevarım: bir sembol a için, [δ(q,a), δ(r,a)] işaretli ise, [q, r]’yi işaretle. Artık başka çifti işaretlemek mümkün olmadığında, işaretlenmemiş durumlar eşdeğerdir ve birleştirilebilirler.

“Farklı Olmama”nın Geçişliği (Transitivity) p durumu q durumundan farklı değilse, ve q durmu r durumundan farklı değilse, p durumu r durumundan farklı değildir. İspat: p ve q’nun w girdisi üzerine kabul veya ret neticesi aynidir, ayni şekilde q ve r’nin w girdisi üzerine kabul veya ret neticesi aynidir, dolayısı ile p ve r’nun w girdisi üzerine kabul veya ret neticesi aynidir.

En-az-durum-sayılı DSÖ’nün Oluşturulması Farzedelim ki q1,…,qk are farklı olmayan durumlardır. Hepsini yeni bir durum q ile değiştir. O zaman δ(q1, a),…, δ(qk, a)’un hepsi farklı olmayan durumlardır. Anahtar nokta: aksi halde q1,…,qk içinden en az iki durum farklı olarak işaretlenmiş olacaklardı. δ(q, a) = o grubu temsil eden durum olsun.

Örnek: Durum Minimizasyonu r b {1} * {1,3,5,7,9} {2,4,6,8} {1,3,5,7,9} * {1,3,7,9} {2,4,6,8} {5} {2,4,6,8} {2,4,6,8} {1,3,7,9} {5} {2,4} {2,4,6,8} {1,3,5,7} {1,3,5,7} {2,4} {5} r b A B C B D E C D F D D G E D G F D C G D G * Daha kolay durum isimleri ile. Bu DSÖ’yü hatırlıyor musunuz. Satranç tahtası BSÖ için alt küme konstrüksiyonu ile oluşturulmuştu.

Örnek – Devam r b A B C B D E C D F D D G E D G F D C G D G * G F E D C B A B C D E F x x F ve G final durumları ile başla.

Örnek – Devam r b A B C B D E C D F D D G E D G F D C G D G * G F E D C B A B C D E F x x [A,E] çifti için, r girdisinin Faydası yok, çünkü [B, D] çifti işaretlenmiş değil.

Örnek – Devam r b A B C B D E C D F D D G E D G F D C G D G * G F E D C B A B C D E F x x x x x x x x x Ancak b girisi, {A,B,F} durumlarını {C,D,E,G} durumlarından farklı kılar. Örneğin, [C, F] işaretli olduğundan, [A, C] de işaretlenir.

Örnek – Devam r b A B C B D E C D F D D G E D G F D C G D G * G F E D C B A B C D E F x x x x x x x x x x x [C, D] ve [C, E] işaretlenir, çünkü B gördüklerinde önceden işaretlenmiş [F, G] çiftine giderler.

Örnek – Devam r b A B C B D E C D F D D G E D G F D C G D G * G F E D C B A B C D E F x x x x x x x x x x x x Sonra [A, B] işaretlenir, çünkü r girdisi ile önceden işaretlenmiş [B, D] çiftine giderler. [D, E] hiçbirzaman işaretlenemezler Çünkü her iki girdi ile ayni duruma giderler.

Örnek – Son r b A B C B D E C D F D D G E D G F D C G D G * r b A B C B H H C H F H H G F H C G H G * G F E D C B A B C D E F x x x x x x x x x x x x D ve E’yi H ile değiştir. Sonuç en az sayıda durumu olan DSÖ’dür.

Erişilemeyen Durumları Yok Etme Maalesef, ayırt edilemeyen durumları birleştirdiğimizde, “en-az-durum-sayılı” DSÖ’müzde başlangıç durumundan erişilemeyen veya finale yolu olmayan durumlarla karşılaşabiliriz. Dolayısı ile, böyle durumları önce veya sonra elimine ediniz.