![Page 1: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/1.jpg)
Costas Busch - LSU 1
Languages
![Page 2: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/2.jpg)
Costas Busch - LSU 2
Language: a set of strings
String: a sequence of symbols
from some alphabet
Example: Strings: cat, dog, house Language: {cat, dog, house}
zcba ,,,, Alphabet:
![Page 3: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/3.jpg)
Costas Busch - LSU 3
Languages are used to describe computation problems:
},17,13,11,7,5,3,2{ PRIMES
},6,4,2,0{ EVEN
}9,,2,1,0{ Alphabet:
![Page 4: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/4.jpg)
Costas Busch - LSU 4
Computation is translated to set membership
Is number prime?x
}?,17,13,11,7,5,3,2{ PRIMESx
Example computation problem:
Equivalent set membership problem:
![Page 5: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/5.jpg)
Costas Busch - LSU 5
Alphabets and Strings
abbaw
bbbaaav
abu
ba,
baaabbbaaba
abba
ab
a
Example Strings
Example Alphabet:
An alphabet is a set of symbols
A string is a sequence of symbols from the alphabet
String variables
![Page 6: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/6.jpg)
Costas Busch - LSU 6
}9,,2,1,0{ Decimal numbers alphabet
102345 567463386
}1,0{Binary numbers alphabet
100010001 101101111
![Page 7: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/7.jpg)
Costas Busch - LSU 7
}1{Unary numbers alphabet
1Unary number:
Decimal number:1
11
2
111
3
1111
4
11111
5
![Page 8: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/8.jpg)
Costas Busch - LSU 8
String Operations
m
n
bbbv
aaaw
21
21
bbbaaa
abba
mn bbbaaawv 2121
Concatenation
abbabbbaaa
![Page 9: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/9.jpg)
Costas Busch - LSU 9
12aaaw nR
naaaw 21 ababaaabbb
Reverse
bbbaaababa
![Page 10: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/10.jpg)
Costas Busch - LSU 10
String Length
Length:
Examples:
naaaw 21
nw
1
2
4
a
aa
abba
![Page 11: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/11.jpg)
Costas Busch - LSU 11
Length of Concatenation
Example:
vuuv
853
8
5,
3,
vuuv
aababaabuv
vabaabv
uaabu
![Page 12: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/12.jpg)
Costas Busch - LSU 12
A string with no letters is denoted:
Acts as a neutral elementObservations:
Empty String
or
abbabaababbaabba
www
0
![Page 13: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/13.jpg)
Costas Busch - LSU 13
SubstringSubstring of string:
a subsequence of consecutive characters
String Substring
bbab
b
abba
ab
abbab
abbab
abbab
abbab
![Page 14: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/14.jpg)
Costas Busch - LSU 14
Prefix and Suffix
Prefixes Suffixesabbab
abbab
abba
abb
ab
a
b
ab
bab
bbab
abbab uvw
prefix
suffix
string
![Page 15: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/15.jpg)
Costas Busch - LSU 15
Exponent Operation
Example:
Definition:
n
n wwww
abbaabbaabba 2
0w
0abba
![Page 16: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/16.jpg)
Costas Busch - LSU 16
The * Operation : the set of all possible strings from alphabet
*
,,,,,,,,,
,* aabaaabbbaabaaba
ba
![Page 17: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/17.jpg)
Costas Busch - LSU 17
The + Operation
: the set of all possible strings from alphabet except
,,,,,,,,,
,* aabaaabbbaabaaba
ba
*
,,,,,,,, aabaaabbbaabaaba
![Page 18: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/18.jpg)
Costas Busch - LSU 18
LanguagesA language over alphabet is any subset of *
,,,,,,,,
,* aaabbbaabaaba
ba
},,,,,{
,,
{}
aaaaaaabaababaabba
aabaaa
Languages:
Example:
![Page 19: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/19.jpg)
Costas Busch - LSU 19
More Language Examples
An infinite language }0:{ nbaL nn
aaaaabbbbb
aabb
ab
LLabb
},{ baAlphabet
Lbbabb
![Page 20: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/20.jpg)
Costas Busch - LSU 20
prime} is and :{ * xxxPRIMES
}9,,2,1,0{
},17,13,11,7,5,3,2{ PRIMES
Prime numbers
Alphabet
Language:
Numbers divisible by 1 and itself
![Page 21: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/21.jpg)
Costas Busch - LSU 21
even} is and :{ * xxxEVEN
}9,,2,1,0{
Even and odd numbers
Alphabet
odd} is and :{ * xxxODD
},6,4,2,0{ EVEN
},7,5,3,1{ ODD
Languages:
![Page 22: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/22.jpg)
Costas Busch - LSU 22
Addition (of unary numbers)
},,1{
}1,1,n
,1z,1y,1 x:{ mn
mnkm
zyxADDITION k
ADDITION 1111111111
ADDITION 111111111
Alphabet:
Language:
}111111111111111111111111{ ...,,,,ADDITION
![Page 23: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/23.jpg)
Costas Busch - LSU 23
Squares (of unary numbers)
}#,1{
}11{ 2nm,,y: xx#ySQUARES mn
SQUARES# 111111
SQUARES# 1111111
Alphabet:
Language:
}11111111111111111111{ , ...#,#,#SQUARES
![Page 24: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/24.jpg)
Costas Busch - LSU 24
5|},,,,{|
3|,,|
1||
0|{}|
babaabbabbaa
abaaa
Two special languages
Size of a language (number of elements):
or }{ }{Empty language
Language with empty string
![Page 25: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/25.jpg)
Costas Busch - LSU 25
Note that:
}{}{
0}{
1}{
0
Sets
Set size
Set size
String length
![Page 26: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/26.jpg)
Costas Busch - LSU 26
Operations on LanguagesThe usual set operations:
difference ,,,,
onintersecti }{,,,
union },,,{,,,
aaaaaabbbaaaaaba
ababbbaaaaaba
aaaabbabaabbbaaaaaba
LL *
,,,,,,, aaabbabaabbaa
Complement:
![Page 27: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/27.jpg)
Costas Busch - LSU 27
Reverse
Definition:
Examples:
}:{ LwwL RR
ababbaabababaaabab R ,,,,
}0:{
}0:{
nabL
nbaL
nnR
nn
![Page 28: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/28.jpg)
Costas Busch - LSU 28
Concatenation
Definition:
Example:
2121 ,: LyLxxyLL
baaabababaaabbaaaab
aabbaaba
,,,,,
,,,
![Page 29: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/29.jpg)
Costas Busch - LSU 29
Another OperationDefinition:
Special case:
n
n LLLL
bbbbbababbaaabbabaaabaaa
babababa
,,,,,,,
,,,, 3
0
0
,, aaabbaa
L
![Page 30: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/30.jpg)
Costas Busch - LSU 30
}0:{ nbaL nn
}0,:{2 mnbabaL mmnn
2Laabbaaabbb
Example
![Page 31: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/31.jpg)
Costas Busch - LSU 31
Star-Closure (Kleene *)All strings that can be constructed from
Definition:
Example:
210* LLLL
,,,,
,,,,
,,
,
*,
abbbbabbaaabbaaa
bbbbbbaabbaa
bbabba
L
0L1L2L3L
![Page 32: Costas Busch - LSU1 Languages. Costas Busch - LSU2 Language: a set of strings String: a sequence of symbols from some alphabet Example: Strings: cat,](https://reader036.vdocument.in/reader036/viewer/2022062408/56649f2a5503460f94c43600/html5/thumbnails/32.jpg)
Costas Busch - LSU 32
Positive Closure
Definition: 321 LLLL
,,,,
,,,,
,,
,
abbbbabbaaabbaaa
bbbbbbaabbaa
bba
bba
1L2L3L
Note that: LLL 0*