Alfabet akan bahasa formal terdiri dari simbol, huruf atau token yang bergabung menjadi string akan bahasa.[1] Tiap string yang digabungkan dari simbol-simbol akan alfabet disebut sebuah kata. Sebuah bahasa formal sering didefinisikan melalui tata bahasa formal seperti tata bahasa reguler atau tata bahasa bebas konteks yang terdiri dari kaidah pembentukan.
Pada ilmu komputer, bahasa formal digunakan antara lain sebagai dasar untuk menggambarkan tata bahasa akan bahasa pemrograman dan versi formal akan himpunan bagian dari bahasa alami yang mana kata-kata akan bahasa mewakili konsep yang diasosiasikan dengan semantik atau makna tertentu.
Sejarah
Bahasa formal pertama diperkirakan digunakan oleh Gottlob Frege dalam buku Begriffsschrift (1879) yang mana Frege menyatakan sebagai sebuah "bahasa formal dari pemikiran murni."[2]
Definisi
Suatu bahasa formal L atas sebuah alfabet Σ ialah himpunan bagian akan Σ*, yaitu sekumpulan kata-kata atas alfabet.
Contoh
Terdapat kaidah yang menggambarkan suatu bahasa formalL atas alfabet Σ={0, 1, 2, 3, 4, 5, 6, 7, 8, 9, +, =}:
Setiap string berisi yang tidak mengandung "+" atau "=" dan tidak dimulai dengan "0" ialahL.
String "0" ialahL.
Suatu string berisi "=" adalahL hanya jika terdapat satu "=" memisahkan dua string valid akanL.
Suatu string berisi "+" tetapi bukan "=" ialahL jika setiap "+" dalam string memisahkan dua string yang valid akanL.
Tidak ada string dalamL selain yang tersirat oleh aturan yang ada.
Berdasar aturan tersebut, string "23+4=555" ialahL, tetapi string "=234=+" ialah bukan. Bahasa formal ini mengungkapkan bilangan asli, tetapi hanya mengungkapkan seperti apa yang terlihat (sintaksis), bukan berdasarkan makna (semantik). Sebagai contoh, tidak terdapat pada kaidah ini indikasi bahwa "0" berarti angka nol, "+" berarti penjumlahan, "23+4=555" ialah tidak benar, dsb.
Referensi
Kutipan
↑Reghizzi, Stefano Crespi (2009), Formal Languages and Compilation, Texts in Computer Science, Springer, hlm.8, ISBN9781848820500, Suatu alfabet ialah himpunan terbatas.