Presentation is loading. Please wait.

Presentation is loading. Please wait.

NPDAs Accept Context-Free Languages

Similar presentations


Presentation on theme: "NPDAs Accept Context-Free Languages"— Presentation transcript:

1 NPDAs Accept Context-Free Languages
Costas Busch - RPI

2 Theorem: Context-Free Languages Languages Accepted by (Grammars) NPDAs
Costas Busch - RPI

3 Convert any context-free grammar to a NPDA with:
Proof - Step 1: Context-Free Languages (Grammars) Languages Accepted by NPDAs Convert any context-free grammar to a NPDA with: Costas Busch - RPI

4 Convert any NPDA to a context-free grammar with:
Proof - Step 2: Context-Free Languages (Grammars) Languages Accepted by NPDAs Convert any NPDA to a context-free grammar with: Costas Busch - RPI

5 Converting Context-Free Grammars to NPDAs
Proof - step 1 Converting Context-Free Grammars to NPDAs Costas Busch - RPI

6 We will convert any context-free grammar
to an NPDA automaton Such that: Simulates leftmost derivations of Costas Busch - RPI

7 Simulation of derivation
Leftmost derivation Input processed Stack contents leftmost variable Stack Simulation of derivation Input Costas Busch - RPI

8 Simulation of derivation
Leftmost derivation string of terminals Stack Simulation of derivation Input end of input is reached Costas Busch - RPI

9 What is the equivalent NPDA?
An example grammar: What is the equivalent NPDA? Costas Busch - RPI

10 Grammar: NPDA: Costas Busch - RPI

11 A leftmost derivation:
Grammar: A leftmost derivation: Costas Busch - RPI

12 Derivation: Input Time 0 Stack Costas Busch - RPI

13 Derivation: Input Time 0 Stack Costas Busch - RPI

14 Derivation: Input Time 1 Stack Costas Busch - RPI

15 Derivation: Input Time 2 Stack Costas Busch - RPI

16 Derivation: Input Time 3 Stack Costas Busch - RPI

17 Derivation: Input Time 4 Stack Costas Busch - RPI

18 Derivation: Input Time 5 Stack Costas Busch - RPI

19 Derivation: Input Time 6 Stack Costas Busch - RPI

20 Derivation: Input Time 7 Stack Costas Busch - RPI

21 Derivation: Input Time 8 Stack Costas Busch - RPI

22 Derivation: Input Time 9 Stack accept Costas Busch - RPI

23 In general: Given any grammar We can construct a NPDA With
Costas Busch - RPI

24 Constructing NPDA from grammar :
For any production For any terminal Costas Busch - RPI

25 Grammar generates string
if and only if NPDA accepts Costas Busch - RPI

26 For any context-free language there is a NPDA
Therefore: For any context-free language there is a NPDA that accepts the same language Context-Free Languages (Grammars) Languages Accepted by NPDAs Costas Busch - RPI

27 Deterministic PDA DPDA
Costas Busch - RPI

28 Deterministic PDA: DPDA
Allowed transitions: (deterministic choices) Costas Busch - RPI

29 (deterministic choices)
Allowed transitions: (deterministic choices) Costas Busch - RPI

30 (non deterministic choices)
Not allowed: (non deterministic choices) Costas Busch - RPI

31 DPDA example Costas Busch - RPI

32 is deterministic context-free
The language is deterministic context-free Costas Busch - RPI

33 A language is deterministic context-free
Definition: A language is deterministic context-free if there exists some DPDA that accepts it Costas Busch - RPI

34 Example of Non-DPDA (NPDA)
Costas Busch - RPI

35 Not allowed in DPDAs Costas Busch - RPI

36 NPDAs Have More Power than DPDAs
Costas Busch - RPI

37 Since every DPDA is also a NPDA
It holds that: Deterministic Context-Free Languages (DPDA) Context-Free Languages NPDAs Since every DPDA is also a NPDA Costas Busch - RPI

38 We will show that there exists a context-free language which is not
We will actually show: Deterministic Context-Free Languages (DPDA) Context-Free Languages (NPDA) We will show that there exists a context-free language which is not accepted by any DPDA Costas Busch - RPI

39 is not deterministic context-free
The language is: We will show: is context-free is not deterministic context-free Costas Busch - RPI

40 Language is context-free
Context-free grammar for : Costas Busch - RPI

41 Theorem: The language is not deterministic context-free
(there is no DPDA that accepts ) Costas Busch - RPI

42 Proof: Assume for contradiction that is deterministic context free
Therefore: there is a DPDA that accepts Costas Busch - RPI

43 DPDA with accepts accepts Costas Busch - RPI

44 Such a path exists because of the determinism
DPDA with Such a path exists because of the determinism Costas Busch - RPI

45 Context-free languages
Fact 1: The language is not context-free Regular languages Context-free languages (we will prove this at a later class using pumping lemma for context-free languages) Costas Busch - RPI

46 Fact 2: The language is not context-free
(we can prove this using pumping lemma for context-free languages) Costas Busch - RPI

47 We will construct a NPDA that accepts:
which is a contradiction! Costas Busch - RPI

48 Replace with Modify Costas Busch - RPI

49 Connect final states of with final states of
The NPDA that accepts Connect final states of with final states of Costas Busch - RPI

50 Since is accepted by a NPDA
it is context-free Contradiction! (since is not context-free) Costas Busch - RPI

51 Not deterministic context free
Therefore: Not deterministic context free There is no DPDA that accepts End of Proof Costas Busch - RPI


Download ppt "NPDAs Accept Context-Free Languages"

Similar presentations


Ads by Google