konsep sentral teori otomata n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Konsep sentral teori otomata PowerPoint Presentation
Download Presentation
Konsep sentral teori otomata

Loading in 2 Seconds...

play fullscreen
1 / 39

Konsep sentral teori otomata - PowerPoint PPT Presentation


  • 329 Views
  • Uploaded on

Konsep sentral teori otomata. Teknik Informatika STTA 2013 Yenni Astuti , S.T., M.Eng. Sebelumnya. Kegunaan Teori. FSA , tata bahasa formal: desain/ konstruksi perangkat lunak. Mesin Turing , membantu pemahaman yang diinginkan dari perangkat lunak.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Konsep sentral teori otomata' - iokina


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
konsep sentral teori otomata

Konsepsentralteoriotomata

TeknikInformatika STTA

2013

YenniAstuti, S.T., M.Eng.

kegunaan teori
Kegunaan Teori
  • FSA, tata bahasa formal: desain/ konstruksi perangkat lunak.
  • Mesin Turing, membantu pemahaman yang diinginkan dari perangkat lunak.
  • Penyelesaian masalah? Atau menggunakan pendekatan . . .
kegunaan teori otomata
Kegunaan Teori Otomata
  • Untuk mendesain dan mengecek perilaku rangkaian digital.

0

OFF

ON

1

kegunaan teori otomata lanj
Kegunaan Teori Otomata (lanj.)
  • Sebagai penganalisa leksikon kompiler, yakni komponen kompiler yang mengubah teks input menjadi unit logik.

F

I

0

1

2

kegunaan teori otomata lanj1
Kegunaan Teori Otomata (lanj.)
  • Untuk memeriksa teks yang sangat besar, seperti halaman web, untuk menemukan kemunculan kata-kata, frase-frase, dan pola lain.
kegunaan teori otomata lanj2
Kegunaan Teori Otomata (lanj.)
  • Untuk memvalidasi sistem yang memiliki keadaan terbatas, seperti protokol komunikasi untuk pergantian data yang aman.
alfabet
Alfabet
  • Himpunan simbol.
    • terbatas
    • tidak kosong
  • Lambang: 
  • Contoh:
    • Alfabet biner:  = {0, 1}
    • Alfabet huruf kecil:  = {a, b, …, z}
string
String
  • String (bisa berupa kata) adalah alfabet dengan urutan terbatas.
    • Contoh: 01101 dan 111 merupakan string dari alfabet biner  = {0, 1}
  • String kosong: string dengan kemunculan simbol sama dengan nol
    • Dinotasikan dengan  dan dapat muncul dari sembarang alfabet.
panjang string
Panjang String
  • Panjang string: jumlah simbol dalam string

Contoh: 01101 memiliki panjang 5

  • String 01101 hanya terdiri dari dua simbol (0 dan 1) dengan panjang 5.

Notasi panjang string dari : ||

Contoh: |011| = 3 and || = 0

pangkat alfabet
Pangkat Alfabet

Jika  adalah alfabet,

string dengan panjang tertentu dari alfabet tersebut dapat dinyatakan dalam bentuk notasi perpangkatan.

pangkat alfabet lanj
Pangkat Alfabet (lanj.)

k: himpunan string dengan panjang k, yang elemennya merupakan anggota .

pangkat alfabet lanj1
Pangkat Alfabet (lanj.)

Contoh:

  • 0:{}.

Tanpa memperdulikan anggota ,  merupakan satu-satunya string dengan panjang 0.

pangkat alfabet lanj2
Pangkat Alfabet (lanj.)

Jika = {0, 1}, maka

  • 2= {00, 01, 10, 11}
  • 1= {0, 1}
  • 3= {000, 001, 010, 011, 100, 101, 110, 111}
pangkat alfabet lanj3
Pangkat Alfabet (lanj.)

Jika  = {0, 1}, maka

  •  merupakan alfabet
    • simbol 0 dan simbol 1 merupakan anggotanya.
  • 1 merupakan himpunan string;
    • masing-masing anggotanya merupakan string (dengan panjang masing-masing 1)
