• Tidak ada hasil yang ditemukan

Relasi Ekuivalensi dan Automata Minimal

N/A
N/A
Protected

Academic year: 2021

Membagikan "Relasi Ekuivalensi dan Automata Minimal"

Copied!
36
0
0

Teks penuh

(1)

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013

Teori Bahasa dan Automata

Semester Ganjil 2013 Jum’at, 15.11.2013 Dosen pengasuh:

Kurnia Saputra ST, M.Sc

Email: [email protected]

Jurusan Informatika

Fakultas Matematika dan Ilmu Pengetahuan Alam

Universitas Syiah Kuala

(2)

Relasi Ekuivalensi

(3)

Pengertian Relasi Ekuivalensi

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 3

Definisi Relasi

Sebuah

relasi

𝑅 yang homogen atau unary pada himpunan 𝑀

adalah subset dari 𝑅 ⊆ 𝑀 × 𝑀.

Relasi 𝑅 selain dapat ditulis dengan 𝑚

1

, 𝑚

2

∈ 𝑅 dapat juga ditulis

dengan 𝑚

1

𝑅 𝑚

2

.

Contoh Relasi:

(4)

Pengertian Relasi Ekuivalensi

Relasi Ekuivalensi

Relasi ekuivalensi 𝑅 pada himpunan 𝑀 adalah relasi dari 𝑅 ⊆ 𝑀 × 𝑀 yang

memiliki properti sebagai berikut:

Relasi 𝑅 dikatakan

reflexive

jika (𝑎, 𝑎) ∈ 𝑅, dimana 𝑎 ∈ 𝑀.

Relasi 𝑅 dikatakan

symmetric

jika (𝑎, 𝑏) ∈ 𝑅 dan (𝑏, 𝑎) ∈ 𝑅.

Relasi 𝑅 dikatakan

transitive

jika (𝑎, 𝑏) ∈ 𝑅 dan (𝑏, 𝑐) ∈ 𝑅 dan

dapat direlasikan juga dengan (𝑎, 𝑐) ∈ 𝑅.

(5)

Pengertian Relasi Ekuivalensi

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 5

Reflexive: 𝑎 𝑎 𝑏 Symmetric: Transitive: 𝑎 𝑏 𝑐 (𝑎, 𝑎) ∈ 𝑅 (𝑎, 𝑏) ∈ 𝑅 dan (𝑏, 𝑎) ∈ 𝑅 (𝑎, 𝑏) ∈ 𝑅 dan (𝑏, 𝑐) ∈ 𝑅 dan (𝑎, 𝑐) ∈ 𝑅

(6)

Kelas Ekuivalensi

(Equivalence Classes)

Kelas Ekuivalensi

Diketahui 𝑅 adalah relasi ekuivalensi pada himpunan 𝑀 dan 𝑚 ∈ 𝑀. Kelas

ekuivalensi [𝑚]

𝑅

dari 𝑚 adalah himpunan:

[𝑚]

𝑅

= 𝑛 ∈ 𝑀 (𝑛, 𝑚) ∈ 𝑅}

Kelas ekuivalensi di atas dapat juga ditulis dengan [𝑚] jika relasi yang

dimaksud sudah jelas.

(7)

Kelas Ekuivalensi

(Equivalence Classes)

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 7

Properti Kelas Ekuivalensi

Diketahui 𝑅 adalah relasi ekuivalensi pada himpunan 𝑀 dan 𝑚 ∈ 𝑀.

Maka akan berlaku kondisi:

[𝑚

1

]

𝑅

= [𝑚

2

]

𝑅

atau

[𝑚

1

]

𝑅

∩ [𝑚

2

]

𝑅

= ∅

dimana untuk 𝑀 berlaku kondisi:

𝑀 = � [𝑚]

𝑅

𝑚∈𝑀

Dua buah kelas ekuivalensi bisa akan sama atau bisa juga terpisah. Kedua kelas ekuivalensi terdapat di dalam himpunan 𝑀.

