Konsep Dasar :
Anggota alfabet dinamakan simbol terminal.
Kalimat adalah deretan hingga simbol-simbol terminal.
Bahasa adalah himpunan kalimat-kalimat. Anggota bahasa bisa tak
hingga kalimat.
Simbol-simbol berikut adalah simbol terminal :
huruf kecil, misalnya : a, b, c, 0, 1, ..
simbol operator, misalnya : +, , dan
simbol tanda baca, misalnya : (, ), dan ;
string yang tercetak tebal, misalnya : if, then, dan else.
Simbol-simbol berikut adalah simbol non terminal /Variabel :
huruf besar, misalnya : A, B, C
huruf S sebagai simbol awal
string yang tercetak miring, misalnya : expr
Huruf yunani melambangkan string yang tersusun atas simbol-
simbol terminal atau simbol-simbol non terminal atau campuran
keduanya, misalnya : , , dan .
Sebuah produksi dilambangkan sebagai artinya : dalam sebuah
derivasi dapat dilakukan penggantian simbol dengan simbol .
Derivasi adalah proses pembentukan sebuah kalimat atau sentensial.
Sebuah derivasi dilambangkan sebagai :
Sentensial adalah string yang tersusun atas simbol-simbol terminal
atau simbol-simbol non terminal atau campuran keduanya.
Kalimat adalah string yang tersusun atas simbol-simbol terminal.
Kalimat adalah merupakan sentensial, sebaliknya belum tentu.
Grammar :
Grammar G didefinisikan sebagai pasangan 4 tuple : V T , V N , S, dan P, dan
dituliskan sebagai G(V T , V N , S, P), dimana :
VT : himpunan simbol-simbol terminal (alfabet) kamus
VN : himpunan simbol-simbol non terminal
SV N : simbol awal (atau simbol start)
P : himpunan produksi
1. Kelas-kelas Bahasa, Mesin Pengenalnya beserta contohnya :
Bahasa tipe-0, atau biasa disebut sebagai Un-restricted grammar adalah kelas
bahasa yang paling luas, juga biasa disebut PHRASE STRUCTURED GRAMMAR.
Kelas 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)*
Mesin pengenalnya = Mesin Turing
Contoh :
Dimiliki grammar G( ,N ,S , P) dengan = { a, b } , N={ A, B , S} dan P =
{ SABa, ABB, B ab, ABab, BBBaa}. Perlihatkan bahwa string : abababa
dan aaa adalah string-string yang diproduk oleh grammar tersebut.
Jawab :
Jika dicermati produksi yang ada , terlihat bahwa seluruh produksi yang ada
memenuhi syarat grammar tipe-0, yaitu string kiri dalam aturan produksi
minimal terdiri SATU non terminal.
Contoh :
Tunjukkan bahwa contoh sebelumnya adalah tidak termasuk pada grammar
tipe 2.
Jawab:
Jika diperhatikan aturan produksi pada contoh 2 : SABa, ABB, B ab,
Ada aturan : AB AAA ; 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.
0 = Tipe-0
1 = Tipe-1
2 = Tipe-2
3 = Tipe-3
Hasilnya : aaa..aab
Penurunan : SaAaaA aaaA … aaaa..aa Baaa..abBaaa..aabbB
aaa..aabb…bBaaa..aabb…baaa..aabb…b
Hasilnya : aaa..aabbb..b
Bahasa yang dibangkitkan adalah "sederatan a dengan jumlah minimal SATU
buah diikuti sederetan b dengan jumlah minimal NOL buah" atau dapat
dituliskan sebagai:
L(G)={aa*b*}
Dimana a*={a0 a1 a2 … a}
b*={b0 b1 b2 … b }
FINITE STATE AUTOMATA (FSA)
tabel transisi
Δ 0 1
Gnp Gnp Gjl
Gjl Gjl Gnp
S = Gnp, F = {Gjl}
∑= {a, b} S δ a b
= q0
F = {q0, q1}
q0 q0 q1
q1 q0 q2
q2 q2 q2
a ba
q0 q1 q2 b
a b
Kalimat yang diterima oleh DFA : a, b, aa, ab, ba, aba, bab, abab, baba
Kalimat yang dittolak oleh DFA : bb, abb, abba
DFA ini menerima semua kalimat yang tersusun dari simbol a dan b yang
tidak mengandung substring bb.
Contoh :
Telusurilah, apakah kalimat-kalimat berikut diterima DFA di atas :
abababaa diterima
aaaabab diterima
aaabbaba ditolak
Jawab :
i) q0,abababaa q0,bababaa) (q1,ababaa)
(q0,babaa) δ (q1,abaa) δ (q0,baa) δ (q1,aa)
(q0,a) q0
Tracing berakhir di q0 (state AKHIR) kalimat abababaa diterima
ii) (q0, aaaabab) (q0,aaabab) (q0,aabab)
(q0,abab) (q0,bab) (q1,ab) (q0,b)
q1
Tracing berakhir di q1 (state AKHIR) kalimat aaaababa
diterima
iii) (q0, aaabbaba) (q0, aabbaba) (q0, abbaba)
(q0, bbaba) (q1,baba) (q2,aba)
(q2,ba)
δ (q2,a) q2
Tracing berakhir di q2 (bukan state AKHIR) kalimat aaabbaba
ditolak
Kesimpulan :
sebuah kalimat diterima oleh DFA di atas jika tracingnya berakhir di
salah satu state AKHIR.
NFA :
δ a b c
∑= a, b,c} S = q 0
q0 {q 0 , q1} {q 0 , q 2 {q 0 , q
F = {q 4 } } }
q1 {q1, q 4 } {q1} {q1}
q2 {q 2 } {q 2 , q 4 {q 2 }
}
q3 {q 3 } {q 3 } {q 3 , q
Ilustrasi graf untuk NFA adalah sebagai berikut :
a, b, c a, b, c
a
q0 q
1
c b a
b
q3 q2 q4
a, b, c a, b, c
kalimat yang diterima NFA di atas : aa, bb, cc, aaa, abb, bcc, cbb kalimat yang
tidak diterima NFA di atas : a, b, c, ab, ba, ac, bc
Deskripsi Himpunan
• Nama himpunan berupa huruf kapital (Mis.: A, B, G, H, S, C)
• Notasi himpunan berupa kurung kurawal
Contoh:
W : { d, m, p, t }
Objek yang dibicarakan dalam himpunan (Mis. d, m, p, t ) disebut anggota
(elemen, unsur) dan ditulis di dalam kurung kurawal tersebut
Tanda Keanggotaan
Relasi anggota dengan himpunan menggunakan notasi ““ dan yang bukan anggota
menggunakan notasi “”
Contoh:
H : { d, m, p, t }
p { d, m, p, t } atau p W
b { d, m, p, t } atau b W
Banyaknya anggota H dinotasikan dengan n(H) Jadi n(H) = 4.
Menyatakan Himpunan
1) Cara tabulasi (rooster method, pendaftaran):
Menuliskan anggotanya satu per satu dalam kurung kurawal. A :
{merah, kuning, hijau}
H : {ayam, itik, bebek, angsa}
Anggota-anggota yang sama dianggap sebagai satu anggota
{6, 4, 7, 9, 6, 9, 2} = {2, 4, 6, 7, 9}
{p, c, a, m, p, m, h} memiliki 5 anggota
2) Cara deskriptif (rule method, cara aturan/metode pembentukan himpun-an)
Menuliskan aturan atau perumusan tentang sifat keanggotaannya
M : {x3 x 16, x bilangan genap}
H : {x x nama-nama hewan berkaki dua} P :
{xx bilangan prima kurang dari 15}.
Macam-Macam Himpunan
a) Himpunan kosong
• Suatu himpunan H disebut himpunan kosong jika n(H) = 0.
• Notasi untuk himpunan kosong adalah Ø atau { }
• Contoh himpunan kosong:
Himpunan nama-nama hewan berkaki tiga
Himpunan bilangan asli kurang dari satu
Himpunan bilangan prima genap antara 10 dan 20
Himpunan nama-nama dosen unila yg berusia lebih dari 500 tahun.
b) Himpunan bagian
• Himpunan A disebut himpunan bagian (Subset) dari himpunan B jika setiap
anggota A juga menjadi anggota B
A B ⟺ xA xB.
• Himpunan bagian dari {a, d, t} adalah
Ø, {a}, {d}, {t}, {a, d}, {a, t}, {d,t}, dan
{a, d, t} → ada delapan himpunan bagian
• Himpunan bagian sejati dari {a, d, t} adalah Ø,
{a}, {d}, {t}, {a, d}, {a, t}, {d,t}.
c) Himpunan semesta
Himpunan semesta S adalah himpunan yang memuat semua anggota
himpunan yang dibicarakan
Himpunan semesta dari {1,2,3,4,5} antara lain adalah:
a) {0,1,2,3,4,5,6}
b) {x|x bilangan asli}
c) Himpunan bilangan cacah kurang dari 20.
• Himpunan H disebut himp terhingga (finite set) jika n(H) = c, c bilangan cacah
Contoh:
G : Himpunan nama-nama hari dalam seminggu
N : {7,8,9,10, …, 2015}
• Himpunan D disebut himp takhingga (infinite set, transfinite set) jika n(D)
= ~ Contoh:
F = {2, 3, 4, 5, …}
M : {x2 x 4, x bilangan real}
f) Himpunan terbatas
Himpunan terbatas yaitu himpunan yang mempunyai batas Ada
himpunan terbatas kiri dan ada himpunan terbatas kanan
Contoh:
K = {4, 1, 3, 8, 6}
L = {x0 x 7, x bilangan asli}
B = {x0 x 7, x bilangan bulat}.
Himpunan terbatas biasanya beranggotakan bilangan.
Batas yang kecil disebut batas bawah, dan batas yang besar disebut batas atas
Unsur yang menjadi batas itu tidak harus menjadi anggota himpunan Pada
himpunan terhingga yang ditulis secara tabulasi, anggota terkecil menjadi batas
bawah, dan anggota terbesar menjadi batas atas.
Khusus untuk bil real, himpunan tak terbilang (kontinu) bisa dinyatakan dengan
interval atau selang
a) {x | 2 x 7} = (2,7]
b) {x | 2 x 7} = [2,7)
c) {x | 2 x 7} = (2,7)
d) {x | 2 x 7} = [2,7].
B. Relasi himpunan
a. Dua Himpunan Sama
Kedua himpunan tersebut mempunyai anggota yang sama
A = B AB dan BA
A = B ⟺ xA xB xB xA
Contoh:
A = {5, 2, 7, 2, 9, 8, 7}
B = {8, 8, 2, 7, 5, 9, 8, 5}
maka A = B.
b. Dua himpunan Saling Lepas (Disjoin)
Kedua himpunan tersebut tidak mempunyai anggota yang sama
Contoh:
P = {a, b, c, d}
Q = {2, 4, 6, 8, 9, 3}
Himpunan P dan Q dikatakan saling lepas
c. Dua himpunan saling berpotongan
Antar kedua himpunan tsb, ada anggota yang sama dan ada anggota yang
tidak sama
A = {5, 8, 2, 9}
B = {14, 2, 8, 7, 26}
Himpunan A dan B saling berpotongan (saling beririsan)
d. Dua himpunan, yang satu bagian dari himpunan kedua
Himpunan A disebut himpunan bagian (Subset) dari himpunan B jika
setiap anggota A juga menjadi anggota B
e. Dua himpunan yang Ekivalen.
Himpunan A dikatakan ekivalen dengan himpunan B jika n(A) = n(B).
Contoh:
A = { 4,6,3,2,2,6}
B = { r, k, d, w}
Maka A~B
C. Operasi himpunan
a) Union (gabungan) dua himpunan
• AB = {x|xA atau xB}
• Gabungan dari himpunan A dan B adalah suatu himpunan yang
anggotanya adalah anggota A atau anggota B.
Contoh:
A = {a,c,e}
B = {b, c, d}
maka AB = {a, b, c, d, e}
c) Pengurangan himpunan
• A – B = {x|xA dan xB}
• A – B berarti suatu himpunan yang anggotanya adalah anggota A tetapi tidak
menjadi anggota B.
• Contoh:
A = {a,c,d,e}
B = {a, b, e, k, g}
A – B = {c, d}
B – A = {b, k, g}
D. Himpunan bilangan.
Barisan bilangan asli : 1, 2, 3, 4, 5, 6, 7, ….
Himpunan bilangan asli A : {1, 2, 3, 4, 5, 6, 7, ….}
Contoh bilangan asli: 7, 4, 9, 28, 13.
E. Diagram Venn
Istilah diagram Venn berasal dari seorang ahli bangsa Inggris yang menjadi tokoh
logika matematika, yaitu John Venn (1834-1923). Ia menulis buku simbolik logic
dalam analisisnya menggunakan banyak diagram khususnya diagram lingkaran,
diagram tersebut kini dikenal nama diagram Venn.
Biasanya himpunan semesta digambarkan sebagai daerah persegi panjang dan suatu
himpunan bagian dari himpunan semesta ditunjukkan dengan daerah kurva tertutup
sederhana. Anggota-anggota suatu himpunan ditunjukkan dengan noktah-noktah
sedangkan jika anggotanya cukup banyak maka noktah sebagai wakil-wakil anggota
himpunan tidak perlu ditulis.