Formal Languages And Abstract Machines PDF
Document Details
Uploaded by Deleted User
Tags
Summary
This document provides a detailed overview of formal languages and abstract machines, including the Chomsky hierarchy and Turing machines. The content appears to be lecture notes covering fundamental concepts in theoretical computer science. It includes numerous diagrams and examples of these complex systems.
Full Transcript
FORMEL DİLLER VE SOYUT MAKİNALAR Hafta 10 CHOMSKY HİYERARŞİSİ Karmaşıklık Özyinelemeli - Sayılabilir Diller : Turing Makinesi (Recursively – Enumerable Languages : Turing Machine) Bağlama...
FORMEL DİLLER VE SOYUT MAKİNALAR Hafta 10 CHOMSKY HİYERARŞİSİ Karmaşıklık Özyinelemeli - Sayılabilir Diller : Turing Makinesi (Recursively – Enumerable Languages : Turing Machine) BaÄŸlama - Duyarlı Diller : DoÄŸrusal – Sınırlandırılmış otomatalar (Context – Sensitive Languages : Linear – Bounded Automata) 0 1 2 3 BaÄŸlam - Bağımsız Diller : Bas – Bırak otomataları (Context – Free Languages : Push – Down Automata) Düzenli Diller : Sonlu - Durum otomataları (Regular Language : Finite – State Automata) *(Dil : otomata) TURING MAKİNALARI TURING MACHINES TURING’İN TANIMI... her birine bir sembolün yazılabileceÄŸi karelere ayrılmış sonsuz uzunlukta bir teyp ile elde edilen sınırsız bellek kapasitesi. Belli bir anda makinede, okunan sembol olarak adlandırılan tek bir sembol mevcuttur. Makine, okunan sembolü deÄŸiÅŸtirebilir ve davranışı kısmen bu sembol tarafından belirlenir, fakat teyp içindeki diÄŸer sembollerin makinenin davranışı üzerinde hiçbir etkisi yoktur. Yalnız, makinenin temel iÅŸlemlerinden bir tanesi de teyp üzerinde ileriye ve geriye doÄŸru hareket edebilmektir. Dolayısıyla, teypteki her bir sembol er ya da geç eriÅŸilebilecektir. (Turing 1948, p. 61) FORMEL OLMAYAN BİR TANIM Bir Turing makinesi aÅŸağıdakilerden oluÅŸur: ï‚§ (Sola ve / veya saÄŸa doÄŸru) sonsuza kadar uzatılabilen, her biri (özel bir boÅŸluk sembolü de dahil olmak üzere) bir sembol içeren ardışık hücrelere ayrılmış bir teyp. ï‚§ Her defasında gösterdiÄŸi hücreden bir sembol okuyup aynı hücreye bir sembol yazabilen veya bir önceki ya da sonraki hücreye kayabilen bir kafa. ï‚§ Bir sonlu durumlar kümesi. ï‚§ Bir geçiÅŸ fonksiyonu. Turing Makinesi = Sonlu Bir Kontrol Ünitesi + Bir Teyp TURING’İN TANIMI ï‚§ Makinenin sonlu bir iç durumlar kümesi vardır. Verili bir anda makine bu durumların birinde bulunur. ï‚§ Makinenin bir okuyucu-yazıcı kafası vardır. ï‚§ Bu kafanın önüne karelere bölünmüş bir sonsuz ÅŸerit ya da bant yerleÅŸtirilmiÅŸtir. Bu karelerin her biri ya boÅŸtur ya da sonlu bir simgeler kümesine ait bir simge içerir. TURING’İN TANIMI ï‚§ Makine o anda içinde bulunduÄŸu iç duruma göre, okur-yazar kafanın önündeki karede yer alan simgenin fonksiyonu olarak (kullanılan programdaki kural listesine bakarak), 1. Bu karedeki simgeyi siler ya da bu kareye yeni bir simge yazar. 2. Åžeridi bir kare saÄŸa ya da sola yürütür. 3. Yeni bir iç duruma geçer. TURING’İN TANIMI ï‚§ Makinenin iç durumundan biri pasif durumdur. Makine bu iç duruma geçtiÄŸinde hesaplamasını bitirmiÅŸ demektir. Turing Makinesi, iÅŸlemleri ardışık ve ayrık adımlar biçiminde gerçekleÅŸtirir. TM, hem bilgi giriÅŸi/çıkışı makineleri, hem de evet/hayır karar verme makineleridir. TURİNG’İN TANIMI ï‚§ Üzerinde belirli bir simgeler dizisi yazılı olan ÅŸerit, belirli bir karesi kafanın önüne gelecek biçimde yerleÅŸtirilir. ï‚§ Makine belirli bir baÅŸlangıç durumunda olmak üzere süreci baÅŸlatır. ï‚§ Bir dizi ardışık adımdan sonra pasif duruma gelip durduÄŸunda, ÅŸerit üzerinde yazılı bulunan simgeler dizisi, hesaplamanın sonucunu oluÅŸturur. FORMEL BİR TURING MAKİNESİ TANIMI ï‚§ Bir Turing makinesi ÅŸu yedi bileÅŸenden oluÅŸur: Q : BoÅŸ olmayan bir sonlu durum kümesi Γ : BoÅŸ olmayan bir simge kümesi / alfabe b ϵ Γ : boÅŸluk sembolü ∑ ⊆ Γ \ {b} : GiriÅŸ simgelerini içeren küme Q1 : BaÅŸlangıç durumu F ⊆ Q : BitiÅŸ durumlarını içeren küme Δ : Q \ F x Γ ïƒ Q x Γ x {L, R}, geçiÅŸ fonksiyonu (L ve R, sırasıyla bir adım sola ve bir adım saÄŸa kayma simgeleridir). anbn | n ≥ 1 anbncn | n ≥ 1 EÅžLENİK ALMA TOPLAMA İŞLEMİ (BİRLİ SİSTEM)