Difference between revisions of "Bottom-Up Parsing/Exercise 14: LALR(1)"

From Wiki**3

< Bottom-Up Parsing
(Solução)
(Solução)
Line 14: Line 14:
 
Na imagem, os conflitos indicados para a regra 2 são para a regra 5.
 
Na imagem, os conflitos indicados para a regra 2 são para a regra 5.
  
Note-se que a solução apresentada é para SLR(0) e LALR(1) (a vermelho).
+
Note-se que a solução apresentada é para SLR(1) e LALR(1) (a vermelho).
 +
 
 
{{CollapsedCode|Solução completa|
 
{{CollapsedCode|Solução completa|
 
[[Image:Mzx1.jpg|768px]]
 
[[Image:Mzx1.jpg|768px]]

Revision as of 16:06, 25 May 2023

Problema

Consider the following grammar, where A is the initial symbol and { x, y, z } is the set of terminal symbols:

A -> M z x | z M x | z x z
M -> y | (eps)
  1. Compute the set of LALR(1) states for the grammar. Build the corresponding LALR(1) parse table.
  2. Compact the parse table, eliminating and propagating reductions.
  3. Show the parsing process for input zyx (including the actions/gotos and the input and stack states). In case of conflict, assume YACC's behavior.

Solução

Na imagem, os conflitos indicados para a regra 2 são para a regra 5.

Note-se que a solução apresentada é para SLR(1) e LALR(1) (a vermelho).

Solução completa

Mzx1.jpg Mzx2.jpg