Deterministic Finite Automata(DFA ... - Teori Bahasa Otomata · PDF filePustaka 1. Tedy...

Post on 07-Feb-2018

339 views 11 download

Transcript of Deterministic Finite Automata(DFA ... - Teori Bahasa Otomata · PDF filePustaka 1. Tedy...

Deterministic Finite Automata (DFA)Non-Deterministic Automata (NFA)

1

Sri Handayaningsih, S.T., M.T.Email : ning_s12@yahoo.com

Teknik Informatika

Pertemuan Ke-4

TIU dan TIK

1. Mengetahui perbedaan antara DFAdan NFA

2. Perbedaan DFA dan NFA3. Ekuivalensi antar FA

TEORI BAHASA OTOMATA2

3. Ekuivalensi antar FA4. Definisi Formal NFA5. Fungsi transisi NFA6. Contoh-contoh NFA dengan inputan

string yang diterima dan ditolak.

FAFA dibagi menjadi 2, yaitu :

Jenis FA Definisi Bentuk Transisi

1. DFA(Deterministic

Finite

FA di dalammenerima inputmempuyai tepatsatu busur keluar.

TEORI BAHASA OTOMATA3

FiniteAutomata)

satu busur keluar.

2. NFA(Non DeterministicFinite Automata)

FA di dalammenerima inputmempuyai lebihdari satu busurkeluar atau tidakpunya busurkeluar.

Graph Transisi DFA

TEORI BAHASA OTOMATA4

a b

q0 q0 q1

q1 q2 q2

q2 q2 q2

Graph Transisi NFA

TEORI BAHASA OTOMATA5

a

q0 {q1,q3}

q1 q2q2 -q3 -

Ekuivalensi Antar FA

Diberikan dua mesin FA M1 dan M2.Masing-masing menerima bahasa L(M1)dan L(M2).

TEORI BAHASA OTOMATA6

Kedua mesin tersebut disebut ekuivalenjika menerima bahasa yang sama yaitu :

L(M1) = L(M2)

q0 q1a

a

NFA M1q0 q1

a

a

DFA M2

Graf Transisi M1 Graf Transisi M2

TEORI BAHASA OTOMATA7

a

q0 {q0, q1}

q1 -

a

q0 q1

q1 q1

L(M1) = ana L(M2) = aan

Definisi Formal NFA FqQM ,,,, 0

:Q Himpunana state, mis. 210 ,, qqq

: Inputan alphabet, mis : ba,

TEORI BAHASA OTOMATA8

:

:0q

:F

: Inputan alphabet, mis : ba,

Fungsi Transisi

State awal

State akhir

10 1, qq

Fungsi Transisi

TEORI BAHASA OTOMATA9

0

11,0

0q 1q 2q

},{)0,( 201 qqq

TEORI BAHASA OTOMATA10

0q0

11,0

1q 2q

},{),( 200 qqq

TEORI BAHASA OTOMATA11

0q0

11,0

1q 2q

)1,( 2q

TEORI BAHASA OTOMATA12

0q0

11,0

1q 2q

1q 2qa

}{aAlphabet =

Nondeterministic Finite Automaton (NFA)

TEORI BAHASA OTOMATA13

3q

a

a0q

1q 2qaDua Pilihan

}{aAlphabet =

TEORI BAHASA OTOMATA14

3q

a

a0q

1q 2qaDua Pilihan Tdk adaTransisi

}{aAlphabet =

TEORI BAHASA OTOMATA15

Tdk adaTransisi

3q

a

a0q

Transisi

a a

1q 2q

Pilihan Pertama

a

TEORI BAHASA OTOMATA16

0q

3q

a

a

a a

1q 2qa

First Choice

TEORI BAHASA OTOMATA17

0q

3q

a

a

a a

1q 2q

First Choice

a

TEORI BAHASA OTOMATA18

0q

3q

a

a

a a

1q 2qa diterima

Pilihan Pertama

Inputan sudah selesai

TEORI BAHASA OTOMATA19

0q

3q

a

a

a a

1q 2q

Pilihan Kedua

a

TEORI BAHASA OTOMATA20

0q

3q

a

a

a a

1q 2q

Pilihan Kedua

a

TEORI BAHASA OTOMATA21

0q

a

a

3q

a a

1q 2qa

Pilihan Kedua

TEORI BAHASA OTOMATA22

0q

a

a

3q Tdk ada transisi:automata error

a a

1q 2qa

Pilihan Kedua

Inputan belum selesai

TEORI BAHASA OTOMATA23

0q

a

a

3q “ditolak”

Sebuah NFA menerima string, jika:Kamputasi pada NFA menerima string

Seluruh inputan dimasukkan danautomata dimulai dari state awal

Komputasi adalah :

TEORI BAHASA OTOMATA24

automata dimulai dari state awalmenuju ke state akhir

Contoh 1aaApakah diterima oleh NFA:

1q 2qa

“diterima”

1q 2qa

pilihan 1 pilihan 2

TEORI BAHASA OTOMATA25

0q

1q 2q

3q

a

a

a

0q

1q 2qa

a

a

3q “ditolak”

Diagram transisi yang dipilih adalah pilihan 1.Karena komputasi dapat diterima aa

a

1q 2q

Contoh yang Tidak Diterima

a

TEORI BAHASA OTOMATA26

0q

3q

a

a

a

1q 2qa

Pilihan Pertama

TEORI BAHASA OTOMATA27

0q

3q

a

a

a

1q 2qa

Pilihan Pertama

“ditolak”

TEORI BAHASA OTOMATA28

0q

3q

a

a

Pilihan Kedua

a

1q 2qa

TEORI BAHASA OTOMATA29

0q

3q

a

a

Pilihan Kedua

a

1q 2qa

TEORI BAHASA OTOMATA30

0q

a

a

3q

Pilihan Kedua

a

1q 2qa

TEORI BAHASA OTOMATA31

0q

a

a

3q “ditolak”

Sebuah NFA Menolak string, jika:Tidak ada komputasi pada NFA yang menerimastring.

• seluruh inputan selesai dimasukkan

Untuk setiap komputasi:

TEORI BAHASA OTOMATA32

• seluruh inputan selesai dimasukkandan automata tidak sampai pada

State akhir.

•Inputan belum selesai dimasukkanATAU

Contoh 2aApakah ditolak oleh NFA:

1q 2qa1q 2qa

“ditolak”

TEORI BAHASA OTOMATA33

0q

1q 2qa

a

a

3q “ditolak”0q

1q 2qa

a

a

3q

Seluruh komputasi yang mungkin “ditolak”

Contoh Yang Ditolak

a a

1q 2qa

a

TEORI BAHASA OTOMATA34

0q

3q

a

a

a a

1q 2qa

Pilihan Pertama

a

TEORI BAHASA OTOMATA35

0q

3q

a

a

a a

1q 2q

Pilihan Pertama

a

a

TEORI BAHASA OTOMATA36

0q

3q

a

a Tidak ada transisi:Automata error

a a

1q 2qa “ditolak”

Pilihan Pertama

aInputan tidak terselesaikan

TEORI BAHASA OTOMATA37

0q

3q

a

a

a a

1q 2q

Pilihan Kedua

a

a

TEORI BAHASA OTOMATA38

0q

3q

a

a

a a

1q 2q

Pilihan Kedua

a

a

TEORI BAHASA OTOMATA39

0q

a

a

3q

a a

1q 2qa

Pilihan Kedua

a

TEORI BAHASA OTOMATA40

0q

a

a

3q Tidak ada transisi:Automata error

a a

1q 2qa

Pilihan Kedua

aInputan tidak terselesaikan

TEORI BAHASA OTOMATA41

0q

a

a

3q “ditolak”

aaa Ditolak oleh NFA

1q 2qa

“ditolak”1q 2qa

TEORI BAHASA OTOMATA42

0q

1q 2q

3q

a

a

a

0q

1q 2qa

a

a

3q “ditolak”

Seluruh komputasi yang mungkin “ditolak”

1q 2qa

L(M)?

TEORI BAHASA OTOMATA43

3q

a

a0q

1q 2qa

Bahasa yang menerima: }{aaL

TEORI BAHASA OTOMATA44

3q

a

a0q

Pustaka

1. Tedy Setiadi, Diktat Teori Bahasa dan Otomata,Teknik Informatika UAD, 2005

2. Hopcroft John E., Rajeev Motwani, Jeffrey D. Ullman,Introduction to Automata Theory, Languages, andComputation, 2rd, Addison-Wesley,2000

3. Martin C. John, Introduction to Languages and Theory of

TEORI BAHASA OTOMATA45

3. Martin C. John, Introduction to Languages and Theory ofComputation, McGraw-Hill Internatioanal edition,1991

4. Linz Peter,Introduction to Formal Languages & Automata,DC Heath and Company, 1990

5. Dulimarta Hans, Sudiana, Catatan Kuliah MatematikaInformatika, Magister Teknik Informatika ITB, 1998

6. Hinrich Schütze, IMS, Uni Stuttgart, WS 2006/07,Slides based on RPI CSCI 2400