Jflap Türkçe Kaynak

Otomata Teorisi dersinde Jflap üzerinde pratik yapmamız gerekiyordu. Fakat programın nasıl kullanılacağıyla ilgili Türkçe kaynak sıkıntısı vardı. Hocamız odev olarak Jflap kullanım klavuzu yapmamızı istedi. Ben de birebir çeviri yerine her konu başlığı altında ne anlatılmak istenmişse teker teker deneyip, çeviriden çok da ayrılmadan toplam 255 sayfalık bir klavuz hazırladım.

Klavuz sadece Jflap değil aslında, Otomata Teoriyle ilgili aşağı yukarı tüm konuları kapsıyor. Otomata ile ilgili örnekleri bir program üzerinde denemenin daha öğretici olduğunu düşünüyorum. Bu yüzden Otomata çalışırken klavuzdan faydalanmanız çok büyük yarar sağlayacaktır. Bu çalışma için sadece “Jflap Kullanım Klavuzu” değil, esasında “Jflap ile Otomata Teorisi” demek daha doğru olur. Jflap CC lisanslı bir program olduğu için hiçbir ücret ödemeden bu programı kullanabilirsiniz. Otomata Teori, konularını anlamanızda büyük yardımı olacaktır.

Okumaya devam et “Jflap Türkçe Kaynak”

Jflap’ta Silme ve Multiple Run

Durumları ve Geçişleri Silmek

Silme işlemi alışa geldiğimiz programlardan biraz farklıdır. Araç çubuğundan silme aracı   seçilir. Silinmek istenen durum ya da geçişin üzerine çift tıklama yapılmasıyla birlikte silme işlemi gerçekleşir.

Çoklu Dizgeleri Sonlu Durum Otomatında Denemek

Program elimizdeki dizgeleri FA üzerinde denememize de izin veriyor. Bunun için “Input” menüsü altından Multiple Run seçeneğini seçiyoruz.

 

Çoklu Çizge Sekmesini Açmak

Okumaya devam et “Jflap’ta Silme ve Multiple Run”

Jflap’ta Başlangıç ve Son Durumları Tanımlamak, Geçişleri Oluşturmak

Not: Bu yazı miras yazı olarak burada bulunmaktadır. https://drive.google.com/open?id=0BwvPLd0pnaCvZ1VETm1qMHBkTVU adresinden JFLAP Türkçe klavuzunu indirebilirsiniz. Zaten orada bu bilgiler mevcuttur.

Keyfi olarak q0 bizim başlangıç durumumuz olsun. Bu durumumuzu tanımlamak için önce araç çubuğundan özellik düzenleme aracını  seçiyoruz. Daha sonra oluşturduğumuz q0 ‘ın üzerine gelip sağ tıklıyoruz. Sonuçta aşağıdaki gibi bir görüntü ortaya çıkacaktır.

Durum Menüsü

Açılan pop-up menüden initial’i seçtiğimizde q0 başlangıç durumu olacaktır. Sol tarafında ok işareti belirecektir.

Okumaya devam et “Jflap’ta Başlangıç ve Son Durumları Tanımlamak, Geçişleri Oluşturmak”

Jflap Sonlu Otomatlar-Durum Oluşturmak

Not: Bu yazı maalesef geçerliliğini yitirdi. Bu gibi yazıları bir klavuzda toplamıştım. Jflap ile ilgili bilgileri https://drive.google.com/open?id=0BwvPLd0pnaCvZ1VETm1qMHBkTVU adresindeki pdf’ten edinebilirsiniz.

JFLAP sonlu otomatları bir M beşlisi olarak tanımlar. Matematiksel olarak gösterecek olursak:

M = (Q, Σ, δ, qs, F) şeklindedir. Burada:

Q sonlu durumları
Σ giriş alfabesini
δ geçiş fonksiyonunu, δ :
D → 2Q olan yerde D, Q × Σ* ifadesinin sonlu altkümesidir.
qsQ’nun üyesidir. Giriş durumudur.
FQ’nun üyesidir. Son durumdur.

Bu tanım ayrıca deterministik olmayan sonlu otomatları da tanımlar.

JFLAP’ta farklı tür otomatların yapılandırılması epeyce benzerdir. Bu yüzden bir sonlu durum otomatını yapılandırmakla işe başlayalım.

Elimizde L = {ambn : m ≥ 0, n > 0, n tektir} şeklinde bir dil bulunsun. Bu a’dan her sayıda tekrar olabileceğini fakat b’den tek sayı adedince tekrar olabileceğini bize söylemektedir. Yani b(1),bbb(3),bbbbb(5)… şeklinde.

Okumaya devam et “Jflap Sonlu Otomatlar-Durum Oluşturmak”

JFLAP NEDİR?

JFLAP NEDİR?

JFLAP, nondeterministik sonlu otomatlar, nondeterministik pushdown otomatlar, multi-tape Turing makineleri, muhtelif çeşitlerde gramerler, parsing(ayrıştırma) ve L-sistemler gibi konu başlıklarını içeren formal dilleri tecrübe etmek için yazılmış bir programdır. En yeni sürümü 3 Eylül 2009’da çıkmıştır.

JFLAP’IN TARİHİ
FLAP, Rensselaer Polytecnic Enstitüsünde (Amerika) 1990 yıllarında Susan Rodger, önderliği altında çalışan öğrenciler tarafından otomatlar için yazılmış, yazılım parçaları olarak başlatıldı. Rodger’in 1994 yıllında Duke Üniversitesine(Amerika/Durham) taşınmasıyla birlikte JFLAP projesi de bu üniversite bünyesine katılmış oldu.
JFLAP’ın tarihi gelişimi ve bazı sürümlerinin kaynak kodları için http://www.jflap.org/jflaptmp/ adresine bakabilirsiniz.
JFLAP için 2005 ve 2006 yıllarında çalıştaylar düzenlenmiştir.

Okumaya devam et “JFLAP NEDİR?”