Anda di halaman 1dari 2

I.

Pendahuluan Teori Komputasi

Teori komputasi adalah cabang ilmu komputer dan matematika yang membahas
apakah dan bagaimanakah suatu masalah dapat dipecahkan pada model komputasi
menggunakan algoritma. Teori komputasi dibagi menjadi 3 bagian, yaitu Teori Automata,
Teori Komputabilitas, dan Teori Kompleksitas.

Automata merupakan mesin abstrak yang menggunakan model matematika yaitu


model mesin state (state machine model) atau model transisi state (state transition model).
Automata dibedakan berdasarkan temporary memory (memori sementara), yaitu:

1. Finite Automata
Finite automata adalah kelas mesin dengan kemampuan paling terbatas karena
tidak memiliki temporary memory. Contohnya Vending Machine.
2. Pushdown Automata
Mesin ini memiliki temporary memory dengan mekanisme LIFO (Last In First
Out) dan lebih ampuh karena bantuan keberadaan stack yang dipandang sebagai
unit memori. Contohnya Compilers pada bahasa pemrograman.
3. Linear Bounded Automata
Mesin ini memiliki temporary memory dengan proses Dequeue.
4. Turing Machines
Turing Machines memiliki memori dengan mekanisme pengaksesan acak
(Random Access Memory). Turing Machines merupakan model komputasi yang
sering dipakai dan paling tangguh dikenal.

Adapun gambaran kekuatan Automata dalam menyelesaikan permasalahan dapat


dilihat dibawah ini.

Finite Automata < Pushdown Automata < Turning Machine

Kekuatan rendah Kekuatan Tinggi

Teori Kompleksitas bertujuan untuk mengkaji kebutuhan waktu dan ruang untuk
memecahkan persoalan yang diselesaikan dengan pendekatan yang berbeda-beda.
Dengan kata lain, teori kompleksitas mengklasifikasikan persoalan sebagai persoalan
mudah atau persoalan sulit. Adapun klasifikasi kompleksitas waktu masalah komputasi,
yaitu sebagai berikut:

1. Masalah P, diselesaikan dalam waktu polinom.


2. Masalah np-complex, dipercaya membutuhkan waktu eksponensial untuk
menyelesaikan masalah.
Mata kuliah Teori komputasi membahas tentang:

1. Teori Himpunan,
2. Teori Graf,
3. Relasi dan Fungsi,
4. Teori Bahasa Formal,
5. Barisan dan Urutan.

Teori bahasa membicarakan bahasa formal, terutama untuk kepentingan


perancangan kompilator dan pemroses naskah. Sebuah bahasa formal adalah suatu
abstraksi terdiri dari himpunan simbol-simbol dan aturan-aturan yang mana simbol-
simbol tersebut dapat dikombinasikan ke dalam entitas yang disebut kalimat.

 Alfabet Σ adalah himpunan hingga dari simbol-simbol.


Contoh : Σ1 = {0, 1}
Σ2 = {a, b, c}
 String adalah deretan simbol-simbol atau alfabet Σ
String alfabet Σ1 : 𝑥1 = 01010111
String alfabet Σ2 : 𝑥2 = ababc
Panjang string 𝑥1 dan 𝑥2 dinyatakan sebagai |𝑥1 | = 8 dan |𝑥2 | = 5.
String hampa adalah sebuah string dengan nol buah simbol. Dinyatakan dengan
simbol ε sehingga |ε| = 0.

Dalam operasi dasar string, dikenal istilah Konkatenasi. Konkatenasi merupakan


penyambungan dua buah string. Sebagai contoh dapat dilihat dibawah ini

𝑥 = 010, 𝑦 = 101 𝑥𝑛 = ⏟
𝑥𝑥𝑥 … 𝑥
𝑛
𝑥 ∙ 𝑦 = 𝑥𝑦 = 010101
𝑥∗ = ⏟
𝑥𝑥𝑥 … 𝑥 ,k ≥ 0 (star-closure)
𝑦 ∙ 𝑥 = 𝑦𝑥 = 101010 𝑘

𝑥 2 = 𝑥 ∙ 𝑥 = 𝑥𝑥 = 010010 𝑥+ = ⏟
𝑥𝑥𝑥 … 𝑥 ,k > 0
𝑘

Bahasa L atau Σ, L(Σ) adalah himpunan string-string atau Σ (definisi informal).


Σ = {0, 1}
L1(Σ) = {00, 01, 10, 11}

= {𝑥 ∈ 𝛴 ∗ | |𝑥| = 2}
L2(Σ) = {0, 00, 000, ...}

= {0𝑛 , 𝑛 > 1} = {0+ }


dst.