34
1 Pertemuan 1 Teori Bahasa dan Automata Matakuliah : T0162/Teori Bahasa dan Automata Tahun : 2011

Pertemuan 1 Teori Bahasa dan Automata

Embed Size (px)

DESCRIPTION

Pertemuan 1 Teori Bahasa dan Automata. Matakuliah: T0162/Teori Bahasa dan Automata Tahun: 20 11. Profile. Bpk. Widodo Budiharto D2637 [email protected] HP :081410043883 Books : Hopcroft dkk, Introduction to Automata Theory, Languages and Computation, Addison –Wesley, 2001 2 Quiz - PowerPoint PPT Presentation

Citation preview

Page 1: Pertemuan 1 Teori Bahasa dan Automata

1

Pertemuan 1Teori Bahasa dan Automata

Matakuliah : T0162/Teori Bahasa dan Automata

Tahun : 2011

Page 2: Pertemuan 1 Teori Bahasa dan Automata

Profile

• Bpk. Widodo Budiharto D2637

[email protected]

HP :081410043883

Books :Hopcroft dkk, Introduction to Automata Theory, Languages and Computation,

Addison –Wesley, 2001

2 Quiz

3 Tugas Mandiri (kelompok)

1 Tugas Akhir (paper/demo program kelompok di pertemuan 13)

2

Page 3: Pertemuan 1 Teori Bahasa dan Automata

3

Learning Outcomes

Pada akhir pertemuan ini, diharapkan mahasiswa

akan mampu :• Mengenal arti penting dari konsep bahasa dan

Automata• Automata dan kompleksitas• Regular Expression

Page 4: Pertemuan 1 Teori Bahasa dan Automata

Why Study Automata Theory?

Automata theory is the study of abstract computing devices or “machines”

Automata dapat digunakan sebagai model untuk:• Lexical analyser pada compiler• Pencarian kata kunci dalam satu file atau pada

halaman web• Software untuk pemeriksaan finite state system,

seperti communication protocol• Software untuk mendesain digital circuits.

4

Page 5: Pertemuan 1 Teori Bahasa dan Automata

Contoh finite automaton

5

Page 6: Pertemuan 1 Teori Bahasa dan Automata

A finite automaton

6

Page 7: Pertemuan 1 Teori Bahasa dan Automata

Structural Representations

• Adalah cara alternatif untuk spesifikasi mesin automata.

• Grammars : Himpunan aturan produksi

Contoh : E E+E | E-E | E*E | E/E

adalah aturan untuk ekspresi aritmetika

• Regular Expression : menyatakan bentuk struktur data.

Contoh : ‘[A-Z][a-z]*’

Kata sesuai : ‘Jakarta’

Kata tidak sesuai : ‘JAKARTA’7

Page 8: Pertemuan 1 Teori Bahasa dan Automata

8

Page 9: Pertemuan 1 Teori Bahasa dan Automata

Automata and Complexity

9

Page 10: Pertemuan 1 Teori Bahasa dan Automata

10

STRING, ALPHABET dan LANGUAGE

• String : Rangkaian SymbolContoh : aa, bb, dst.