pangkat bintang kleen
Pangkat Bintang Kleen
  • * : himpunan semua string dari alfabet .
    • {0, 1} = {, 0, 1, 00, 01, 10, 11, 000, … }
    • * = 0  1  2  …
pangkat bintang kleen lanj
Pangkat Bintang Kleen (lanj.)
  • Lambang * disebut dengan bintang Kleene diambil dari nama seorang ahli matematika dan logika bernama Stephen Cole Kleene.
  • + = 1 2  . . .

Sehingga:

  • * = +  {}
konkatenasi
Konkatenasi

Didefinisikan suatu operasi biner, dinamakan konkatenasi (gabungan), dalam * , sbb:

  • Jika a1a2a3…an dan b1b2…bm berada dalam *, maka

a1a2a3...an.b1b2…bm = a1a2a3…anb1b2…bm

konkatenasi lanj
Konkatenasi (lanj.)
  • Sehingga, string yang satu dapat digabungkan dengan string lainnya:
  • Jika x dan y merupakan dua buah string, maka x.y diartikan sebagai gabungan dari x dan y, hasilnya, string yang baru terbentuk dengan menulis x diikuti dengan menuliskan y.
konkatenasi lanj1
Konkatenasi (lanj.)

Contoh:

  • x = 01101 dan y = 110

Maka xy = 01101110 dan yx = 11001101

konkatenasi lanj2
Konkatenasi (lanj.)

Contoh:

  • Untuk sembarang string w, persamaan w = w =w
  • Sehingga,  merupakan identitas untuk operasi konkatenasi (ketika digabungkan dengan sembarang string akan dihasilkan string itu sendiri)
konkatenasi lanj3
Konkatenasi (lanj.)

Contoh:

  • Jika S dan T merupakan himpunan bagian dari *, maka

S.T = {s.t | s S, tT}

bahasa
Bahasa
  • Jika  adalah alfabet, dan L  *, maka L adalah bahasa dari .
  • Bahasa: Himpunan string yang berasal dari *.
    • dapat bersifat tak-terbatas.
bahasa lanj
Bahasa (lanj.)
  • Bahasa dari  tidak perlu string dari semua simbol .
  • Sehingga, bahasa dari  juga merupakan bahasa dari sembarang alfabet yang merupakan superhimpunan dari .
bahasa lanj1
Bahasa (lanj.)
  • Contoh:
    • Pemrograman bahasa C.

Program yang benar merupakan himpunan bagian dari string yang mungkin yang dapat dibentuk dari alfabet bahasa tersebut (himpunan bagian karakter ASCII)

    • Bahasa Inggris atau Bahasa Perancis.
contoh bahasa yang lain lanj
Contoh Bahasa yang Lain (lanj.)
  • Bahasa semua string yang mengandung n buah 0 yang diikuti oleh n buah 1 (n ≥ 0):

{, 01, 0011, 000111, …}

contoh bahasa yang lain lanj1
Contoh Bahasa yang Lain (lanj.)
  • Himpunan string yang terdiri dari 0 dan 1 dengan jumlah masing-masing yang sama:

{, 01, 10, 0011, 0101, 1001, …}

contoh bahasa yang lain lanj2
Contoh Bahasa yang Lain (lanj.)
  • * merupakan bahasa dari sembarang alfabet .
  • , bahasa kosong, merupakan bahasa dari sembarang alfabet.
contoh bahasa yang lain
Contoh Bahasa yang Lain
  • {}, bahasa yang hanya terdiri dari string kosong,
    • merupakan bahasa dari sembarang alfabet. Catatan:  ≠ {} karena  tidak memiliki string sedangkan {} memiliki satu string.
contoh bahasa yang lain1
Contoh Bahasa yang Lain
  • {w | w terdiri dari jumlah angka 0 yang sama dengan jumlah angka 1}
  • {0n1n | n ≥ 1}
  • {0i1j | 0 ≤ i ≤ j}
