Download presentation
1
Courtesy Costas Busch - RPI
Grammars Courtesy Costas Busch - RPI
2
Courtesy Costas Busch - RPI
Grammars Grammars express languages Example: the English language Courtesy Costas Busch - RPI
3
Courtesy Costas Busch - RPI
4
Courtesy Costas Busch - RPI
A derivation of “the dog walks”: Courtesy Costas Busch - RPI
5
Courtesy Costas Busch - RPI
A derivation of “a cat runs”: Courtesy Costas Busch - RPI
6
Courtesy Costas Busch - RPI
Language of the grammar: L = { “a cat runs”, “a cat walks”, “the cat runs”, “the cat walks”, “a dog runs”, “a dog walks”, “the dog runs”, “the dog walks” } Courtesy Costas Busch - RPI
7
Courtesy Costas Busch - RPI
Notation Production Rules Variable Terminal Courtesy Costas Busch - RPI
8
Courtesy Costas Busch - RPI
Another Example Grammar: Derivation of sentence : Courtesy Costas Busch - RPI
9
Courtesy Costas Busch - RPI
Grammar: Derivation of sentence : Courtesy Costas Busch - RPI
10
Courtesy Costas Busch - RPI
Other derivations: Courtesy Costas Busch - RPI
11
Courtesy Costas Busch - RPI
Language of the grammar Courtesy Costas Busch - RPI
12
Courtesy Costas Busch - RPI
More Notation Grammar Set of variables Set of terminal symbols Start variable Set of Production rules Courtesy Costas Busch - RPI
13
Courtesy Costas Busch - RPI
Example Grammar : Courtesy Costas Busch - RPI
14
Courtesy Costas Busch - RPI
More Notation Sentential Form: A sentence that contains variables and terminals Example: Sentential Forms sentence Courtesy Costas Busch - RPI
15
Courtesy Costas Busch - RPI
We write: Instead of: Courtesy Costas Busch - RPI
16
Courtesy Costas Busch - RPI
In general we write: If: Courtesy Costas Busch - RPI
17
Courtesy Costas Busch - RPI
By default: Courtesy Costas Busch - RPI
18
Courtesy Costas Busch - RPI
Example Grammar Derivations Courtesy Costas Busch - RPI
19
Courtesy Costas Busch - RPI
Example Grammar Derivations Courtesy Costas Busch - RPI
20
Another Grammar Example
Derivations: Courtesy Costas Busch - RPI
21
Courtesy Costas Busch - RPI
More Derivations Courtesy Costas Busch - RPI
22
Courtesy Costas Busch - RPI
Language of a Grammar For a grammar with start variable : String of terminals Courtesy Costas Busch - RPI
23
Courtesy Costas Busch - RPI
Example For grammar : Since: Courtesy Costas Busch - RPI
24
Courtesy Costas Busch - RPI
A Convenient Notation Courtesy Costas Busch - RPI
25
Courtesy Costas Busch - RPI
Linear Grammars Courtesy Costas Busch - RPI
26
Courtesy Costas Busch - RPI
Linear Grammars Grammars with at most one variable at the right side of a production Examples: Courtesy Costas Busch - RPI
27
Courtesy Costas Busch - RPI
A Non-Linear Grammar Grammar : Number of in string Courtesy Costas Busch - RPI
28
Another Linear Grammar
Courtesy Costas Busch - RPI
29
Right-Linear Grammars
All productions have form: Example: or string of terminals Courtesy Costas Busch - RPI
30
Courtesy Costas Busch - RPI
Left-Linear Grammars All productions have form: Example: or string of terminals Courtesy Costas Busch - RPI
31
Courtesy Costas Busch - RPI
Regular Grammars Courtesy Costas Busch - RPI
32
Courtesy Costas Busch - RPI
Regular Grammars A regular grammar is any right-linear or left-linear grammar Examples: Courtesy Costas Busch - RPI
33
Courtesy Costas Busch - RPI
Observation Regular grammars generate regular languages Examples: Courtesy Costas Busch - RPI
34
Regular Grammars Generate Regular Languages
Courtesy Costas Busch - RPI
35
Courtesy Costas Busch - RPI
Theorem Languages Generated by Regular Grammars Regular Languages Courtesy Costas Busch - RPI
36
Courtesy Costas Busch - RPI
Theorem - Part 1 Languages Generated by Regular Grammars Regular Languages Any regular grammar generates a regular language Courtesy Costas Busch - RPI
37
Courtesy Costas Busch - RPI
Theorem - Part 2 Languages Generated by Regular Grammars Regular Languages Any regular language is generated by a regular grammar Courtesy Costas Busch - RPI
38
Courtesy Costas Busch - RPI
Proof – Part 1 Languages Generated by Regular Grammars Regular Languages The language generated by any regular grammar is regular Courtesy Costas Busch - RPI
39
The case of Right-Linear Grammars
Let be a right-linear grammar We will prove: is regular Proof idea: We will construct NFA with Courtesy Costas Busch - RPI
40
Courtesy Costas Busch - RPI
Grammar is right-linear Example: Courtesy Costas Busch - RPI
41
Courtesy Costas Busch - RPI
Construct NFA such that every state is a grammar variable: special final state Courtesy Costas Busch - RPI
42
Courtesy Costas Busch - RPI
Add edges for each production: Courtesy Costas Busch - RPI
43
Courtesy Costas Busch - RPI
44
Courtesy Costas Busch - RPI
45
Courtesy Costas Busch - RPI
46
Courtesy Costas Busch - RPI
47
Courtesy Costas Busch - RPI
48
Courtesy Costas Busch - RPI
NFA Grammar Courtesy Costas Busch - RPI
49
Courtesy Costas Busch - RPI
In General A right-linear grammar has variables: and productions: or Courtesy Costas Busch - RPI
50
Courtesy Costas Busch - RPI
We construct the NFA such that: each variable corresponds to a node: special final state Courtesy Costas Busch - RPI
51
Courtesy Costas Busch - RPI
For each production: we add transitions and intermediate nodes ……… Courtesy Costas Busch - RPI
52
Courtesy Costas Busch - RPI
For each production: we add transitions and intermediate nodes ……… Courtesy Costas Busch - RPI
53
Courtesy Costas Busch - RPI
Resulting NFA looks like this: It holds that: Courtesy Costas Busch - RPI
54
The case of Left-Linear Grammars
Let be a left-linear grammar We will prove: is regular Proof idea: We will construct a right-linear grammar with Courtesy Costas Busch - RPI
55
Courtesy Costas Busch - RPI
Since is left-linear grammar the productions look like: Courtesy Costas Busch - RPI
56
Courtesy Costas Busch - RPI
Construct right-linear grammar Left linear Right linear Courtesy Costas Busch - RPI
57
Courtesy Costas Busch - RPI
Construct right-linear grammar Left linear Right linear Courtesy Costas Busch - RPI
58
Courtesy Costas Busch - RPI
It is easy to see that: Since is right-linear, we have: Regular Language Regular Language Regular Language Courtesy Costas Busch - RPI
59
Courtesy Costas Busch - RPI
Proof - Part 2 Languages Generated by Regular Grammars Regular Languages Any regular language is generated by some regular grammar Courtesy Costas Busch - RPI
60
Courtesy Costas Busch - RPI
Any regular language is generated by some regular grammar Proof idea: Let be the NFA with Construct from a regular grammar such that Courtesy Costas Busch - RPI
61
Courtesy Costas Busch - RPI
Since is regular there is an NFA such that Example: Courtesy Costas Busch - RPI
62
Courtesy Costas Busch - RPI
Convert to a right-linear grammar Courtesy Costas Busch - RPI
63
Courtesy Costas Busch - RPI
64
Courtesy Costas Busch - RPI
65
Courtesy Costas Busch - RPI
66
Courtesy Costas Busch - RPI
In General For any transition: Add production: variable terminal variable Courtesy Costas Busch - RPI
67
Courtesy Costas Busch - RPI
For any final state: Add production: Courtesy Costas Busch - RPI
68
Courtesy Costas Busch - RPI
Since is right-linear grammar is also a regular grammar with Courtesy Costas Busch - RPI
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.