Download presentation
Presentation is loading. Please wait.
1
Courtesy Costas Busch - RPI1 Context-Free Languages
2
Courtesy Costas Busch - RPI2 Regular Languages
3
Courtesy Costas Busch - RPI3 Regular Languages Context-Free Languages
4
Courtesy Costas Busch - RPI4 Context-Free Languages Pushdown Automata Context-Free Grammars stack automaton
5
Courtesy Costas Busch - RPI5 Context-Free Grammars
6
Courtesy Costas Busch - RPI6 Example A context-free grammar : A derivation:
7
Courtesy Costas Busch - RPI7 A context-free grammar : Another derivation:
8
Courtesy Costas Busch - RPI8
9
9 A context-free grammar : A derivation: Example
10
Courtesy Costas Busch - RPI10 A context-free grammar : Another derivation:
11
Courtesy Costas Busch - RPI11
12
Courtesy Costas Busch - RPI12 A context-free grammar : A derivation: Example
13
Courtesy Costas Busch - RPI13 A context-free grammar : A derivation:
14
Courtesy Costas Busch - RPI14
15
Courtesy Costas Busch - RPI15 Definition: Context-Free Grammars Grammar Productions of the form: is string of variables and terminals VariablesTerminal symbols Start variables
16
Courtesy Costas Busch - RPI16 Notation: Context-Free Grammars Lower case letters near beginning of alphabet (e.g. a, b, c, …) are terminal symbols Upper case letters near beginning of alphabet (e.g. A, B, C, …) are variables Lower case letters near end of alphabet (e.g. w, x, …) are strings of terminals Upper case letters near end of alphabet (e.g. X, Y, …) are either terminals or strings Lower case Greek letters (e.g. α, β, γ, …) are strings of terminals and/or variables
17
Courtesy Costas Busch - RPI17 Definition: Context-Free Languages A language is context-free if and only if there is a grammar with
18
Courtesy Costas Busch - RPI18 Recall Language of a Grammar For a grammar with start variable : String of terminals
19
Courtesy Costas Busch - RPI19 Derivation Order Leftmost derivation: Rightmost derivation:
20
Courtesy Costas Busch - RPI20 Leftmost derivation: Rightmost derivation:
21
Courtesy Costas Busch - RPI21 Derivation Trees
22
Courtesy Costas Busch - RPI22
23
Courtesy Costas Busch - RPI23
24
Courtesy Costas Busch - RPI24
25
Courtesy Costas Busch - RPI25
26
Courtesy Costas Busch - RPI26 Derivation Tree
27
Courtesy Costas Busch - RPI27 yield Derivation Tree
28
Courtesy Costas Busch - RPI28 Partial Derivation Trees Partial derivation tree
29
Courtesy Costas Busch - RPI29 Partial derivation tree
30
Courtesy Costas Busch - RPI30 Partial derivation tree sentential form yield
31
Courtesy Costas Busch - RPI31 Same derivation tree Sometimes, derivation order doesn’t matter Leftmost: Rightmost:
32
Courtesy Costas Busch - RPI32 Ambiguity
33
Courtesy Costas Busch - RPI33 leftmost derivation
34
Courtesy Costas Busch - RPI34 leftmost derivation
35
Courtesy Costas Busch - RPI35 Two derivation trees
36
Courtesy Costas Busch - RPI36 The grammar is ambiguous: stringhas two derivation trees
37
Courtesy Costas Busch - RPI37 stringhas two leftmost derivations The grammar is ambiguous:
38
Courtesy Costas Busch - RPI38 Definition: A context-free grammar is ambiguous if some string has: two or more derivation trees
39
Courtesy Costas Busch - RPI39 In other words: A context-free grammar is ambiguous if some string has: two or more leftmost derivations (or rightmost)
40
Courtesy Costas Busch - RPI40 Why do we care about ambiguity? take
41
Courtesy Costas Busch - RPI41
42
Courtesy Costas Busch - RPI42
43
Courtesy Costas Busch - RPI43 Correct result:
44
Courtesy Costas Busch - RPI44 We want to remove ambiguity Ambiguity is bad for programming languages
45
Courtesy Costas Busch - RPI45 We fix the ambiguous grammar: New non-ambiguous grammar:
46
Courtesy Costas Busch - RPI46
47
Courtesy Costas Busch - RPI47 Unique derivation tree
48
Courtesy Costas Busch - RPI48 The grammar : is non-ambiguous: Every string has a unique derivation tree
49
Courtesy Costas Busch - RPI49 Inherent Ambiguity Some context free languages have only ambiguous grammars Example:
50
Courtesy Costas Busch - RPI50 The string has two derivation trees
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.