• Symbol : Huruf : a, ..., z, A, ..., Z Digit : 0 ... 9 Khusus : $, , =, (, dst

• Panjang String : |w|Jumlah simbol dalam string :

w = abc |w| = 3

Page 11: Pertemuan 1 Teori Bahasa dan Automata

11

STRING, ALPHABET dan LANGUAGE

• String Kosong : ()Tidak berisi simbol

= 0• Prefix : Bagian depan string

w = abbPrefix (w) = , a, ab, abb

• Suffix : Bagian belakang stringw = abb

Suffix (w) = , b, bb, abb

Page 12: Pertemuan 1 Teori Bahasa dan Automata

12

STRING, ALPHABET dan LANGUAGE

• Infix : Bagian tengah string

w = abb

Infix (w) = , b, a, bb, ab, abb

• Proper Prefix / Suffix :

Prefix / Suffix kecuali w sendiri

• Konkatenasi : Rangkaian dua string

“hari”,”ini” “hariini”

w = w = w

Page 13: Pertemuan 1 Teori Bahasa dan Automata

13

STRING, ALPHABET dan LANGUAGE

• Alphabet ( ) : himpunan (set) simbol

1 = { a, b, …, z }

2 = { 0, 1 }

• Language (L) : himpunan string dari

suatu alphabet

Page 14: Pertemuan 1 Teori Bahasa dan Automata

Alphabet

14

Page 15: Pertemuan 1 Teori Bahasa dan Automata

15

STRING, ALPHABET dan LANGUAGE

 Ø : Empty set

{} : language yang terdiri dari (empty) string

Jenis Language :

Finite: L1 = { a, ab, abb }

Infinite: L2 = {1,2,…}

Page 16: Pertemuan 1 Teori Bahasa dan Automata

Strings

16

Page 17: Pertemuan 1 Teori Bahasa dan Automata

17

STRING, ALPHABET dan LANGUAGE

• Konkatenasi Language : L, M : language L. M: konkatenasi L dan M

LM = { xy| x L, y M }

Contoh : L= { 0, 1, 00, 01, 10 } M = { 10, 11 }

LM = { 010, 011, 110, 11, 0010, 0011, 0110, 0111, 1010, 1011 }

Page 18: Pertemuan 1 Teori Bahasa dan Automata

18

STRING, ALPHABET dan LANGUAGE

• Union Language :

L M : Union L dan M

L M : { x x L atau x M}

Contoh : L M = { 0, 1, 00, 01, 10, 11 }

Page 19: Pertemuan 1 Teori Bahasa dan Automata

19

CLOSURE LANGUAGE

: Nol kali atau lebih ( Kleene Closure)

+ : Satu kali atau lebih ( Positive Closure)

Misal L : Suatu language

L* = L0 L1 L2 … = Li

L+ = L1 L2 … = Li

Ui0

Ui1

Page 20: Pertemuan 1 Teori Bahasa dan Automata

Dedective proof

20

• Deduksi berarti penarikan kesimpulan dari keadaan yang umum atau penemuan yang khusus dari yang umum.

• Metode deduksi akan membuktikan suatu kebenaran baru berasal dari kebenaran-kebenaran yang sudah ada dan diketahui sebelumnya (berkesinambungan ).

Page 21: Pertemuan 1 Teori Bahasa dan Automata

Deductive proof

• A deductive proof consists of a sequence of statements whose truth leads us from some initial statement, called the hypothesis or the given statement(s), to a conclusion statement

21

Page 22: Pertemuan 1 Teori Bahasa dan Automata

Deductive proof

22

Page 23: Pertemuan 1 Teori Bahasa dan Automata

23

Page 24: Pertemuan 1 Teori Bahasa dan Automata

Regular Expression

RE = Ekspresi sederhana untuk language yang diterima FA.

Misalkan suatu alphabet, RE didefinisikan secara recursive sebagai berikut :

1. : RE yang menunjukkan “Empty Set”.

2. : RE yang menunjukkan { }

24

Page 25: Pertemuan 1 Teori Bahasa dan Automata

3. Untuk setiap a ,

a : RE yang menunjukkan {a}

4. Jika r dan s adalah RE untuk language

R dan S, maka :

r + s : RE untuk R S

r . s : RE untuk RS

r* : RE untuk R*

25

Page 26: Pertemuan 1 Teori Bahasa dan Automata

Contoh

Contoh :

1. 00 : RE untuk {00}2. (0 + 1)* : RE untuk himpunan string yang terdiri dari 0 dan 13. (0 + 1)*00(0 + 1)* : meliputi :

00, 10010, 010011, …

4. (1 + 10)* : meliputi :

, 1, 11, 110, 111, …

26

Page 27: Pertemuan 1 Teori Bahasa dan Automata

5. (01)*011 : meliputi :

011, 0011, 1011, 10011, …

6. (aaabbabb)* : meliputi :

, aa, ba, aabb,…

7. (ab)(ab)(ab)(ab)* : meliputi :

aaa, abba,…

27

Page 28: Pertemuan 1 Teori Bahasa dan Automata

Sifat –Sifat RE

Misal : r, s dan t adalah RE.

1. r + s = s + r

2. (r+s) + t = r + (s+t)

3. (rs) t = r (st)

4. rs + rt = r (s+t)

5. +r = r+ = r

6. r = r = 7. r = r = r

28

Page 29: Pertemuan 1 Teori Bahasa dan Automata

8. r + r = r

9. (r*)* = r*

10. * = 11. * = 12. r? = + r (definisi dari operator ?)

13. (r*s*)* = (r+s)*

29

Page 30: Pertemuan 1 Teori Bahasa dan Automata

30

Summary

Page 31: Pertemuan 1 Teori Bahasa dan Automata

31

Page 32: Pertemuan 1 Teori Bahasa dan Automata

Pengenalan Java

• Unduh editor Netbeans dan Java Standard edition di :

http://www.oracle.com/technetwork/java/javase/downloads/index.html

32

Page 33: Pertemuan 1 Teori Bahasa dan Automata

Program java

class CobaJava {

public static void main(String args[]) {

int nilai =85;

System.out.println (“Belajar Java”);

System.out.print (“Nilai :” + nilai);

}

}

Kompilasi: javac CobaJava.java

Eksekusi : java CobaJava

33

Page 34: Pertemuan 1 Teori Bahasa dan Automata

TM 1(Kelompok) dikirim di pertemuan ke 3)

Berikan definisi dan Jelaskan mengenai:

• Machine turing

• Teori Automata

• Deductive proof

• Inductive proof

• Alphabet, strings, languages

• Contoh DFA dan NFA

34