SlideShare uma empresa Scribd logo
1 de 33
Chapter One
Alphabets , Strings, Languages and
Grammars
Prepared By Haftom B.1
Prepared By Haftom B.2
Alphabets and Strings
A common way to talk about words, number, pairs of
words, etc. is by representing them as strings
To define strings, we start with an alphabet
Examples
An alphabet is a finite set of symbols.
S1 = {a, b, c, d, …, z}: the set of letters in English
S2 = {0, 1, …, 9}: the set of (base 10) digits
S3 = {a, b, …, z, #}: the set of letters plus the
special symbol #
S4 = {(, )}: the set of open and closed brackets
Prepared By Haftom B.3
Strings
The empty string will be denoted by E
Examples
A string over alphabet S is a finite sequence of symbols in S.
abfbz is a string over S1 = {a, b, c, d, …, z}
9021 is a string over S2 = {0, 1, …, 9}
ab#bc is a string over S3 = {a, b, …, z, #}
))()(() is a string over S4 = {(, )}
Prepared By Haftom B.4
Cont.…
We will use small alphabets:
Strings
5
abbaw
bbbaaav
abu



 ba,
baaabbbaaba
baba
abba
ab
a
Prepared By Haftom B.
String Operations
6
m
n
bbbv
aaaw


21
21


bbbaaa
abba
mn bbbaaawv  2121
1. Concatenation
abbabbbaaa
Prepared By Haftom B.
7
12aaaw n
R

naaaw 21 ababaaabbb
2. Reverse
bbbaaababa
Prepared By Haftom B.
3. String Length
Length:
Examples:
8
naaaw 21
nw 
1
2
4



a
aa
abba
Prepared By Haftom B.
Recursive Definition of Length
For any letter:
For any string :
Example:
9
1a
1 wwawa
4
1111
111
11
1





a
ab
abbabba
Prepared By Haftom B.
4. Length of Concatenation
 Example:
10
vuuv 
853
8
5,
3,




vuuv
aababaabuv
vabaabv
uaabu
Prepared By Haftom B.
Proof of Concatenation Length
• Claim:
• Proof: By induction on the length
• Induction basis:
• From definition of length:
11
vuuv 
v
1v
vuuuv  1
Prepared By Haftom B.
Empty String
 A string with no letters:
 Observations:
12

abbaabbaabba
www





 0
Prepared By Haftom B.
Substring
Substring of string:
a subsequence of consecutive characters
String Substring
13
bbab
b
abba
ab
abbab
abbab
abbab
abbab
Prepared By Haftom B.
Prefix and Suffix
 Given string
 Prefixes Suffixes
14
abbab
abbab
abba
abb
ab
a


b
ab
bab
bbab
abbab uvw 
prefix
suffix
Prepared By Haftom B.
Another Operation
• Example:
• Definition:
•
15
 
n
n
wwww 
  abbaabbaabba 2
0
w
  0
abba
Prepared By Haftom B.
The * Operation
• : the set of all possible strings from alphabet
16
* 
 
 ,,,,,,,,,*
,
aabaaabbbaabaaba
ba


Prepared By Haftom B.
17
The + Operation
: the set of all possible strings from
alphabet except



 
 ,,,,,,,,,*
,
aabaaabbbaabaaba
ba



*
 ,,,,,,,, aabaaabbbaabaaba

Prepared By Haftom B.
1.2 Languages
 Languages can be used to describe problems with
“yes/no” answers, for example:
A language is a set of strings over an alphabet.
L1 = The set of all strings over S1 that contain
the substring “fool”
L2 = The set of all strings over S2 that are divisible by 7
= {7, 14, 21, …}
L3 = The set of all strings of the form s#s where s is any
string over {a, b, …, z}
L4 = The set of all strings over S4 where every ( can be
matched with a subsequent )
Prepared By Haftom B.18
Cont.…
 A language is any subset of
 Example 1:
 Languages:
19
*
 
 ,,,,,,,,*
,
aaabbbaabaaba
ba


 
 
},,,,,{
,,
aaaaaaabaababaabba
aabaaa


Prepared By Haftom B.
Example 2
 An infinite language
 is aabbaa ?
20
}0:{  nbaL nn
aaaaabbbbb
aabb
ab

L Labb
L
Prepared By Haftom B.
21
Note that:
}{}{ 
0}{ 
1}{ 
0
Sets
Set size
Set size
String length
Prepared By Haftom B.
1.2.1 Operations on Languages
• The usual set operations
• Complement:
22
   
   
     aaaaaabbbaaaaaba
ababbbaaaaaba
aaaabbabaabbbaaaaaba
,,,,
}{,,,
},,,{,,,





LL  *
   ,,,,,,, aaabbabaabbaa 
Prepared By Haftom B.
Reverse
 Definition:
 Examples:
23
}:{ LwwL RR

   ababbaabababaaabab R
,,,, 
}0:{
}0:{


nabL
nbaL
nnR
nn
Prepared By Haftom B.
Concatenation
 Definition:
 Example:
24
 2121 ,: LyLxxyLL 
  
 baaabababaaabbaaaab
aabbaaba
,,,,,
,,,

Prepared By Haftom B.
Another Operation
Definition:
Special case:
25
 
n
n
LLLL 
       bbbbbababbaaabbabaaabaaababababa ,,,,,,,,,,,
3

 
   



0
0
,, aaabbaa
L
Prepared By Haftom B.
More Examples
26
}0:{  nbaL nn
}0,:{2
 mnbabaL mmnn
2
Laabbaaabbb
Prepared By Haftom B.
Star-Closure (Kleene *)
• Definition:
• Example:
•
27
 210
* LLLL 
 















,,,,
,,,,
,,
,
*,
abbbbabbaaabbaaa
bbbbbbaabbaa
bba
bba

Prepared By Haftom B.
Positive Closure
 Definition:
28
 

*
21
L
LLL 
 











,,,,
,,,,
,,
,
abbbbabbaaabbaaa
bbbbbbaabbaa
bba
bba
Prepared By Haftom B.
Grammar
Prepared By Haftom B.29
A grammar is a mechanism used for describing
languages. This is one of the most simple but yet
powerful mechanism.
The grammar for English tells us what are the
words in it and the rules to construct sentences.
Formal definitions of a Grammar
Prepared By Haftom B.30
A grammar G is defined as a quadruple
Example
Prepared By Haftom B.31
Consider the grammar , where N = {S}, ={a, b} and P is
the set of the following production rules .
Some terminal strings are generated by this grammar together
with their derivation is given below
Cont..
Prepared By Haftom B.32
Cont.…
Prepared By Haftom B.33
 Example: Find a grammar for the language
It is possible to find a grammar for L by modifying the previous
grammar since we need to generate an extra b at the
end of the string .
We can do this by adding a production S Bb
where the non-terminal B generates

Mais conteúdo relacionado

Mais procurados

Formal Languages and Automata Theory Unit 1
Formal Languages and Automata Theory Unit 1Formal Languages and Automata Theory Unit 1
Formal Languages and Automata Theory Unit 1
Srimatre K
 
Theory of computing
Theory of computingTheory of computing
Theory of computing
Ranjan Kumar
 

Mais procurados (20)

Theory of Computation Grammar Concepts and Problems
Theory of Computation Grammar Concepts and ProblemsTheory of Computation Grammar Concepts and Problems
Theory of Computation Grammar Concepts and Problems
 
Lecture 8
Lecture 8Lecture 8
Lecture 8
 
Intro automata theory
Intro automata theory Intro automata theory
Intro automata theory
 
Context free grammar
Context free grammar Context free grammar
Context free grammar
 
Automata theory - CFG and normal forms
Automata theory - CFG and normal formsAutomata theory - CFG and normal forms
Automata theory - CFG and normal forms
 
Turing machine-TOC
Turing machine-TOCTuring machine-TOC
Turing machine-TOC
 
pushdown automata
pushdown automatapushdown automata
pushdown automata
 
Turing machines
Turing machinesTuring machines
Turing machines
 
Cs2303 theory of computation all anna University question papers
Cs2303 theory of computation all anna University question papersCs2303 theory of computation all anna University question papers
Cs2303 theory of computation all anna University question papers
 
Lecture 3,4
Lecture 3,4Lecture 3,4
Lecture 3,4
 
Kmp
KmpKmp
Kmp
 
Automata
AutomataAutomata
Automata
 
Formal Languages and Automata Theory Unit 1
Formal Languages and Automata Theory Unit 1Formal Languages and Automata Theory Unit 1
Formal Languages and Automata Theory Unit 1
 
Push down automata
Push down automataPush down automata
Push down automata
 
Hashing in datastructure
Hashing in datastructureHashing in datastructure
Hashing in datastructure
 
Design and Analysis of Algorithms.pptx
Design and Analysis of Algorithms.pptxDesign and Analysis of Algorithms.pptx
Design and Analysis of Algorithms.pptx
 
Finite automata
Finite automataFinite automata
Finite automata
 
Theory of computing
Theory of computingTheory of computing
Theory of computing
 
Automata theory - Push Down Automata (PDA)
Automata theory - Push Down Automata (PDA)Automata theory - Push Down Automata (PDA)
Automata theory - Push Down Automata (PDA)
 
Counting Sort and Radix Sort Algorithms
Counting Sort and Radix Sort AlgorithmsCounting Sort and Radix Sort Algorithms
Counting Sort and Radix Sort Algorithms
 

Semelhante a Alphabets , strings, languages and grammars

Semelhante a Alphabets , strings, languages and grammars (19)

Theory of Automata ___ Basis ...........
Theory of Automata ___ Basis ...........Theory of Automata ___ Basis ...........
Theory of Automata ___ Basis ...........
 
Theory of Automata
Theory of AutomataTheory of Automata
Theory of Automata
 
Lesson-01-29092022-081117pm.ppt
Lesson-01-29092022-081117pm.pptLesson-01-29092022-081117pm.ppt
Lesson-01-29092022-081117pm.ppt
 
Language
LanguageLanguage
Language
 
Theory of Automata Lesson 01
 Theory of Automata Lesson 01  Theory of Automata Lesson 01
Theory of Automata Lesson 01
 
Lesson 03
Lesson 03Lesson 03
Lesson 03
 
Lesson 03
Lesson 03Lesson 03
Lesson 03
 
Lesson 01.ppt
Lesson 01.pptLesson 01.ppt
Lesson 01.ppt
 
Mod 2_RegularExpressions.pptx
Mod 2_RegularExpressions.pptxMod 2_RegularExpressions.pptx
Mod 2_RegularExpressions.pptx
 
Class7
 Class7 Class7
Class7
 
Compilers midterm spring 2013 model answer
Compilers midterm spring 2013   model answerCompilers midterm spring 2013   model answer
Compilers midterm spring 2013 model answer
 
Introduction to Automata Theory
Introduction to Automata TheoryIntroduction to Automata Theory
Introduction to Automata Theory
 
Theory of Automata Lesson 02
Theory of Automata Lesson 02Theory of Automata Lesson 02
Theory of Automata Lesson 02
 
L_2_apl.pptx
L_2_apl.pptxL_2_apl.pptx
L_2_apl.pptx
 
Lesson 02
Lesson 02Lesson 02
Lesson 02
 
Lesson 02
Lesson 02Lesson 02
Lesson 02
 
Grammar
GrammarGrammar
Grammar
 
Lex analysis
Lex analysisLex analysis
Lex analysis
 
Lesson 04
Lesson 04Lesson 04
Lesson 04
 

Último

1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 

Último (20)

1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 

Alphabets , strings, languages and grammars

  • 1. Chapter One Alphabets , Strings, Languages and Grammars Prepared By Haftom B.1
  • 3. Alphabets and Strings A common way to talk about words, number, pairs of words, etc. is by representing them as strings To define strings, we start with an alphabet Examples An alphabet is a finite set of symbols. S1 = {a, b, c, d, …, z}: the set of letters in English S2 = {0, 1, …, 9}: the set of (base 10) digits S3 = {a, b, …, z, #}: the set of letters plus the special symbol # S4 = {(, )}: the set of open and closed brackets Prepared By Haftom B.3
  • 4. Strings The empty string will be denoted by E Examples A string over alphabet S is a finite sequence of symbols in S. abfbz is a string over S1 = {a, b, c, d, …, z} 9021 is a string over S2 = {0, 1, …, 9} ab#bc is a string over S3 = {a, b, …, z, #} ))()(() is a string over S4 = {(, )} Prepared By Haftom B.4
  • 5. Cont.… We will use small alphabets: Strings 5 abbaw bbbaaav abu     ba, baaabbbaaba baba abba ab a Prepared By Haftom B.
  • 6. String Operations 6 m n bbbv aaaw   21 21   bbbaaa abba mn bbbaaawv  2121 1. Concatenation abbabbbaaa Prepared By Haftom B.
  • 7. 7 12aaaw n R  naaaw 21 ababaaabbb 2. Reverse bbbaaababa Prepared By Haftom B.
  • 8. 3. String Length Length: Examples: 8 naaaw 21 nw  1 2 4    a aa abba Prepared By Haftom B.
  • 9. Recursive Definition of Length For any letter: For any string : Example: 9 1a 1 wwawa 4 1111 111 11 1      a ab abbabba Prepared By Haftom B.
  • 10. 4. Length of Concatenation  Example: 10 vuuv  853 8 5, 3,     vuuv aababaabuv vabaabv uaabu Prepared By Haftom B.
  • 11. Proof of Concatenation Length • Claim: • Proof: By induction on the length • Induction basis: • From definition of length: 11 vuuv  v 1v vuuuv  1 Prepared By Haftom B.
  • 12. Empty String  A string with no letters:  Observations: 12  abbaabbaabba www       0 Prepared By Haftom B.
  • 13. Substring Substring of string: a subsequence of consecutive characters String Substring 13 bbab b abba ab abbab abbab abbab abbab Prepared By Haftom B.
  • 14. Prefix and Suffix  Given string  Prefixes Suffixes 14 abbab abbab abba abb ab a   b ab bab bbab abbab uvw  prefix suffix Prepared By Haftom B.
  • 15. Another Operation • Example: • Definition: • 15   n n wwww    abbaabbaabba 2 0 w   0 abba Prepared By Haftom B.
  • 16. The * Operation • : the set of all possible strings from alphabet 16 *     ,,,,,,,,,* , aabaaabbbaabaaba ba   Prepared By Haftom B.
  • 17. 17 The + Operation : the set of all possible strings from alphabet except       ,,,,,,,,,* , aabaaabbbaabaaba ba    *  ,,,,,,,, aabaaabbbaabaaba  Prepared By Haftom B.
  • 18. 1.2 Languages  Languages can be used to describe problems with “yes/no” answers, for example: A language is a set of strings over an alphabet. L1 = The set of all strings over S1 that contain the substring “fool” L2 = The set of all strings over S2 that are divisible by 7 = {7, 14, 21, …} L3 = The set of all strings of the form s#s where s is any string over {a, b, …, z} L4 = The set of all strings over S4 where every ( can be matched with a subsequent ) Prepared By Haftom B.18
  • 19. Cont.…  A language is any subset of  Example 1:  Languages: 19 *    ,,,,,,,,* , aaabbbaabaaba ba       },,,,,{ ,, aaaaaaabaababaabba aabaaa   Prepared By Haftom B.
  • 20. Example 2  An infinite language  is aabbaa ? 20 }0:{  nbaL nn aaaaabbbbb aabb ab  L Labb L Prepared By Haftom B.
  • 21. 21 Note that: }{}{  0}{  1}{  0 Sets Set size Set size String length Prepared By Haftom B.
  • 22. 1.2.1 Operations on Languages • The usual set operations • Complement: 22              aaaaaabbbaaaaaba ababbbaaaaaba aaaabbabaabbbaaaaaba ,,,, }{,,, },,,{,,,      LL  *    ,,,,,,, aaabbabaabbaa  Prepared By Haftom B.
  • 23. Reverse  Definition:  Examples: 23 }:{ LwwL RR     ababbaabababaaabab R ,,,,  }0:{ }0:{   nabL nbaL nnR nn Prepared By Haftom B.
  • 24. Concatenation  Definition:  Example: 24  2121 ,: LyLxxyLL      baaabababaaabbaaaab aabbaaba ,,,,, ,,,  Prepared By Haftom B.
  • 25. Another Operation Definition: Special case: 25   n n LLLL         bbbbbababbaaabbabaaabaaababababa ,,,,,,,,,,, 3           0 0 ,, aaabbaa L Prepared By Haftom B.
  • 26. More Examples 26 }0:{  nbaL nn }0,:{2  mnbabaL mmnn 2 Laabbaaabbb Prepared By Haftom B.
  • 27. Star-Closure (Kleene *) • Definition: • Example: • 27  210 * LLLL                   ,,,, ,,,, ,, , *, abbbbabbaaabbaaa bbbbbbaabbaa bba bba  Prepared By Haftom B.
  • 28. Positive Closure  Definition: 28    * 21 L LLL               ,,,, ,,,, ,, , abbbbabbaaabbaaa bbbbbbaabbaa bba bba Prepared By Haftom B.
  • 29. Grammar Prepared By Haftom B.29 A grammar is a mechanism used for describing languages. This is one of the most simple but yet powerful mechanism. The grammar for English tells us what are the words in it and the rules to construct sentences.
  • 30. Formal definitions of a Grammar Prepared By Haftom B.30 A grammar G is defined as a quadruple
  • 31. Example Prepared By Haftom B.31 Consider the grammar , where N = {S}, ={a, b} and P is the set of the following production rules . Some terminal strings are generated by this grammar together with their derivation is given below
  • 33. Cont.… Prepared By Haftom B.33  Example: Find a grammar for the language It is possible to find a grammar for L by modifying the previous grammar since we need to generate an extra b at the end of the string . We can do this by adding a production S Bb where the non-terminal B generates