Hierarchi Tata Bahasa menurut Noam Chomsky, Tata bahasa formal dapat dikelompokkan menjadi 4 tingkatan (hierarchi), pengelompokkan tata-bahasa menurut Chomsky ditentukan oleh aturan produksi yang dimiliki oleh grammar, yaitu tata bahasa Tipe-0, Tipe-1, Tipe-2 dan Tipe-3. 1
Hierarchi Tata Bahasa
Andaikan anturan produksi dalam suatu grammar G dituliskan sebagai: dengan masing-masing dan adalah string-string yang terdiri dari simbol Non terminal ataupun simbol terminal, atau : ,(N)* maka masing-masing kelas tata bahasa dibatasi sbb: Tata-bahasa Tipe 0 (Non-restricted Grammar) Tata-bahasa Tipe 1 (Context Sensitive Grammar) Tata-bahasa Tipe 2 (Context-Free Grammar) Tata-bahasa Tipe 3 (Regular Grammar) 2
Hierarchi Tata Bahasa
Tata-bahasa Tipe-0 (Non-restricted Grammar): Tata-bahasa Tipe-0, atau biasa disebut sebagai non-restricted grammar adalah tata-bahasa yang paling luas, biasa disebut PHRASE STRUCTURED GRAMMAR .Tata-bahasa Tipe-0 adalah tata-bahasa yang memiliki aturan produksi: dengan batasan:
: minimal terdiri dari 1 simbol Non terminal, atau
{(N)* N(N)*} : tidak dibatasi, atau : {(N)*} 3
Hierarchi Tata Bahasa
Contoh: Dimiliki grammar G(, N, S, P) dengan ={a,b}, N={A,B,S} dan P={SABa, ABB, Bab, ABab, BBBaa}. Perlihatkan bahwa string : abababa dan aaa adalah stringstring yang diperoleh oleh grammar tersebut. Terlihat string kiri dalam aturan produksi minimal terdiri SATU non terminal (memenuhi syarat grammar tipe-0) Penurunan abababa, ditempuh dari proses penurunan: SABaBBBaababBaabababa Penurunan string aaa dengan penurunan: SABaBBBaaaa 4
Hierarchi Tata Bahasa
Tata-bahasa Tipe-1 (Context Sensitive Grammar): Tata-bahsa Tipe-1 adalah tata-bahasa Tipe-0 yang memiliki aturan produksi : dengan tambahan batasan: | || | jika tidak dalam bentuk S, yaitu panjang string lebih kecil atau sama dengan panjang string . Contoh: Dimiliki grammar G (, N, S, P) dengan ={a,b}, N={A,B,S} dan P={SABa, ABB, Bab, ABAAA, Aaa, A} Apakah tatabahasa contoh di atas (tata-bahasa Tipe-0), apakah termasuk tipe-1?. apakah string a termasuk anggota bahasa. 5
Hierarchi Tata Bahasa
Jawab: Grammar contoh (Tata-bahasa Tipe-1) memenuhi tata-bahasa tipe-0 dan tipe-1. Sedangkan tatabahasa pada contoh (Tata-bahasa Tipe-0) hanya memenuhi tipe-0 dan tidak memenuhi tipe-1, karena ada aturan produksi: BBBaa pada contoh (Tatabahasa Tipe-0) Penurunan string a tidak ada dalam contoh Grammar tata bahasa di atas. SABaAAAaaa 6
Hierarchi Tata Bahasa
Tata-bahasa Tipe-2 (Context-Free Grammar): Tata-bahasa Tipe-2, adalah tata-bahasa tipe-1 yang memiliki aturan produksi: dengan tambahan batasan: : HANYA terdiri dari 1 simbol Non terminal, atau N : tidak dibatasi, atau {(N)*}. Contoh: Tunjukkan bahwa contoh (Tata-bahasa Tipe-1) adalah tidak termasuk pada grammar Tata-bahasa Tipe-2 7
Hierarchi Tata Bahasa
Jawab: Jika diperhatikan aturan produksi pada contoh Tata-bahasa Tipe-1: SAba, ABB, Baa, ABAAA, Aaa, A Ada aturan: ABAAA; yaitu aturan produksi dimana ruas kiri (AB) memiliki panjang lebih dari 1. Ini melanggar aturan untuk grammar tipe-2, dengan demikian tidak termasuk grammar tipe-2.
Hierarchi Tata Bahasa
Tata-bahasa Tipe-3 (Regular Grammar): Tata-bahasa Tipe-3, adalah tata-bahasa tipe-2 yang memiliki aturan produksi: dengan tambahan batasan: : HANYA terdiri dari 1 simbol Non terminal, atau N : dalam bentuk salah satu diantara: a, aB, atau dimana a adalah simbol terminal dan B adalah simbol Non terminal Tata-bahasa tipe-3 (reguler) merupakan tata bahasa yang paling ketat (paling banyak aturan) dari hierarkhi tata bahasa yang ada. Secara diagram keempat tata bahasa dapat digambarkan sbb: 9
Hierarchi Tata Bahasa
Hierarkhi Tata-bahasa (grammar) menurut Noam Chomsky
0 = Tipe-0 1 = Tipe-1 2 = Tipe-2 3 = Tipe-3
10
Hierarchi Tata Bahasa
Contoh: Dimiliki Grammar G(, N, S, P) dengan = {a,b}, N={A,B,S} dan P={SaA, AaA, AB, BbB, B} Tentukan bahasa yang dibangkitkan oleh tata bahasa regular berikut. Jawab: Penurunan: SaAaBaa menghasilkan string :a Penurunan: SaAaaAaaaA aaaaaaBaaaa aaaaa Hasilnya : aaaaaa 11
Hierarchi Tata Bahasa
Penurunan: SaAaaAaaaAaaaaaaB aaaabBaaaaab Hasilnya: aaaaab Penurunan: SaAaaAaaaAaaaaaaB aaaabBaaaaabbBaaaaabb bBaaaaabbbaaaaabbb Hasilnya: aaaaabbbb Bahasa yang dibangkitkan sederetan a dengan
jumlah minimal SATU buah diikuti
sederetan b dengan jumlah minimal NOL buah atau dapat ditulis sbb: ({aa*b*}) 12
Hierarchi Tata Bahasa
dapat dituliskan: L(G) = {aa*b*} Dimana a*={a0a1a2 a} b*={b0b1b2 b}
13
Mesin Pengenal Bahasa
Beberapa tingkatan tata bahasa melahirkan beberapa tingkatan bahasa. Tata bahasa reguler membangkitkan bahasa reguler, tata bahasa bebas konteks membangkitkan bahasa bebas konteks dst. Mesin abstract yang merupakan pengenal dari berbagai tingkatan bahasa tersebut dimulai dari yang paling sederhana adalah: 1.Bahasa reguler, mesin pengenalnya: Finite State Automata 2.Bahasa bebas konteks, mesin pengenalnya Push Down Automata. 3.Bahasa konteks sensitive, mesin pengenalnya Linear Bounded Automata 4.Bahasa unsrestricted mesin pengenalnya adalah Mesin 14 Turing.