(8)

Acceptance Equivalence

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

(9)

Acceptance Equivalence

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 9

1

2/3

4/5

𝑎 𝑏 𝑏 𝑎 𝑎, 𝑏 𝑎, 𝑏

6

State 2 dan 3 adalah acceptance equivalence. Sama halnya pada state 4 dan 5, state-state tersebut dapat digabungkan.

(10)

Acceptance Equivalence

Definisi Acceptance Equivalence

Diketahui sebuah DFA dengan 𝑀 = (𝑍, Σ, 𝛿, 𝑧

0

, 𝐸) . Dua buah state

𝑧

1

, 𝑧

2

∈ 𝑍 dikatakan

acceptance equivalence

jika semua word 𝑤 ∈ Σ

dan

kondisi berikut harus terpenuhi:

(11)

Ekuivalensi Myhill-Nerode

(Myhill-Nerode Equivalence)

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 11

Definisi Ekuivalensi Myhill-Nerode

Diketahui sebuah bahasa 𝐿, dimana word 𝑥, 𝑦 ∈ Σ

.

Relasi ekuivalensi ≡

𝐿

dapat didefinisikan dengan 𝑥 ≡

𝐿

𝑦 if and only if (iff)

untuk semua 𝑧 ∈ Σ

harus memenuhi kondisi (𝑥𝑧 ∈ 𝐿 ⟺ 𝑦𝑧 ∈ 𝐿)

Selain pada state, acceptance equivalence juga dapat dilakukan pada word. Hal ini dapat dilakukan dengan menggunakan ekuivalensi Myhill-Nerode.

(12)

Ekuivalensi Myhill-Nerode

(Myhill-Nerode Equivalence)

Diketahui 𝐿 = 𝑎𝑘𝑏𝑘 𝑘 ∈ ℕ}.

Apakah kondisi di bawah ini memenuhi bahasa 𝐿 di atas? • 𝑎4𝑏3 ≡𝐿 𝑎3𝑏2 ?

• 𝑎2𝑏2 ≡𝐿 𝑎3𝑏2 ? • 𝑎4𝑏2 ≡𝐿 𝑎3𝑏2 ? • 𝑎𝑏𝑏 ≡𝐿 𝑏𝑎𝑏𝑎 ?

Spesifikasikan kelas ekuivalensi Myhill-Nerode pada bahasa berikut ini: • 𝐿1 = 𝑤 ∈ 𝑎, 𝑏 ∗ #𝑎 𝑤 𝑔𝑔𝑛𝑎𝑔}

(13)

Ekuivalensi Myhill-Nerode

(Myhill-Nerode Equivalence)

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 13

Ekuivalensi Myhill-Nerode dan Bahasa Regular

Sebuah bahasa 𝐿 ⊆ Σ

dikatakan regular, iff ≡

𝐿

memiliki kelas ekuivalensi

berhingga/finite.

(14)

Ekuivalensi Myhill-Nerode

(Myhill-Nerode Equivalence)

𝐿 regular ⟹ ≡𝐿 memiliki kelas ekuivalensi berhingga/finite.

Diketahui bahasa 𝐿 dan automata 𝑀 = (𝑍, Σ, 𝛿, 𝑧0, 𝐸) adalah DFA, dimana 𝑇 𝑀 = 𝐿. Relasi ekuivalensi ≡𝑀 didefinisikan dengan:

𝑥 ≡𝑀 𝑦 ⟺ 𝛿̂ 𝑧0, 𝑥 = 𝛿̂ 𝑧0, 𝑦 dimana 𝑥, 𝑦 ∈ Σ∗

Jumlah kelas ekuivalensi ≡𝑀 sama dengan jumlah state yang mampu dicapai pada automata 𝑀, atau dapat juga disebut dengan berhingga/finite.

(15)

Ekuivalensi Myhill-Nerode

