Anda di halaman 1dari 5

TUGAS TEORI BAHASA & OTOMATA

DFA DAN TATABAHASA REGULER

DI SUSUN OLEH:
Kelompok 5

Veno Setyoaji Wiratama ( 311910363 )


I Gede Krishna Yogananda Raken Putra ( 311910429 )
Riska Puspa Anggraeni Putri ( 311910440 )
I Putu Suwarjaya Atmaja ( 311910567 )

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS PELITA BANGSA
BEKASI
2022
BAB I
PEMBAHASAN

A. Deterministic finite automata (DFA)


DFA disebut juga dengan Automata Hingga Deterministik (AHD). AHD sering
digambarkan dengan dua cara:
• Table Transisi State
• Transisi Digraph
Contoh DFA:
1. Pengujian parity ganjil.
2. Pengujian untuk menerima bit string dengan banyaknya 0 genap, serta
banyaknya 1 genap.
- 0011 : diterima.
- 10010 : ditolak, karena banyaknya 0 ganjil.
Diagram transisi-nya:

DFAnya:
Q = {q0,q1,q2,q3}

Σ = {0,1}

S = q0
F = {q0}
Fungsi transisi () =
 δ( q0,011)= δ( q2,11) =δ( q3,1)= q2 (Ditolak)
 δ( q0,1010)= δ( q1,010) =δ( q3,10)=δ( q2,0)= q0 (Diterima)

3. Variabel dalam bahasa pascal diawali oleh huruf (besar/kecil), dan diikuti
dengan huruf atau angka. Diagram Transisinya sebagai berikut:

4. AHD F(Q,Σ,6,S,F), dimana:


Q = {q0,q1,q2}

Σ = {a, b}

6 diberikan dalam tabel berikut:


S = q0
F = {q0, q1}
Ilustrasi graf untuk AHD F adalah sebagai berikut:
- Lambang state awal adalah node dengan anak panah.
- Lambang state awal adalah node ganda.
Contoh kalimat yang diterima AHD: a, b, aa, ab, ba, aba, bab, abab, baba
Contoh kalimat yang tidak diterima AHD: bb, abb, abba
AHD ini menerima semua kalimat yang tersusun dari simbol a dan b yang
tidak mengandung substring bb

B. DFA dan Tatabahasa Reguler


1. Tatabahasa Linier Kiri Dan Linier Kanan
Suatu tatabahasa G(T,N,S,P) disebut linier kiri jika seluruh aturan
produksinya berbentuk A → xB dengan A, B ∈ N dan x ∈ T*

Suatu tatabahasa G(T,N,S,P) disebut linier kanan jika seluruh aturan


produksinya berbentuk A → Bx dengan A, B ∈ N dan x ∈ T*
Tatabahasa reguler bisa bersifat linier kiri atau linier kanan.
Contoh :
- Tatabahasa G = {{a,b}, {S}, S, P } dengan aturan produksi P adalah
S → abS |a adalah tatabahasa linier kanan /regular
- Tatabahasa G = {{a,b}, {S, S1,S2}, S, P } dengan aturan produksi P
adalah S → S1ab, S1→ S1ab | S2, S2→ a adalah tatabahasa linier kiri
/regular
- Tatabahasa G = {{a,b}, {S, A, B}, S, P } dengan aturan produksi P
adalah S → A, A → aB | ε, B → Ab, adalah bukan tatabahasa regular.

2. Konversi DFA Ke Tatabahasa Linier


Setiap DFA dapat diubah menjadi tatabahasa yang memiliki aturan
produksi yang linier. Aturan pengubahan ini adalah sebagai berikut :
- Setiap transisi status δ(A,a)=B diubah menjadi aturan produksi A → aB
- Setiap status akhir P diubah menjadi aturan produksi Pε→
Contoh FSA berikut

Tatabahasa linier untuk FSA tersebut yaitu


G = ({a,b}, {S,S1,S2,S3}, S, P ) dengan aturan produksi P adalah :
S → S1, S1 → aS2, S1 → bS3, S3 → ε

3. Konversi Tatabahasa Linier Ke DFA


- setiap aturan produksi A → aB diubah menjadi transisi status δ(A,a)=B
- setiap aturan produksi A → a diubah menjadi δ(A,a)=SF
- untuk a ∈ T* dengan |a|>1 dapat dibuat state tambahan
- setiap aturan produksi A → B diubah menjadi δ(A,ε)=B
Contoh: Tata bahasa G = ({a,b}, {V0,V1}, V0, P ) dengan P:
V0 →aV1
V1 →abV0 | b
Mesin FSA nya menjadi

Anda mungkin juga menyukai