Relasi Ekuivalensi dan Automata Minimal 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 FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
1
Relasi Ekuivalensi (Equivalence Relations)
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
2
Teori Bahasa dan Automata
Relasi Ekuivalensi
Pengertian Relasi Ekuivalensi 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: π, π β π
βΉ
π
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
π
3
Teori Bahasa dan Automata
Relasi Ekuivalensi
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 (π, π) β π
.
Note: Elemen π, π dan π pada π adalah sebarang.
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
4
Teori Bahasa dan Automata
Relasi Ekuivalensi
Pengertian Relasi Ekuivalensi Reflexive:
π
(π, π) β π
Symmetric:
π
π
(π, π) β π
dan (π, π) β π
Transitive:
π
π
π
(π, π) β π
dan (π, π) β π
dan (π, π) β π
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
5
Teori Bahasa dan Automata
Relasi Ekuivalensi
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.
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
6
Teori Bahasa dan Automata
Relasi Ekuivalensi
Kelas Ekuivalensi (Equivalence Classes) 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 π. Dengan kata lain kelas ekuivalensi adalah partisi/bagian dari himpunan π.
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
7
Teori Bahasa dan Automata
Relasi Ekuivalensi
Acceptance Equivalence
1
2
π
π
π
π
3
π
4 π
π
π
5
π
6
π
π, π
Apakah automata di atas dapat disederhanakan?
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
8
Teori Bahasa dan Automata
Relasi Ekuivalensi
Acceptance Equivalence
State 2 dan 3 adalah acceptance equivalence. Sama halnya pada state 4 dan 5, state-state tersebut dapat digabungkan.
1
π, π π
2/3
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
π
4/5
π
6
π, π
π
9
Teori Bahasa dan Automata
Relasi Ekuivalensi
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: πΏΜ π§1 , π€ β πΈ βΊ πΏΜ (π§2 , π€) β πΈ
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
10
Teori Bahasa dan Automata
Relasi Ekuivalensi
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence)
Selain pada state, acceptance equivalence juga dapat dilakukan pada word. Hal ini dapat dilakukan dengan menggunakan ekuivalensi Myhill-Nerode.
Definisi Ekuivalensi Myhill-Nerode Diketahui sebuah bahasa πΏ, dimana word π₯, π¦ β Ξ£ β . Relasi ekuivalensi β‘πΏ dapat didefinisikan dengan π₯ β‘πΏ π¦ if and only if (iff) untuk semua π§ β Ξ£β harus memenuhi kondisi (π₯π₯ β πΏ βΊ π¦π¦ β πΏ)
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
11
Teori Bahasa dan Automata
Relasi Ekuivalensi
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 = π€ β π, π β #π π€ πππππ} β’ πΏ1 = π€ β π, π, π β π‘π‘π‘π‘π‘ πππππ π‘π‘π‘π‘π‘π‘π‘ ππππ π π π π π π π πππ}
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
12
Teori Bahasa dan Automata
Relasi Ekuivalensi
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence)
Ekuivalensi Myhill-Nerode dan Bahasa Regular Sebuah bahasa πΏ β Ξ£ β dikatakan regular, iff β‘πΏ memiliki kelas ekuivalensi berhingga/finite.
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
13
Teori Bahasa dan Automata
Relasi Ekuivalensi
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.
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
14
Teori Bahasa dan Automata
Relasi Ekuivalensi
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence) Selanjutnya, kita dapat membuktikan bahwa π₯ β‘π π¦ akan sama dengan π₯ β‘πΏ π¦. Asumsikan π₯ β‘π π¦ kemudian pilih sebarang π§ β Ξ£ β . Pastikan kondisi berikut ini terpenuhi: π₯π₯ β πΏ βΊ πΏΜ π§0 , π₯π₯ β πΈ
(Definisi bahasa yang bisa diterima)
βΊ πΏΜ (πΏΜ π§0 , π₯ , π§) β πΈ
(Definisi πΏΜ )
βΊ πΏΜ (π§0 , π¦π¦) β πΈ
(Definisi πΏΜ )
βΊ πΏΜ (πΏΜ π§0 , π¦ , π§) β πΈ
βΊ π¦π¦ β πΈ
π₯ π
π π¦
(Definisi bahasa yang bisa diterima)
Maka kondisi π₯ β‘πΏ π¦ dapat terpenuhi.
Dengan demikian, β‘π terhubung dengan semua word pada β‘πΏ dan memiliki kelas ekuivalensi yang sama seperti β‘πΏ . Jadi β‘πΏ memiliki kelas ekuivalensi yang finite.
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
15
Teori Bahasa dan Automata
Relasi Ekuivalensi
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 = [π]β‘πΏ πΏ π€
β‘πΏ , π
= [π€π€]β‘πΏ
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
(Definisi bahasa yang bisa diterima)
16
Teori Bahasa dan Automata
Relasi Ekuivalensi
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence) Dari πΏ π€
β‘πΏ , π
= [π€π€]β‘πΏ diikuti oleh πΏΜ π€
Maka kondisinya menjadi:
π₯ β πΏ(π0 ) βΊ πΏΜ [π], π₯ β πΈ βΊ [π₯] β πΈ βΊπ₯βπΈ
β‘πΏ , π’
= [π€π€]β‘πΏ .
(Definisi bahasa yang bisa diterima) (Definisi Final state)
Sehingga π π0 = πΏ
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
17
Teori Bahasa dan Automata
Relasi Ekuivalensi
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. (Kedua bahasa di atas dapat juga dibuktikan dengan pumping lemma)
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
18
Teori Bahasa dan Automata
Relasi Ekuivalensi
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence) 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).
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
19
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
20
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal 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. FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
21
Teori Bahasa dan Automata
Automata Minimal
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 {π§, π§β²}. 5. Ulangi langkah di atas sampai tidak mungkin diberi ditandai lagi. 6. Untuk pasangan {π§, π§β²} yang belum diberi tanda, berarti π§ dan π§β² adalah acceptance equivalence. FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
22
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Gunakan algoritma automata minimal pada automata berikut:
2
1
π π
2 π π
3
π
4 π
π
5
π
π
3
6
π
π, π
4 5 6 1
2
3
4
5
Buat tabel untuk semua pasangan state
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
23
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Gunakan algoritma automata minimal pada automata berikut:
2
1
π π
2 π π
3
π
4 π
π
5
π
π π
3
6
π, π
4 5 6
1
1
1
1
1
1
2
3
4
5
(1) Tandai pasangan state final dan state non final
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
24
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Gunakan algoritma automata minimal pada automata berikut:
2
1
π π
2 π π
3
π
4 π
π
5
π
π π
3
6
π, π
4
2
5 6
1
1
1
1
1
1
2
3
4
5
(2) Beri tanda {2, 4} karena πΏ 2, π = 1, πΏ 4, π = 6 dan {1, 6} sudah ditandai FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
25
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Gunakan algoritma automata minimal pada automata berikut:
2
1
π π
2 π π
3
π
4 π
π
5
π
π π
3
6
π, π
4
2 3
5 6
1
1
1
1
1
1
2
3
4
5
(3) Beri tanda {3, 5} karena πΏ 3, π = 1, πΏ 5, π = 6 dan {1, 6} sudah ditandai FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
26
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Gunakan algoritma automata minimal pada automata berikut:
2
1
π π
2 π π
3
π
4 π
π
5
π
π π
3
6
π, π
4
2
5
4
3
1
1
1
1
1
1
2
3
4
5
6
(4) Beri tanda {2, 5} karena πΏ 2, π = 1, πΏ 5, π = 6 dan {1, 6} sudah ditandai FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
27
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Gunakan algoritma automata minimal pada automata berikut:
2
1
π π
2 π π
3
π
4 π
π
5
π
π π
3
6
π, π
4
2
5
5
4
3
1
1
1
1
1
1
2
3
4
5
6
(5) Beri tanda {3, 4} karena πΏ 3, π = 1, πΏ 4, π = 6 dan {1, 6} sudah ditandai FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
28
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Gunakan algoritma automata minimal pada automata berikut:
2
1
π π
2 π π
3
π
4 π
π
5
π
π π
3
6
π, π
4
2
5
5
6
4
3
6
1
1
1
1
1
1
2
3
4
5
(6) Beri tanda {1, 5} karena πΏ 1, π = 3, πΏ 5, π = 6 dan {3, 6} sudah ditandai FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
29
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Gunakan algoritma automata minimal pada automata berikut:
2
1
π π
2 π π
3
π
4 π
π
5
π
π π
3
6
π, π
4
7
2
5
5
6
4
3
6
1
1
1
1
1
1
2
3
4
5
(7) Beri tanda {1, 4} karena πΏ 1, π = 3, πΏ 4, π = 6 dan {3, 6} sudah ditandai FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
30
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Gunakan algoritma automata minimal pada automata berikut:
2
1
π π
2 π π
3
π
4 π
π
5
π
π π
6
π, π
3
8
4
7
2
5
5
6
4
3
6
1
1
1
1
1
1
2
3
4
5
(8) Beri tanda {1, 3} karena πΏ 1, π = 2, πΏ 3, π = 5 dan {2, 5} sudah ditandai FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
31
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Gunakan algoritma automata minimal pada automata berikut:
1
π π
2 π π
3
π
4 π
π
5
π
π π
6
π, π
2
9
3
8
4
7
2
5
5
6
4
3
6
1
1
1
1
1
1
2
3
4
5
(9) Beri tanda {1, 2} karena πΏ 1, π = 2, πΏ 2, π = 4 dan {2, 4} sudah ditandai FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
32
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Gunakan algoritma automata minimal pada automata berikut:
1
π π
2 π π
3
π
4 π
π
5
π
π π
6
π, π
2
9
3
8
4
7
2
5
5
6
4
3
6
1
1
1
1
1
1
2
3
4
5
Pasangan state yang tersisa {2, 3} dan {4, 5} tidak bisa ditandai karena acceptance equivalent. FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
33
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Gunakan algoritma automata minimal pada automata berikut:
1
π π
1
2 π π π, π π
3 2/3
π
4 π
π
π
5
π
4/5
π
6
π π
π
6
π, π
π, π
2
9
3
8
4
7
2
5
5
6
4
3
6
1
1
1
1
1
1
2
3
4
5
Pasangan state yang tersisa {2, 3} dan {4, 5} tidak bisa ditandai karena acceptance equivalent. FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
34
Teori Bahasa dan Automata
Automata Minimal
Automata Minimal Hint penggunaan algoritma automata minimal: β’ Buatlah sebuah tabel dimana setiap pasangan state hanya ada satu. Secara vertikal 2, β¦ , π dan secara horizontal 1, β¦ π β 1. β’ Spesifikasikan pasangan mana yang telah diberi tanda.
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
35
Teori Bahasa dan Automata
Referensi
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)
FMIPA Informatika Universitas Syiah Kuala β Semester Ganjil 2013
36