(Myhill-Nerode Equivalence)

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 15

Selanjutnya, kita dapat membuktikan bahwa 𝑥 ≡𝑀 𝑦 akan sama dengan 𝑥 ≡𝐿 𝑦. Asumsikan 𝑥 ≡𝑀 𝑦 kemudian pilih sebarang 𝑧 ∈ Σ∗. Pastikan kondisi berikut ini terpenuhi: 𝑥𝑧 ∈ 𝐿 ⟺ 𝛿̂ 𝑧0, 𝑥𝑧 ∈ 𝐸 ⟺ 𝛿̂(𝛿̂ 𝑧0, 𝑥 , 𝑧) ∈ 𝐸 ⟺ 𝛿̂(𝑧0, 𝑦𝑧) ∈ 𝐸 ⟺ 𝛿̂(𝛿̂ 𝑧0, 𝑦 , 𝑧) ∈ 𝐸 ⟺ 𝑦𝑧 ∈ 𝐸

(Definisi bahasa yang bisa diterima) (Definisi 𝛿̂)

𝑥 𝑅𝑀 𝑦 (Definisi 𝛿̂)

(Definisi bahasa yang bisa diterima) Maka kondisi 𝑥 ≡𝐿 𝑦 dapat terpenuhi.

Dengan demikian, ≡𝑀 terhubung dengan semua word pada ≡𝐿 dan memiliki kelas ekuivalensi yang sama seperti ≡𝐿.

(16)

Ekuivalensi Myhill-Nerode

(Myhill-Nerode Equivalence)

𝐿 memiliki kelas ekuivalensi berhingga/finite ⟹ 𝐿 regular

Diasumsikan ≡𝐿 memiliki kelas ekuivalensi berhingga/finite. Automata finite 𝑀0 = (𝑍, Σ, 𝛿, 𝑧0, 𝐸) untuk 𝐿 dapat dikonstruksikan, dimana definisinya adalah sebagai berikut:

𝑍 = 𝑤 𝐿 𝑤 ∈ Σ∗} 𝑧0 = [𝜀]𝐿

𝐸 = 𝑤 𝐿 𝑤 ∈ 𝐿} 𝛿 𝑤 ≡ , 𝑎 = [𝑤𝑎]≡

(17)

Ekuivalensi Myhill-Nerode

(Myhill-Nerode Equivalence)

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 17

Dari 𝛿 𝑤 𝐿, 𝑎 = [𝑤𝑎]𝐿 diikuti oleh 𝛿̂ 𝑤 𝐿, 𝑠 = [𝑤𝑠]𝐿. Maka kondisinya menjadi:

𝑥 ∈ 𝐿(𝑀0) ⟺ 𝛿̂ [𝜀], 𝑥 ∈ 𝐸 ⟺ [𝑥] ∈ 𝐸

⟺ 𝑥 ∈ 𝐸 Sehingga 𝑇 𝑀0 = 𝐿

(Definisi bahasa yang bisa diterima) (Definisi Final state)

(18)

Ekuivalensi Myhill-Nerode

(Myhill-Nerode Equivalence)

Dengan metode MyHill-Nerode kita dapat membuktikan sebuah bahasa regular

atau tidak regular. Contoh:

• Bahasa 𝐿 = 𝑎𝑘𝑏𝑘 𝑘 ≥ 0} memiliki kelas ekuivalensi tak hingga dan tidak

regular.

• Bahasa 𝐿 = 𝑎𝑛𝑏𝑚𝑐𝑚 𝑛, 𝑚 ≥ 1} ∪ {𝑏𝑚𝑐𝑛 | 𝑛, 𝑚 ≥ 1} memiliki kelas ekuivalensi tak hingga dan tidak regular.

(19)

Ekuivalensi Myhill-Nerode

(Myhill-Nerode Equivalence)

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 19

Jika diketahui 𝑀0 adalah DFA yang dikonstruksi dari kelas ekuivalensi.

