Otomata Teorisi (BİL 2114)

Benzer belgeler
Otomata Teorisi (BİL 2114)

Otomata Teorisi (BIL 2114)

Otomata Teorisi (BİL 2114)

FORMEL DİLLER VE SOYUT MAKİNALAR. Hafta 2

Otomata Teorisi (BİL 2114)

Otomata Teorisi (BİL 2114)

Otomata Teorisi (BİL 2114)

BM312 Ders Notları

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Biçimsel Diller ve Otomata Teorisi. Final Sınavı Örnek Soruları A0 KİTAPÇIĞI

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Biçimsel Diller ve Otomata Teorisi. Final Sınavı Soruları A KİTAPÇIĞI

FORMEL DİLLER VE SOYUT MAKİNALAR. Hafta 3

Bil 2114 Otomata Teorisi Çalışma Soruları ve Cevapları III (Hafta 7,8,9)

Formal Diller Ve Otomat Teorisi

! " # $ % & '( ) *' ' +, -. / $ 2 (.- 3( 3 4. (

YENİ ORTAÖĞRETİM MATEMATİK PROGRAMINA UYGUNDUR. YGS MATEMATİK 3. KİTAP MERVE ÇELENK FİKRET ÇELENK

AYRIK YAPILAR ARŞ. GÖR. SONGÜL KARAKUŞ- FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ, ELAZIĞ

Tanım 2.1. X boş olmayan bir küme olmak üzere X den X üzerine bire-bir fonksiyona permütasyon denir.

BMT 206 Ayrık Matematik. Yük. Müh. Köksal GÜNDOĞDU 1

A { x 3 x 9, x } kümesinin eleman sayısı A { x : x 1 3,x } kümesinin eleman sayısı KÜMELER

10.Konu Tam sayıların inşası

HESAP. (kesiklik var; süreklilik örnekleniyor) Hesap sürecinin zaman ekseninde geçtiği durumlar

sayıların kümesi N 1 = { 2i-1: i N } ve tüm çift doğal sayıların kümesi N 2 = { 2i: i N } şeklinde gösterilebilecektir. Hiç elemanı olmayan kümeye

Sonlu Durum ve Turing Makineleri

8. HOMOMORFİZMALAR VE İZOMORFİZMALAR

Sunum ve Sistematik 1. BÖLÜM: ÖNERMELER

14. LİSELERARASI MATEMATİK YARIŞMASI EKİP FİNAL SORULARI

Şimdi de [ ] vektörünün ile gösterilen boyu veya büyüklüğü Pisagor. teoreminini iki kere kullanarak

8.Konu Vektör uzayları, Alt Uzaylar

TEMEL SAYMA KURALLARI

1 $/ " {ww R : w {a, b} * } ## S asa, S bsb S e#(3 * 5 $(6 )# (2 #$,(- (25 #5

2. SİMETRİK GRUPLAR. Tanım 2.1. X boş olmayan bir küme olmak üzere X den X e birebir örten fonksiyona permütasyon denir.

