+ All Categories
Home > Documents > Languages

Languages

Date post: 10-Jan-2016
Category:
Upload: aquarius
View: 29 times
Download: 0 times
Share this document with a friend
Description:
Languages. Languages. A language is a set of strings String: A sequence of letters Examples: “cat”, “dog”, “house”, … Defined over an alphabet:. Alphabets and Strings. We will use small alphabets: Strings. String Operations. Concatenation. Reverse. String Length. - PowerPoint PPT Presentation
78
1 Languages
Transcript
Page 1: Languages

1

Languages

Page 2: Languages

2

A language is a set of strings

String: A sequence of letters

Examples: “cat”, “dog”, “house”, …

Defined over an alphabet:

Languages

zcba ,,,,

Page 3: Languages

3

Alphabets and StringsWe will use small alphabets:

Strings

abbaw

bbbaaav

abu

ba,

baaabbbaaba

baba

abba

ab

a

Page 4: Languages

4

String Operations

m

n

bbbv

aaaw

21

21

bbbaaa

abba

mn bbbaaawv 2121

Concatenation

abbabbbaaa

Page 5: Languages

5

12aaaw nR

naaaw 21 ababaaabbb

Reverse

bbbaaababa

Page 6: Languages

6

String Length

Length:

Examples:

naaaw 21

nw

1

2

4

a

aa

abba

Page 7: Languages

7

Recursive Definition of LengthFor any letter:

For any string :

Example:

1a

1wwawa

4

1111

111

11

1

a

ab

abbabba

Page 8: Languages

8

Length of Concatenation

Example:

vuuv

853

8

5,

3,

vuuv

aababaabuv

vabaabv

uaabu

Page 9: Languages

9

Proof of Concatenation LengthClaim:

Proof: By induction on the length

Induction basis:

From definition of length:

vuuv

v

1v

vuuuv 1

Page 10: Languages

10

Inductive hypothesis:

for

Inductive step: we will prove

for

vuuv

nv ,,2,1

1nv

vuuv

Page 11: Languages

11

Inductive StepWrite , where

From definition of length:

From inductive hypothesis:

Thus:

wav 1, anw

1

1

wwa

uwuwauv

wuuw

vuwauwuuv 1

Page 12: Languages

12

Empty StringA string with no letters:

Observations:

abbaabbaabba

www

0

Page 13: Languages

13

SubstringSubstring of string:

a subsequence of consecutive characters

String Substring

bbab

b

abba

ab

abbab

abbab

abbab

abbab

Page 14: Languages

14

Prefix and Suffix

Prefixes Suffixesabbab

abbab

abba

abb

ab

a

b

ab

bab

bbab

abbab uvw

prefix

suffix

Page 15: Languages

15

Another Operation

Example:

Definition:

n

n wwww

abbaabbaabba 2

0w

0abba

Page 16: Languages

16

The * Operation : the set of all possible strings from alphabet

*

,,,,,,,,,*

,

aabaaabbbaabaaba

ba

Page 17: Languages

17

The + Operation : the set of all possible strings from alphabet except

,,,,,,,,,*

,

aabaaabbbaabaaba

ba

*

,,,,,,,, aabaaabbbaabaaba

Page 18: Languages

18

LanguageA language is any subset of

Example:

Languages:

*

,,,,,,,,*

,

aaabbbaabaaba

