KONSEP TBO DAN OPERASI DASAR STRING
1. Teori Bahasa
- Teori bahasa membicarakan bahasa formal (formal language), terutama untuk kepentingan perancangan kompilator (compiler) dan pemroses naskah (text processor).
- Bahasa formal adalah kumpulan kalimat. Semua kalimat dalam sebuah bahasa dibangkitkan oleh sebuah tata bahasa (grammar) yang sama.
- Sebuah bahasa formal bisa dibangkitkan oleh dua atau lebih tata bahasa berbeda.
- Dikatakan bahasa formal karena grammar diciptakan mendahului pembangkitan setiap kalimatnya.
- Bahasa Natural/manusia bersifat sebaliknya; grammar diciptakan untuk meresmikan kata-kata yang hidup di masyarakat. Dalam pembicaraan selanjutnya ‘bahasa formal’ akan disebut ‘bahasa’ saja.
· Bahasa di dalam kamus adalah suatu sistem yang meliputi pengekspresian gagasan, fakta, konsep, termasuk sekumpulan simbol-simbol dan aturan untuk melakukan manipulasinya. Bahasa bisa juga disebut sebagai rangkaian simbol-simbol yang mempunyai makna.
2. Otomata (Automata)
- Otomata adalah mesin abstrak yang dapat mengenali (recognize), menerima (accept), atau membangkitkan (generate) sebuah kalimat dalam bahasa tertentu.
· Otomata merupakan suatu sistem yang terdiri atas sejumlah berhingga state, di mana state menyatakan informasi mengenai input. Otomata juga dianggap sebagai mesin otomatis yang merupakan suatu model matematika dari suatu sistem yang menerima input dan menghasilkan output, serta terdiri dari sejumlah berhingga state.
· Hubungan di antara bahasa dan otomata adalah bahasa dijadikan sebagai input oleh suatu mesin otomata, selanjutnya mesin otomata akan membuat keputusan yang mengindikasikan apakah input itu diterima atau tidak.
Pada gambar di atas, bila mesin mendapat string input berikut.
1. ada : diterima
2. adu : diterima
3. add : ditolak
Sebuah string input diterima bila mencapai state akhir / final state yang disana digambarkan dengan lingkaran ganda Mesin ini memiliki 6 state { q0, q1, q2, q3, q4, q5 }, yang mana adalah himpunan state yang ada pada mesin itu. State awal dari mesin adalah q0
{ q3, q4 } adalah himpunan state akhir / final. Sedangkan himpunan simbol input adalah
{a, d, u}.

Beberapa Pengertian Dasar :
·
Simbol adalah sebuah entitas abstrak (seperti
halnya pengertian titik dalam
geometri). Sebuah huruf atau sebuah angka adalah contoh simbol.
·
String adalah deretan terbatas (finite) simbol-simbol. Sebagai contoh,
jika a, b, dan c adalah tiga buah
simbol maka abcb adalah sebuah string
yang dibangun dari ketiga simbol tersebut.
·
Jika w adalah
sebuah string maka panjang string dinyatakan sebagai ïwï dan
didefinisikan sebagai cacahan (banyaknya) simbol yang menyusun string tersebut.
Sebagai contoh, jika w = abcb maka ïwï= 4.
·
String
hampa adalah sebuah string dengan nol buah simbol. String hampa dinyatakan
dengan simbol e (atau ^) sehingga ïeï= 0. String hampa dapat dipandang sebagai simbol hampa
karena keduanya tersusun dari nol buah simbol.
·
Alfabet
adalah hinpunan hingga (finite set)
simbol-simbol
Operasi Dasar String
·
Prefik
string w adalah string yang
dihasilkan dari string w dengan
menghilangkan nol atau lebih
simbol-simbol paling belakang dari string w
tersebut.
Contoh : abc,
ab, a, dan e adalah semua Prefix(x)
·
ProperPrefix string w adalah
string yang dihasilkan dari string w
dengan menghilangkan satu atau lebih
simbol-simbol paling belakang dari string w
tersebut.
Contoh : ab,
a, dan e adalah semua
ProperPrefix(x)
·
Postfix (atau Sufix) string w adalah
string yang dihasilkan dari string w
dengan menghilangkan nol atau lebih
simbol-simbol paling depan dari string w
tersebut.
Contoh : abc,
bc, c, dan e adalah semua Postfix(x)
·
ProperPostfix (atau PoperSufix) string w adalah
string yang dihasilkan dari string w
dengan menghilangkan satu atau lebih
simbol-simbol paling depan dari string w
tersebut.
Contoh : bc,
c, dan e adalah semua
ProperPostfix(x)
·
Head
string w adalah simbol paling
depan dari string w.
Contoh : a adalah Head(x)
·
Tail string w adalah string yang dihasilkan dari
string w dengan menghilangkan simbol
paling depan dari string w tersebut.
Contoh :
bc adalah Tail(x)
·
Substring
string w adalah string yang
dihasilkan dari string w dengan
menghilangkan nol atau lebih
simbol-simbol paling depan dan/atau simbol-simbol paling belakang dari string w tersebut.
Contoh :
abc, ab, bc, a, b, c, dan e adalah semua Substring(x)
·
ProperSubstring
string w adalah string yang
dihasilkan dari string w dengan
menghilangkan satu atau lebih
simbol-simbol paling depan dan/atau simbol-simbol paling belakang dari string w tersebut.
Contoh :
ab, bc, a, b,
c, dan e adalah
semua Substring(x)
·
Subsequence
string w adalah string yang
dihasilkan dari string w dengan
menghilangkan nol atau lebih
simbol-simbol dari string w tersebut.
Contoh :
abc, ab, bc, ac, a,
b,
c, dan e adalah
semua Subsequence(x)
·
ProperSubsequence
string w adalah string yang
dihasilkan dari string w dengan
menghilangkan satu atau lebih
simbol-simbol dari string w tersebut.
Contoh :
ab, bc, ac, a, b, c, dan e adalah semua Subsequence(x)
·
Concatenation adalah
penyambungan dua buah string. Operator concatenation adalah concate atau tanpa lambang apapun.
Contoh :
concate(xy) = xy = abc123
·
Alternation
adalah pilihan satu di antara dua buah string. Operator alternation
adalah alternate atau ½.
Contoh : alternate(xy)
= x½y = abc atau 123
Tidak ada komentar:
Posting Komentar
Tata tertib berkomentar di blog
1.gunakan kata "saya" untuk menyapa diri sendiri.
2.jangan berkomentar yang jelek-jelek karna bisa menyinggung perasaan orang lain.
3.jika ada yang salah dengan postingan harap di tegur