Untuk sebarang automata 𝑀 dimana 𝑇 𝑀 = 𝑇 𝑀0 , maka memenuhi kondisi berikut:

𝑀 ⊆ ≡𝐿 = ≡𝑀0

Artinya bahwa 𝑀0 bisa dikonstruksi dari 𝑀 dengan menggabungkan state kelas ekuivalensi.

Dengan kata lain, 𝑀0 adalah DFA minimal dari bahasa 𝐿.

Semua DFA minimal yang berasal dari satu bahasa yang sama maka DFA tersebut akan sama (walaupun dengan state yang berbeda).

(20)
(21)

Automata Minimal

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 21

Bagaimana caranya untuk mengetahui bahwa sebuah DFA

dikatakan minimal tanpa melakukan konstruksi kelas

ekuivalensi?

Solusi:

Dengan cara menggabungkan state yang memiliki

acceptance equivalence.

Sebelum melakukan penggabungan state, hal yang

pertama sekali dilakukan adalah menentukan terlebih

dahulu state yang tidak acceptance equivalence (state final

dan state non final), dan dilanjutkan dengan melakukan

pencarian state yang non acceptance equivalence.

(22)

Automata Minimal

Algoritma Automata Minimal

Input:

DFA 𝑀

Output:

Himpunan state acceptance equivalence

1. Hapus state yang tidak dapat dijangkau dari start state.

2. Buatlah tabel pasangan state {𝑧, 𝑧′}, dimana 𝑧 ≠ 𝑧′.

3. Beri tanda pasangan state 𝑧, 𝑧

dimana 𝑧 ∈ 𝐸 dan 𝑧′ ∉ 𝐸.

Note: 𝑧, 𝑧

tidak acceptance equivalence.

4. Untuk pasangan yang tidak diberi tanda {𝑧, 𝑧′} dan dimana 𝑎 ∈ Σ,

lakukan pengecekan apakah {𝛿 𝑧, 𝑎 , 𝛿(𝑧′, 𝑎)} sudah pernah

diberi tanda. Jika ya, tandai {𝑧, 𝑧′}.

(23)

Automata Minimal

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 23

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

Gunakan algoritma automata minimal pada automata berikut:

Buat tabel untuk semua pasangan state

2

3

4

5

6

1 2 3 4 5

(24)

Automata Minimal

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

Gunakan algoritma automata minimal pada automata berikut:

2

3

4

5

6

1 2 3 4 5

1 1 1 1 1

(25)

Automata Minimal

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 25

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

Gunakan algoritma automata minimal pada automata berikut:

(2) Beri tanda {2, 4} karena 𝛿 2, 𝑎 = 1, 𝛿 4, 𝑎 = 6 dan {1, 6} sudah ditandai

2

3

4

5

6

1 2 3 4 5

1 1 1 1 1

2

(26)

Automata Minimal

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

Gunakan algoritma automata minimal pada automata berikut:

2

3

4

5

6

1 2 3 4 5

1 1 1 1 1

2

3

(27)

Automata Minimal

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 27

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

Gunakan algoritma automata minimal pada automata berikut:

(4) Beri tanda {2, 5} karena 𝛿 2, 𝑎 = 1, 𝛿 5, 𝑎 = 6 dan {1, 6} sudah ditandai

2

3

4

5

6

1 2 3 4 5

1 1 1 1 1

2

3

4

(28)

Automata Minimal

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

Gunakan algoritma automata minimal pada automata berikut:

2

3

4

5

6

1 2 3 4 5

1 1 1 1 1

2

3

4

5

(29)

Automata Minimal

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 29

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

Gunakan algoritma automata minimal pada automata berikut:

(6) Beri tanda {1, 5} karena 𝛿 1, 𝑎 = 3, 𝛿 5, 𝑎 = 6 dan {3, 6} sudah ditandai

2

3

4

5

6

1 2 3 4 5

1 1 1 1 1

2

3

4

5

