Relasi Ekuivalensi dan Automata Minimalย ยท Teori Bahasa dan Automata Relasi Ekuivalensi ๐ฟ...
Transcript of Relasi Ekuivalensi dan Automata Minimalย ยท Teori Bahasa dan Automata Relasi Ekuivalensi ๐ฟ...
Relasi Ekuivalensi dan Automata Minimal
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 1
Relasi Ekuivalensi (Equivalence Relations)
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 2
Pengertian Relasi Ekuivalensi
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 3
Teori Bahasa dan Automata 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:
๐, ๐ โ ๐ โน ๐ ๐
Pengertian Relasi Ekuivalensi
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 4
Teori Bahasa dan Automata 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.
Pengertian Relasi Ekuivalensi
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 5
Teori Bahasa dan Automata Relasi Ekuivalensi
Reflexive: ๐
๐ ๐ Symmetric:
Transitive: ๐ ๐ ๐
(๐, ๐) โ ๐
(๐, ๐) โ ๐ dan (๐,๐) โ ๐
(๐, ๐) โ ๐ dan (๐, ๐) โ ๐ dan (๐, ๐) โ ๐
Kelas Ekuivalensi (Equivalence Classes)
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 6
Teori Bahasa dan Automata Relasi Ekuivalensi
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.
Kelas Ekuivalensi (Equivalence Classes)
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 7
Teori Bahasa dan Automata Relasi Ekuivalensi
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 ๐.
Acceptance Equivalence
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 8
Teori Bahasa dan Automata Relasi Ekuivalensi
1
2
3
4
5
6 ๐
๐
๐
๐
๐
๐
๐ ๐
๐
๐
๐, ๐
Apakah automata di atas dapat disederhanakan?
Acceptance Equivalence
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 9
Teori Bahasa dan Automata Relasi Ekuivalensi
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.
Acceptance Equivalence
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 10
Teori Bahasa dan Automata Relasi Ekuivalensi
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,๐ค) โ ๐ธ
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence)
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 11
Teori Bahasa dan Automata Relasi Ekuivalensi
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.
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence)
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 12
Teori Bahasa dan Automata Relasi Ekuivalensi
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 = ๐ค โ ๐, ๐, ๐ โ ๐ก๐ก๐ก๐๐ ๐๐๐๐๐ ๐ก๐๐ก๐ก๐ก๐ก๐ก ๐ก๐๐ก๐ก ๐ ๐ ๐๐ค๐๐ก๐ก ๐๐๐}
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence)
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 13
Teori Bahasa dan Automata Relasi Ekuivalensi
Ekuivalensi Myhill-Nerode dan Bahasa Regular Sebuah bahasa ๐ฟ โ ฮฃโ dikatakan regular, iff โก๐ฟ memiliki kelas ekuivalensi berhingga/finite.
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence)
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 14
Teori Bahasa dan Automata Relasi Ekuivalensi
๐ฟ 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.
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence)
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 15
Teori Bahasa dan Automata Relasi Ekuivalensi
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 โก๐ฟ. Jadi โก๐ฟ memiliki kelas ekuivalensi yang finite.
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence)
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 16
Teori Bahasa dan Automata Relasi Ekuivalensi
โก๐ฟ 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 = [๐]โก๐ฟ
๐ธ = ๐ค โก๐ฟ ๐ค โ ๐ฟ}
๐ฟ ๐ค โก๐ฟ ,๐ = [๐ค๐]โก๐ฟ
(Definisi bahasa yang bisa diterima)
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence)
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 17
Teori Bahasa dan Automata Relasi Ekuivalensi
Dari ๐ฟ ๐ค โก๐ฟ ,๐ = [๐ค๐]โก๐ฟ diikuti oleh ๐ฟ ๐ค โก๐ฟ ,๐ = [๐ค๐ ]โก๐ฟ.
Maka kondisinya menjadi:
๐ฅ โ ๐ฟ(๐0) โบ ๐ฟ [๐], ๐ฅ โ ๐ธ
โบ [๐ฅ] โ ๐ธ
โบ ๐ฅ โ ๐ธ
Sehingga ๐ ๐0 = ๐ฟ
(Definisi bahasa yang bisa diterima)
(Definisi Final state)
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence)
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 18
Teori Bahasa dan Automata Relasi Ekuivalensi
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)
Ekuivalensi Myhill-Nerode (Myhill-Nerode Equivalence)
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 19
Teori Bahasa dan Automata Relasi Ekuivalensi
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).
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 20
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 21
Teori Bahasa dan Automata 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.
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 22
Teori Bahasa dan Automata 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.
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 23
Teori Bahasa dan Automata Automata Minimal
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
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 24
Teori Bahasa dan Automata Automata Minimal
1
2
3
4
5
6 ๐
๐
๐
๐
๐
๐
๐ ๐
๐
๐
๐, ๐
Gunakan algoritma automata minimal pada automata berikut:
(1) Tandai pasangan state final dan state non final
2
3
4
5
6 1 2 3 4 5
1 1 1 1 1
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 25
Teori Bahasa dan Automata Automata Minimal
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
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 26
Teori Bahasa dan Automata Automata Minimal
1
2
3
4
5
6 ๐
๐
๐
๐
๐
๐
๐ ๐
๐
๐
๐, ๐
Gunakan algoritma automata minimal pada automata berikut:
(3) Beri tanda {3, 5} karena ๐ฟ 3,๐ = 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
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 27
Teori Bahasa dan Automata Automata Minimal
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
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 28
Teori Bahasa dan Automata Automata Minimal
1
2
3
4
5
6 ๐
๐
๐
๐
๐
๐
๐ ๐
๐
๐
๐, ๐
Gunakan algoritma automata minimal pada automata berikut:
(5) Beri tanda {3, 4} karena ๐ฟ 3,๐ = 1, ๐ฟ 4,๐ = 6 dan {1, 6} sudah ditandai
2
3
4
5
6 1 2 3 4 5
1 1 1 1 1
2 3 4 5
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 29
Teori Bahasa dan Automata Automata Minimal
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
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 30
Teori Bahasa dan Automata Automata Minimal
1
2
3
4
5
6 ๐
๐
๐
๐
๐
๐
๐ ๐
๐
๐
๐, ๐
Gunakan algoritma automata minimal pada automata berikut:
(7) Beri tanda {1, 4} karena ๐ฟ 1,๐ = 3, ๐ฟ 4,๐ = 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 7
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 31
Teori Bahasa dan Automata Automata Minimal
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
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 32
Teori Bahasa dan Automata Automata Minimal
1
2
3
4
5
6 ๐
๐
๐
๐
๐
๐
๐ ๐
๐
๐
๐, ๐
Gunakan algoritma automata minimal pada automata berikut:
(9) Beri tanda {1, 2} karena ๐ฟ 1, ๐ = 2, ๐ฟ 2, ๐ = 4 dan {2, 4} sudah ditandai
2
3
4
5
6 1 2 3 4 5
1 1 1 1 1
2 3 4 5
6 7
8
9
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 33
Teori Bahasa dan Automata Automata Minimal
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
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 34
Teori Bahasa dan Automata Automata Minimal
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
1 2/3 4/5 ๐
๐
๐
๐ ๐, ๐ ๐, ๐
6
Automata Minimal
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 35
Teori Bahasa dan Automata 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.
Referensi
FMIPA Informatika Universitas Syiah Kuala โ Semester Ganjil 2013 36
Teori Bahasa dan Automata 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)