,$( -./(,$( 0$0$ (,$(

KONU 4: DOĞRUSAL PROGRAMLAMA MODELİ İÇİN ÇÖZÜM YÖNTEMLERİ I

LİMİT. lim f(x) = L yazılır. lim. lim x a dır. lim g( clim

ECEM ERDURU GAMZE SERİN ZEHRA SABUR EMİNE ÖLMEZ. o TAMSAYILAR KONUSU ANLATILMAKTADIR

PERMÜTASYON DERS NOTLARI. Sayma Yöntemleri. TEMEL SAYMA KURALLARI Toplama yoluyla sayma. Çarpma yoluyla sayma

Bu kısımda işlem adı verilen özel bir fonksiyon çeşidini ve işlemlerin önemli özelliklerini inceleyeceğiz.

Temel Kavramlar 1 Doğal sayılar: N = {0, 1, 2, 3,.,n, n+1,..} kümesinin her bir elamanına doğal sayı denir ve N ile gösterilir.

BLG311 Biçimsel Diller ve Otomatlar

ÜNİTE 1: TEMEL KAVRAMLAR

FORMEL DİLLER VE SOYUT MAKİNALAR. Hafta 1

TEMEL KAVRAMLAR. SAYI KÜMELERİ 1. Doğal Sayılar

Bu bölümde cebirsel yapıların temelini oluşturan Grup ve özelliklerini inceleyeceğiz.

Yrd.Doç.Dr. Celal Murat KANDEMİR. Kodlama (Coding) : Bir nesneler kümesinin bir dizgi (bit dizisi) kümesi ile temsil edilmesidir.

0.1 Küme Cebri. Teorem 1 A ve B iki küme olmak üzere i) (A B) c = A c B c ii) (A B) c = A c B c

Bilgisayar Bilimlerinde Hesaplama Kuramı

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir?

Tesadüfi Değişken. w ( )

Algoritma Analizi ve Büyük O Notasyonu. Şadi Evren ŞEKER YouTube: Bilgisayar Kavramları

FONKSİYONLAR. Örnek: (2x-2,y-3)=(10,-3) olduğuna göre x ve y sayılarını bulunuz.

AYRIK YAPILAR. ARŞ. GÖR. SONGÜL KARAKUŞ- FıRAT ÜNIVERSITESI TEKNOLOJI FAKÜLTESI YAZıLıM MÜHENDISLIĞI BÖLÜMÜ, ELAZIĞ

FINITE AUTOMATA. Mart 2006 Ankara Üniversitesi Bilgisayar Mühendisliği 1

KÜMELER ÜNİTE 1. ÜNİTE 1. ÜNİTE 2. ÜNİTE 1. ÜNİT

KPSS MATEMATÝK. SOYUT CEBÝR ( Genel Tekrar Testi-1) N tam sayılar kümesinde i N için, A = 1 i,i 1

DERS 2. Fonksiyonlar

Matematikte Sonsuz. Mahmut Kuzucuoğlu. Orta Doğu Teknik Üniversitesi Matematik Bölümü İlkyar-2017

YZM Biçimsel Diller ve Otomata Teorisi. Ders#06

MATM 133 MATEMATİK LOJİK. Dr. Doç. Çarıyar Aşıralıyev

SOYUT CEBİR Tanım 1: Uzunluğu 2 olan dairesel permütasyona transpozisyon denir.

MAT223 AYRIK MATEMATİK

BMT 206 Ayrık Matematik. Yük. Müh. Köksal GÜNDOĞDU 1

TEMEL KAVRAMLAR. a Q a ve b b. a b c 4. a b c 40. 7a 4b 3c. a b c olmak üzere a,b ve pozitif. 2x 3y 5z 84

TEMEL SAYMA. Bill Gates

Leyla Bugay Doktora Nisan, 2011

TEOG. Sayma Sayıları ve Doğal Sayılar ÇÖZÜM ÖRNEK ÇÖZÜM ÖRNEK SAYI BASAMAKLARI VE SAYILARIN ÇÖZÜMLENMESİ 1. DOĞAL SAYILAR.

ÇARPANLAR VE KATLAR ÖĞRENİYORUM

OTOMATİK KONTROL SİSTEMLERİ TEMEL KAVRAMLAR VE TANIMLAR

1 BAĞINTILAR VE FONKSİYONLAR

Derleyici Kuramı (Compiler Theory)

Küme Temel Kavramları

SORU 1: En az iki elemana sahip bir X kümesi ile bunun P (X) kuvvet. kümesi veriliyor. P (X) üzerinde 0 ; A = 1 ; A

Temel Kavramlar. (r) Sıfırdan farklı kompleks sayılar kümesi: C. (i) Rasyonel sayılar kümesi: Q = { a b

TEMEL BAZI KAVRAMLAR. Uzay: İçinde yaşadığımız sonsuz boşluktur. Uzay, bir noktalar kümesidir. Uzay, bütün varlıkları içine alır.

MAT223 AYRIK MATEMATİK

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir? Örnek...4 : Genel terimi w n. Örnek...1 : Örnek...5 : Genel terimi r n

ÜNİTE 11 ÜNİTE 9 MATEMATİK. Kümeler. 1. Bölüm: Kümelerde Temel Kavramlar 2. Bölüm: Kümelerde İşlemler. 9. Sınıf Matematik

2. (x 1 + x 2 + x 3 + x 4 + x 5 ) 10 ifadesinin açılımında kaç terim vardır?

Zeki Optimizasyon Teknikleri

14.Konu Reel sayılarının topolojisi. 1.Tanım:, verilsin. açık aralığına noktasının -komşuluğu denir. { } kümesine nın delinmiş -komşuluğu denir.

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-11 Karakter Diziler. Yrd. Doç. Dr. Ümit ATİLA

SORU 1: X bir sonsuz küme ve A da X kümesinin tüm sonlu alt kümelerinin. A := {B P (X) : B sonlu} SORU 2: X sayılamayan bir küme

Rakam : Sayıları yazmaya yarayan sembollere rakam denir.

Matematikte karşılaştığınız güçlükler için endişe etmeyin. Emin olun benim karşılaştıklarım sizinkilerden daha büyüktür.

Bu tanım aralığı pozitif tam sayılar olan f(n) fonksiyonunun değişim aralığı n= 1, 2, 3,, n,

kavramını tanımlayıp bazı özelliklerini inceleyeceğiz. Ayrıca bir grup üzerinde tanımlı

Örnek...5 : A = { a, b, c, d, e, f } kümesinin 4 lü perm ütas yonlarının kaç tanesinde,

ALES / İLKBAHAR 2008 DİKKAT! SORU KİTAPÇIĞINIZIN TÜRÜNÜ "A" OLARAK CEVAP KÂĞIDINA İŞARETLEMEYİ UNUTMAYINIZ. SAYISAL BÖLÜM SAYISAL-1 TESTİ

(a,b) şeklindeki ifadelere sıralı ikili denir. Burada a'ya 1. bileşen b'ye 2. bileşen denir.

Örnek...3 : f(2x 3)=4 3x ise f(1) kaçtır? Örnek...4 : f(x)=3x+1 ise f(2x) fonksiyonu nedir?

Bekleme Hattı Teorisi

olsun. Bu halde g g1 g1 g e ve g g2 g2 g e eşitlikleri olur. b G için a b b a değişme özelliği sağlanıyorsa

BİLGİSAYAR MÜHENDİSLİĞİ

Büyük Veri Analitiği (Big Data Analytics)

Örnek...2 : Hilesiz iki zar atma deneyinin bütün çıktılarını aşağıdaki tabloya yazınız.

1.GRUPLAR. c (Birleşme özelliği) sağlanır. 2) a G için a e e a a olacak şekilde e G. vardır. 3) a G için denir) vardır.

ab H bulunur. Şu halde önceki önermenin i) koşulu da sağlanır ve H G bulunur.

Esnek Hesaplamaya Giriş

Doğrusal Olmayan Devreler, Sistemler ve Kaos

( 2x+1, 3y 1. Örnek...4 : A = {1, 2, 3} ve B = {a, b} kümeleri için, AxB ve BxA kümelerini liste biçimde yazınız.

SONUÇ YAYINLARI. 9. Sınıf Kümeler

Transkript:

Otomata Teorisi (BİL 2114) Hafta 2: Sonlu Otomata (1.Bölüm) bas kapa aç bas 1

Hafta 2 Plan 1. Bir Sonlu Otomata Orneği 2. Sonlu Otomatanin Esasları 3. Sonlu Otomatanın Resmi Gösterimi 4. Nondeterministik Sonlu Otomata 2

I Bir Sonlu Otomasyon Örneği Farz edelim ki bir makineye bağlı bır turnikemiz var ve bu makıneye 25 kuruş atılınca turnıke açılıyor. Makine 5, 1 ve 25 kuruşluk madeni para kabul ediyor ve para üstü vermiyor. Müşteri 5, 1 ve 25 kuruşluk paraları atarken her bir anda turnikenin açık yada kapalı oluşuna karar veren bır sonlu otomasyon tasarlıyalım. Durumlar: q : Makinede para yok. q 5 : Makinede 5 kuruş var. q 1 : Makinede 1kuruş var. q 15 : Makinede 15 kuruş var. q 2 : Makinede 2 kuruş var. q 25+ : Makinede 25 kuruş yada daha fazlası var. 3

1 1 1 1,25 5,1,25 q 5 5 5 5 5,1 q 5 q 1 q 15 q 2 q 25+ 25 25 25 25 Burada makine (bilgisayar) yalnizca herhangi bir anda hangi durumda olduğunu hatırlamak zorunda. O yuzden yalnizca çok küçük bır hafızaya (log 6 3 bit) ihtiyaç duyar. F. Ismailoglu 4

Dil: Bir Σ alfabesinden elde edilebilecek tum kelimelerin kumesi olan Σ un bir alt kumesine dil denir. or. Σ =,1 alfabesi icin bu alfabeden uretilebilecek tum kelimlerin kumesi: Σ = ε,,1,,11,1,1,,111,1, z. Buradan bir L dili olusturulalim, oyleki bu L dili ile baslayan kelimlerin dili olsun: L =,, 1,, 11,. (L = s Σ s nin ilk harfi seklinde ortak ozellikler yontemi ile de gosterebiliriz.) 5

İşte otomasyonda amacımız verilen bir dilin kelimlerini otomatik olarak algilayan-taniyan (recognize eden) bir soyut makine icat etmektir. İcat edilen makine verilen bir kelimeyi işler (process eder), ve sonuçta bu kelime dile ait mi diye karar verir (evet yada hayır der).,1 Giriş (input) q q 1 Evet 1 Hayır q 2,1 6

durum diagrami (state diagram) q q 1,1 ör. 11 q 1 q 1 q 1 q 1 q 1 1 q 2,1 ör. 1 q 2 q 2 q 2 durum (state) baslangıç durumu (initial state) (boş ok ile gösterilir) geciş (transition) final (kabul) durumu (final (acceptance) state) (çift halka ile gosterilir) 7

ör. Σ = a, b alfabesi kullanılarak üretilen kelimerlerden 2 uzunluğundaki kelimelerin dilini tanıyan sonlu otomata: q a,b q a,b 1 q a,b 2 q 3 a,b ör. Σ = a, b alfabesi kullanılarak üretilen kelimerlerden a ile başlayıp a ile biten kelimerlerin dilini tanıyan sonlu otomata: a q 1 a q 2 a q b b q 3 b a,b 8

Sonlu Otomatinin Formal Tanımı: Bir sonlu otomata 5-li sıradır ve Q, Σ, δ, q, F ile gösterilir. Burada: 1. Q tüm durumları içeren sonlu bir kümedir, 2. Σ kullandığımız harfleri (inputları) içeren alfabedir, 3. δ: Q Σ Q geçiş fonksiyonudur (transition function), 4. q Q baslangıç durumudur, 5. F Q final durumlari içeren kümedir. Not 1. δ (geciş fonksiyonu) bir fonksiyondur. Fonksiyon olma tanımı gereği Q Σ tanım kümesindeki her elemanı (her sıralı ikiliyi) Q da bir elemana götürür. Yani her durum ve her harf ikilisine karşılık bir durum vardir. Not 2. F bir kümedir. Yani eleman sayisi 1 den fazla olabilir. Yani bir otomatanin 1 den fazla final durumu (kabul durumu) olabilir. Not 3. Sonlu otomata dememizin nedeni sonlu sayıda durum içermesi 9

ör. 1 1 Q = q, q 1 durumlar q q 1 harfler δ 1 q q q 1 q 1 q q 1 Σ =,1 F = q 1 δ q, 1 = q 1 geçiş tablosu M = q, q 1,,1, δ, q, q 1 1

ör. Σ =,1 alfabesi kullanilarak uretilen kelimerlerden, içinde 11 altkelimesi olan kelimeleri tanıyan otomasyon. 1 q 1 q 1 q 2 q 3 1 q 4,1 1 Q = q, q 1, q 2, q 3, q 4 Σ =,1 F = q 4 δ 1 q q q 1 q 1 q 2 q 1 q 2 q 3 q 1 q 3 q q 4 q 4 q 4 q 4 11

Bir kelimenin bir sonlu otomata tarafından kabul edilirliği giriş: M = (Q, Σ, δ, q, F) makinesi, w kelimesi çıkış: Evet yada Hayır 1. q şimdiki q 2. for i = 1: w // w nun her bir harfi için 3. q yeni δ(q şimdiki, w i ); //şimdiki durumdan w i ile yeni duruma geç 4. q şimdiki q yeni // yeni durumu şımdiki durum yap (şimdiki durumu güncelle) 5. end for 6. if q şimdiki ε F: // eğer son durum final durumlarından biriyse 7. cout<<" Evet"; // Evet yazdır 8. else // değilse 9. cout<<"hayır"; // Hayır yazdır 1. end if 12

ör. Σ =,1 alfabesi kullanılarak üretilen kelimerlerden, içinde 2 tane 1 olan kelimeleri tanıyan sonlu otomasyon:,1 q 1 q 1 1 q 2 1 q 3 Yukarıdaki otomasyon w=111 kelimesini kabul eder mi? 1. q şimdiki q 2. for a başla: q yeni δ q, 1 = q 1 i = 1 qşimdiki = q 1 q yeni δ q 1, = q 1 i = 2 qşimdiki = q 1 q yeni δ q 1, 1 = q 2 i = 3 qşimdiki = q 2 w 1 w 2 w 3 w 4 q yeni δ q 2, 1 = q 3 i = 4 qşimdiki = q 3 3. for u bitir. 4. q şimdiki = q 3 F olduğundan cevap Hayır. 13

Nondeterministik (Belirsiz) Sonlu Otomata (NSO) Şuana kadar gördüğümüz sonlu otomatalar "Deterministik Sonlu Otomata (DSO) " idi. (Deterministic Finite Automata (DFA)) (Deterministik rastegele olmayan, kararlı, belirli şeklinde Türkçe ye çevriliyor.) DSO nun ana karakteristiği, belirli bir anda makinenin yalnızca bir durumda bulunabilir olmasıdır (iki durum ayni anda aktif olamaz). NSO, DSO kavramının genelleştrilmesidir: DSO NSO, yani her DSO bir NSO dur. Ayrıca her NSO, bir DSO ya dönüştürülebilir. Bir NSO da makine ayni anda birden fazla durumda olabilir. Bu NSO nun ana karakteristiği dir. Bu bize daha karmaşık dilleri tanıyabilen makineler üretebilmeyi sağlar. 14

ör. Σ =,1 alfabesi kullanılarak üretilen kelimerlerden sonu "1" ile biten kelimerleri tanıyan sonlu otomata:,1 q q 1 1 q 2 soru: bu otomatada dikkatimizi çeken şeyler neler? 1. q da 2 tane oku var. Yani q da iken gelirse hem q a, hem q 1 e geçeriz. 2. q 1 de oku yok. Yani q 1 de gelirse makine (otomata) çıkmaza girer (ölür). 3. q 2 de ne oku nede 1 oku var. Yani makine q 2 de sonlanmaz harf almaya (,1) almaya devam ederse, makine çıkmaza girer. 15

Hatırla: Daha önce gördüğümüz deterministik sonlu otomatada (DSO) geçiş fonksiyonu: δ: Q Σ Q 1.Burada δ bir fonksiyon olduğundan her bir (durum, harf) ikilisi için fonksiyon tanımlıdır. Yani her bir durum (q Q) da bütün harfler ( s Σ) için bir ok yani bir geçiş vardır: ör. Σ = a, b, c, d için q a b c d 2. Yine, δ bir fonksiyon olduğundan aldığı her bir (durum, harf) ikilisini bir ve yalnız bir duruma götürür. a a q!! NSO da bu yukarıdaki durumların ikiside geçerli değildir. 16

Bir NSO nun İşleyişi w = 11 kelimesi aşağıdaki NSO şu şekilde işlenir:,1 q q 1 1 q 2 q q q 1 q q 1 1 1 q q 2 q q 1 1 1 q 1 q 2 1 1 17

ör. Σ =,1 alfabesi kullanılarak üretilen kelimerlerden içinde "" yada "11" alt kelimerleri geçen kelimeleri tanıyan nondeterministik sonlu otomata: w = 11,1 q 1 q q 3 1 q 2 1 Eğer q ın bu oku olmazsa, makine yalnızca yada 11 ile başlayan kelimeleri kabul eder!,1 q q q 1 q q 2 1 1 q q 1 q q 1 1 1 q q 2 q 3 q 3 1 Bu işlemin sonunda makine q, q 2 ve q 3 durumlarında duruyor. 18