ba

},,,,,{

,,

aaaaaaabaababaabba

aabaaa

Page 19: Languages

19

Another Example

An infinite language }0:{ nbaL nn

aaaaabbbbb

aabb

ab

L Labb

Page 20: Languages

20

Operations on LanguagesThe usual set operations

Complement:

aaaaaabbbaaaaaba

ababbbaaaaaba

aaaabbabaabbbaaaaaba

,,,,

}{,,,

},,,{,,,

LL *

,,,,,,, aaabbabaabbaa

Page 21: Languages

21

Reverse

Definition:

Examples:

}:{ LwwL RR

ababbaabababaaabab R ,,,,

}0:{

}0:{

nabL

nbaL

nnR

nn

Page 22: Languages

22

Concatenation

Definition:

Example:

2121 ,: LyLxxyLL

baaabababaaabbaaaab

aabbaaba

,,,,,

,,,

Page 23: Languages

23

Another OperationDefinition:

Special case:

n

n LLLL

bbbbbababbaaabbabaaabaaa

babababa

,,,,,,,

,,,, 3

0

0

,, aaabbaa

L

Page 24: Languages

24

More Examples

}0:{ nbaL nn

}0,:{2 mnbabaL mmnn

2Laabbaaabbb

Page 25: Languages

25

Star-Closure (Kleene *)

Definition:

Example:

210* LLLL

,,,,

,,,,

,,

,

*,

abbbbabbaaabbaaa

bbbbbbaabbaa

bbabba

Page 26: Languages

26

Positive Closure

Definition:

*

21

L

LLL

,,,,

,,,,

,,

,

abbbbabbaaabbaaa

bbbbbbaabbaa

bba

bba

Page 27: Languages

27

Finite Automata

Page 28: Languages

28

Finite Automaton

Input

String

Output

String

FiniteAutomaton

Page 29: Languages

29

Finite Accepter

Input

“Accept” or“Reject”

String

FiniteAutomaton

Output

Page 30: Languages

30

Transition Graph

initialstate

final state“accept”state

transition

Abba -Finite Accepter

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

Page 31: Languages

31

Initial Configuration

1q 2q 3q 4qa b b a

5q

a a bb

ba,

Input Stringa b b a

ba,

0q

Page 32: Languages

32

Reading the Input

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

a b b a

ba,

Page 33: Languages

33

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

a b b a

ba,

Page 34: Languages

34

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

a b b a

ba,

Page 35: Languages

35

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

a b b a

ba,

Page 36: Languages

36

0q 1q 2q 3q 4qa b b a

Output: “accept”

5q

a a bb

ba,

a b b a

ba,

Input finished

Page 37: Languages

37

Rejection

1q 2q 3q 4qa b b a

5q

a a bb

ba,

a b a

ba,

0q

Page 38: Languages

38

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

a b a

ba,

Page 39: Languages

39

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

a b a

ba,

Page 40: Languages

40

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

a b a

ba,

Page 41: Languages

41

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

Output:“reject”

a b a

ba,

Input finished

Page 42: Languages

42

Another Example

a

b ba,

ba,

0q 1q 2q

a ba

Page 43: Languages

43

a

b ba,

ba,

0q 1q 2q

a ba

Page 44: Languages

44

a

b ba,

ba,

0q 1q 2q

a ba

Page 45: Languages

45

a

b ba,

ba,

0q 1q 2q

a ba

Page 46: Languages

46

a

b ba,

ba,

0q 1q 2q

a ba

Output: “accept”

Input finished

Page 47: Languages

47

Rejection

a

b ba,

ba,

0q 1q 2q

ab b

Page 48: Languages

48

a

b ba,

ba,

0q 1q 2q

ab b

Page 49: Languages

49

a

b ba,

ba,

0q 1q 2q

ab b

Page 50: Languages

50

a

b ba,

ba,

0q 1q 2q

ab b

Page 51: Languages

51

a

b ba,

ba,

0q 1q 2q

ab b

Output: “reject”

Input finished

Page 52: Languages

52

FormalitiesDeterministic Finite Accepter (DFA)

FqQM ,,,, 0

Q

0q

F

: set of states

: input alphabet

: transition function

: initial state

: set of final states

Page 53: Languages

53

Input Alphabet

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

ba,

Page 54: Languages

54

Set of States

Q

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

543210 ,,,,, qqqqqqQ

ba,

Page 55: Languages

55

Initial State

0q

1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

0q

Page 56: Languages

56

Set of Final States

F

0q 1q 2q 3qa b b a

5q

a a bb

ba,

4qF

ba,

4q

Page 57: Languages

57

Transition Function

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

QQ :

ba,

Page 58: Languages

58

10 , qaq

2q 3q 4qa b b a

5q

a a bb

ba,

ba,

0q 1q

Page 59: Languages

59

50 , qbq

1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

0q

Page 60: Languages

60

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

32 , qbq

Page 61: Languages

61

Transition Function

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

a b

0q

1q

2q

3q

4q

5q

1q 5q

5q 2q

2q 3q

4q 5q

ba,5q5q5q5q

Page 62: Languages

62

Extended Transition Function

*

QQ *:*

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

Page 63: Languages

63

20 ,* qabq

3q 4qa b b a

5q

a a bb

ba,

ba,

0q 1q 2q

Page 64: Languages

64

40 ,* qabbaq

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

Page 65: Languages

65

50 ,* qabbbaaq

1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

0q

Page 66: Languages

66

50 ,* qabbbaaq

1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

0q

Observation: There is a walk from to with label

0qabbbaa

1q

Page 67: Languages

67

Recursive Definition

)),,(*(,*

,*

awqwaq

qq

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

Page 68: Languages

68

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

2

1

0

0

0

0

,

,,

,,,*

),,(*

,*

q

bq

baq

baq

baq

abq

Page 69: Languages

69

Languages Accepted by DFAsTake DFA

Definition:The language contains all input strings accepted by

= { strings that drive to a final state}

M

MLM

M ML

Page 70: Languages

70

Example

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

abbaML M

accept

Page 71: Languages

71

Another Example

0q 1q 2q 3q 4qa b b a

5q

a a bb

ba,

ba,

abbaabML ,, M

acceptacceptaccept

Page 72: Languages

72

Formally

For a DFA

Language accepted by :

FqQM ,,,, 0

M

FwqwML ,*:* 0

alphabet transitionfunction

initialstate

finalstates

Page 73: Languages

73

Observation Language accepted by :

Language rejected by :

FwqwML ,*:* 0

M

FwqwML ,*:* 0

M

Page 74: Languages

74

More Examples

a

b ba,

ba,

0q 1q 2q

}0:{ nbaML n

accept trap state

Page 75: Languages

75

ML = { all substrings with prefix }ab

a b

ba,

0q 1q 2q

accept

ba,3q

ab

Page 76: Languages

76

ML = { all strings without substring }001

0 00 001

1

0

1

10

0 1,0

Page 77: Languages

77

Regular Languages

A language is regular if there is a DFA such that

All regular languages form a language family

LM MLL

Page 78: Languages

78

ExampleThe languageis regular:

*,: bawawaL

a

b

ba,

a

b

ba

0q 2q 3q

4q


Recommended