operator bahasa union
Operator Bahasa: Union
  • Union dari dua bahasa L dan M, dinotasikan dengan L M, merupakan himpunan string yang ada di L, M, atau keduanya.
  • Contoh:

Jika L = {001, 10, 111} dan M = {, 001} maka

L M = {, 001, 10, 111}

operator bahasa konkatenasi
Operator Bahasa: Konkatenasi
  • Konkatenasi dari bahasa L dan M, dinotasikan dengan L.M atau LM, merupakan himpunan string yang dibentuk dengan mengambil sembarang string dalam L dan menyambungkannya dengan sembarang string dalam M.
  • Contoh:

Jika L = {001, 10, 111} dan M = {, 001} maka

L.M = {001, 10, 111, 001001, 10001, 111001}

operator bahasa klosur
Operator Bahasa: Klosur
  • KlosurdaribahasaLdinotasikandenganL* danmerepresentasikanhimpunan string yang dapatdibuatdenganmengambilsembarang string dariL
    • dapat jugamengandungperulangan (misal string yang samadapat diulang lebihdarisekali) danmenggabungkansemuanya.
  • Contoh:
    • JikaL = {0,1} makaL* adalahsemua string 0 dan 1
    • JikaL = {0,11} makaL* terdiridari string 0 dan 1 denganangka 1 munculdua kali, misal 011, 11110, dan. Namunbukan 01011 atau 101.
operator bahasa klosur lanj
Operator Bahasa: Klosur (lanj.)
  • Formalnya, L* adalah union tak-hinggaUi ≥ LidenganL0 = {), L1 = L, danuntuk i > 1 kitamemilikiLi = LL…L (gabungandari i buahL)
ekspresi reguler dan bahasa
EkspresiRegulerdanBahasa

Kita definisikanekspresireguler.

Basis: Basis terdiriatastigabagian:

  • Konstanta dan  merupakanekspresireguler, menotasikanbahasa {} dan . Sehingga L() = {} dan L() = 
  • Jika a adalahsuatusimbol, makaamerupakanekspresireguler. Ekspresiinimenotasikanbahasa {a}, misalnyaL(a) = {a}. Catatan: font tebaldigunakanuntukmenotasikanekspresi yang berkaitandengansimbol.
  • Suatuvariabel, biasanyaditulisdenganhurufbesardan miring, sepertiL, merupakansuatuvariabel yang merepresentasikansembarangbahasa.
ekspresi reguler dan bahasa1
EkspresiRegulerdanBahasa

Induksi: terdapatempatbagianpadalangkahinduktif, satuuntuktiaptiga operator dansatuuntukmengenalkantandakurung.

  • Jika E dan F adalahekspresireguler, maka E + F merupakanekspresi yang menotasikangabungan L(E) dan L(F). Sehingga L(E+F) = L(E)L(F)
  • Jika E dan F adalahekspresireguler, maka EF merupakaneksperireguler yang menotasikankonkatenasidari L(E) dan L(F). Sehingga, L(EF) = L(E)L(F)
  • Jika E merupakanekspresireguler, maka E* merupakanekspresireguler yang menotasikanklosurdari L(E). Sehingga L(E*)=(L(E))*
  • Jika E merupakanekpresireguler, maka € merupakanekspresireguler yang menotasikan E yang sama. Secara formal, L((E))=(L(E))
contoh penggunaan ekspresi reguler
ContohPenggunaanEkspresiReguler
  • Pendefinisianpenganalisaleksikal (kompiler)
  • Digunakan di sistemoperasiseperi UNIX (Unix-style):

[A-Z] [a-z] * [ ] [A-Z] [A-Z]

Merepresentasikan kata-kata hurufbesardiikutidenganspasidanduahurufbesar. Ekspresiinimerepresentasikanpoladalamteks yang dapatberupasuatukotadansuatunegara, misalnya Ithaca NY.

Polainigagaluntuknamakota yang terdiridarilebihsatu kata seperti Palo Alto CA