6

(30)

Automata Minimal

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

Gunakan algoritma automata minimal pada automata berikut:

2

3

4

5

6

1 2 3 4 5

1 1 1 1 1

2

3

4

5

6

7

(31)

Automata Minimal

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 31

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

Gunakan algoritma automata minimal pada automata berikut:

(8) Beri tanda {1, 3} karena 𝛿 1, 𝑏 = 2, 𝛿 3, 𝑏 = 5 dan {2, 5} sudah ditandai

2

3

4

5

6

1 2 3 4 5

1 1 1 1 1

2

3

4

5

6

7

8

(32)

Automata Minimal

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

Gunakan algoritma automata minimal pada automata berikut:

2

3

4

5

6

1 2 3 4 5

1 1 1 1 1

2

3

4

5

6

7

8

9

(33)

Automata Minimal

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 33

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

Gunakan algoritma automata minimal pada automata berikut:

Pasangan state yang tersisa {2, 3} dan {4, 5} tidak bisa ditandai karena

acceptance equivalent.

2

3

4

5

6

1 2 3 4 5

1 1 1 1 1

2

3

4

5

6

7

8

9

(34)

Automata Minimal

1

2

3

4

5

6

𝑎 𝑏 𝑎 𝑎 𝑏 𝑏 𝑏 𝑏 𝑎 𝑎 𝑎, 𝑏

Gunakan algoritma automata minimal pada automata berikut:

2

3

4

5

6

1 2 3 4 5

1 1 1 1 1

2

3

4

5

6

7

8

9

1

2/3

4/5

𝑎 𝑏 𝑏 𝑎 𝑎, 𝑏 𝑎, 𝑏

6

(35)

Automata Minimal

FMIPA Informatika Universitas Syiah Kuala – Semester Ganjil 2013 35

Hint penggunaan algoritma automata minimal:

• Buatlah sebuah tabel dimana setiap pasangan state hanya ada satu. Secara vertikal 2, … , 𝑛 dan secara horizontal 1, … 𝑛 − 1.

(36)

Referensi

1. Hopcroft, Motwani, Ullman: Introduction to Automata Theory,

Languages, and Computation. Addison-Wesley, 2001

2. James A. Anderson: Automata Theory with Modern Applications,

Cambridge University Press, 2006.

3. Uwe Schöning: Theoretische Informatik – kurzgefaßt. Spektrum,

2008. (5. Auflage)

Referensi

Dokumen terkait

Langkah pertama yang dilakukan dalam menentukan skala faktor- faktor yang mempengaruhi siswa melakukan kegiatan Senam Aerobik di SMK Negeri Se Kabupaten yaitu

Pengguna dapat roses yang dilakukan pertama kali yaitu pengguna dapat mendaftar terlebih dahulu (no. 2), kemudian setelah itu Pengguna dapat melakukan reporting (no. 3),

Langkah pertama dalam menentukan besarnya kapasitas baterai yang dapat dilakukan adalah dengan melakukan konversi dari besarnya total energi yang disyaratkan dalam

Berdasarkan diagram di atas dapat di lihat bahwa sebelum melakukan pengklasifikasian langkah pertama yang dilakukan adalah menentukan data learning dan kategori. Daftar

Berdasarkan hasil penelitian, dan Penerapan finite state automata pada tangga nada yang dilakukan dapat diambil kesimpulan bahwa : (1) Finite state automata

Hal yang pertama-tama harus dilakukan di lokasi kebakaran hutan dan lahan adalah melakukan perhitungan (size up) terhadap seluruh situasi untuk menentukan cara

b) Menentukan rating kecocokan setiap alternatif pada setiap kriteria. c) Membuat matriks keputusan berdasarkan kriteria (Ci); kemudian melakukan normalisasi berdasarkan

Upon Project Completion and Final Acceptance in accordance with the terms and conditions set forth herein, the bidder shall turnover the completed project to the Bataan Peninsula State