PUERTA | PUERTA CS 2020 | Pregunta 43

Considere las producciones A → PQ y A → XY. Cada uno de los cinco no terminales A, P, Q, X e Y tiene dos atributos: s es un atributo sintetizado e i es un atributo heredado. Considere las siguientes reglas.

Rule 1: P.i=A.i+2, Q.i=P.i+A.i, and A.s=P.s+Q.s
Rule 2: X.i=A.i+Y.s and Y.i=X.s+A.i 

¿Cuál de las siguientes es VERDADERA?
(A) Tanto la Regla 1 como la Regla 2 tienen atributos L
(B) Solo la Regla 1 tiene atributos L
(C) Solo la Regla 2 tiene atributos L
(D) Ni la Regla 1 ni la Regla 2 tienen atributos L

Respuesta: (B )
Explicación: Según SDT con atributos L :

  1. Si una SDT utiliza atributos sintetizados y atributos heredados con la restricción de que el atributo heredado puede heredar valores solo de los hermanos izquierdos, se denomina SDT con atributos L.
  2. Los atributos en las SDT con atributos L se evalúan mediante un análisis de profundidad primero y de izquierda a derecha.
  3. Las acciones semánticas se colocan en cualquier lugar de RHS.

Por lo tanto,

Rule 1: P.i=A.i+2, Q.i=P.i+A.i, and A.s=P.s+Q.s 

La regla 1 tiene atribución L por definición.

Sin embargo,

Rule 2: X.i=A.i+Y.s and Y.i=X.s+A.i 

La regla 2 no tiene atributo L porque esta expresión (X. Regla 2: i = Ai + Ys) no cumple con la definición de atributo L.
Se falla para Xi =Ai +Ys ya que X toma valor de su hermano presente por su derecha, es decir, (A → XY).

La opción (B) es correcta.

Cuestionario de esta pregunta

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *