Clase_13

26
Clase 13: Derivación de gramáticas y ambigüedad Solicitado: Ejercicios 11: Derivaciones de gramáticas y ambigüedad 1 M. en C. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco @efranco_escom [email protected]

description

Clase_13.pdf

Transcript of Clase_13

  • Clase 13: Derivacin de gramticas y ambigedad

    Solicitado: Ejercicios 11: Derivaciones de gramticas y ambigedad

    1M. en C. Edgardo Adrin Franco Martnez http://computacion.cs.cinvestav.mx/~efranco

    @efranco_escom

    [email protected]

  • Contenido Derivacin

    Ejemplo 01

    Ejemplo 02

    Derivaciones

    rboles de derivacin Ejemplo 03

    Ejemplo 04

    Ambigedad en gramticas

    Problemas de la ambigedad

    Eliminar la ambigedad en gramticas

    Ejercicios 11: Derivaciones de gramticas y ambigedad

    Compiladores (Lenguajes y gramticas - Edgardo A. Franco)

    2

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

  • G 3

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    Definicin: Decimos que la cadena w1 deriva en unpaso a la cadena w2 (w1 G w2) si y solo si existencadenas x, y V * tales que w1 = xuy y w2 = xvy yadems existe una regla u v en P. Se acostumbra omitir el subndice que indica la gramtica

    G.

    Definicin: una cadena w V * es derivable a partirde la gramtica G si y solo si existe una secuencia dederivacin iniciando en el smbolo inicial yterminando en la cadena w: S = w1 w2 w3 wn = w.

    Escribimos si deriva a en 0 o ms pasos.

    Derivacin

  • 4T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    Definicin: el lenguaje generado por una gramticaG, L(G), es igual al conjunto de las palabras en VTderivables a partir de G.

    Una gramtica describe las reglas sintcticas dellenguaje. Si una palabra no sigue las reglas, entoncesno pertenecen al lenguaje generado por la gramtica.

    G = (VN,VT, S, P)VN= {S, A, B}VT = {a, b}

    P: S AAA AAA | bA | Ab | a |BB ABAA | b

  • 5T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    Demostrar la pertenencia de la palabra aabba alL(G).

    G = (VN,VT, S, P)VN= {S, A,B}VT = {a, b}

    P: S AAA AAA | bA | Ab | a |BB ABAA | b

    Tabla de derivaciones

    Cadena Produccin Derivacin

    S S AA AA

    AA A AAA AAAA

    AAAA A a aAAA

    aAAA A a aaAA

    aaAA A bA aabAA

    aabAA A B aabBA

    aabBA B b aabbA

    aabbA A a aabba

    Ejemplo 01

  • Ejemplo 02 G = (VN,VT, S, P)

    VN= {S, A}

    VT = {a, b}

    P: S AA A AAA | bA | Ab | a

    Derivar la palabra ababaa.

    6

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

  • AAAA Aa aA aAAA AAAa aAAA abAAA AAbAa aAAa abaAA AAbaa abAAa ababAA AbAbaa abAbAa ababaA Ababaa ababAa ababaa ababaa ababaa

    S AA S AA S AA

    7

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    En esta gramtica existe ms de una derivacin de la palabraababaa.

    Derivaciones de ababaa

  • Derivaciones Derivacin por la izquierda: las reglas de reemplazo

    son aplicadas a la primera variable de izquierda aderecha.

    Derivacin por la derecha: las reglas de reemplazoson aplicadas a la ltima variable de derecha aizquierda.

    8

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

  • 9T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

  • rboles de derivacin Son una forma de representar las derivaciones, siendo

    utilizados, por ejemplo, en la construccin de compiladorespara representar el anlisis sintctico de los programasfuente y sirviendo de base para la generacin de cdigo.

    Slo se pueden definir rboles de derivacin para

    gramticas de tipo 1 o mas restrictivas (tipos 2 y 3).

    10

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

  • Un rbol de derivacin permite mostrar grficamente cmose puede derivar cualquier cadena de un lenguaje a partir delsmbolo inicial de una gramtica que genera ese lenguaje.

    Un rbol es un conjunto de puntos, llamados nodos, unidospor lneas, llamadas arcos. Un arco conecta dos nodosdistintos. Para ser un rbol un conjunto de nodos y arcosdebe satisfacer ciertas propiedades:

    El nodo raz est rotulado con el smbolo inicial de lagramtica.

    Cada hoja corresponde a un smbolo terminal.

    Cada nodo interior corresponde a un smbolo no terminal.

    11

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

  • wS G*

    12

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    Para una derivacin su rbol de derivacinse construye de la siguiente manera:

    Inicializar el rbol con la raz S.

    Si A x1x2...xn (con xi V) es la regla de derivacinaplicada a la cadena uAv, entonces aadir x1, x2, ..., xn comolos hijos de A en el rbol.

    Si A es la regla de derivacin aplicada a la cadena uAv,entonces aadir como hijo nico de A en el rbol.

    Al rbol de derivacin tambin se le llama rbol deanlisis o rbol de anlisis gramatical o rbol deanlisis sintctico.

  • Compiladores (Lenguajes y gramticas II - Edgardo A. Franco)

    13

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    El orden de las hojas tambin sigue el procesoiterativo de construccin del rbol:

    Inicialmente slo hay la hoja S y el orden es obvio.

    Al utilizar la regla A x1x2...xn, cada xi se convierte en hojay en el orden de las hojas A se reemplaza por x1, x2, ...,xn.

    Al utilizar la regla A , simplemente se reemplaza A por.

    La cadena de caracteres terminales que se obtieneal recorrer las hojas en orden se llama el productodel rbol.

  • P:

    EDbCCbaDCbD aDCaD

    E

    D b C

    bC a D

    ab

    G=(VT,VN,E,P)VT={a,b,c}VN={E,C,D}

    14

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    Ejemplo 03

  • Ejemplo 04

    P.g. Sea la gramtica G dada por:S AB A aA|aB bB|b

    La cadena aabbb tienen la siguiente derivacin:

    S => AB => AbB => AbbB => Abbb => aAbbb => aabbb

    15

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

  • Compiladores (Lenguajes y gramticas II - Edgardo A. Franco)16

    La cadena aabbb tienen la siguiente derivacin:

    S => AB => AbB => AbbB => Abbb => aAbbb => aabbb

    16

    S

    A B

    b B

    b B

    b

    a A

    a16

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

  • Ambigedad en gramticas

    Considrese la gramNca: S SbS | ScS | a1. S => SbS => SbScS => SbSca => Sbaca => abaca

    2. S => ScS => SbScS => abScS => abacS => abaca

    S

    S S

    ca

    a

    b

    S S

    a

    Derivacin 1S

    S S

    b a

    a

    c

    S S

    a

    Derivacin 2Para una misma cadena, se obtuvieron rboles de derivacin distintos

    17

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

  • 18

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    Una gramtica es ambigua cuando para unadeterminada cadena, se produce ms de un rbolde derivacin.

  • Una gramtica es ambigua si existe unacadena w L(G) que tiene ms de unaderivacin por la izquierda o ms de unaderivacin por la derecha o si tiene dos oms rboles de derivacin.

    En caso de que toda cadena w L(G) tenga unnico rbol de derivacin, la gramtica es noambigua.

    19

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    S

    a S

    a

    S

    S a

    a

  • P.g: la gramtica S aS | Sa | a es ambigua porque aa tiene dos derivaciones por la izquierda

    S aS aa S Sa aa

    Esta gramtica genera el lenguaje a+ que tambin es el lenguaje generado por la gramtica no ambigua S aS | a.

    S

    a S

    a

    S

    S a

    a

    20

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    S

    a S

    a

  • Problemas de la ambigedad En la gramtica para expresiones aritmticas sobre id y num:

    E E + E

    E E E

    E id

    E num

    E -E

    E (E)

    Es ambigua porque la cadena id + num id tiene dos rboles de derivacin:

    rbol izquierdo representa (id + num) id

    rbol de la derecha representa id + (num id).

    E

    E E

    id + num id

    E

    E E+

    num * idid

    21

    La ambigedad puede producir seriosproblemas en lenguajes cuyosignificado depende, en parte, de suestructura, como es el caso de loslenguajes naturales y los deprogramacin.

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

  • Eliminar la ambigedad en gramticas Eliminar la ambigedad en una gramtica

    requiere de un proceso de anlisis propio decada gramtica que verifique que para ningunapalabra que esta genera se puedan generar msde un rbol de derivacin.

    En algunos casos, la ambigedad de unagramtica se puede eliminar utilizando nuevasvariables que eliminen los rboles de derivacinno deseados.

    Tambin existen los lenguajes inherentementeambiguos para los que no existe una gramticano ambigua equivalente.

    22

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

  • En el ejemplo de los operadores aritmticos,adems de la variable E, que representaexpresiones, tambin se utilizan las variablesF para factores y T para trminos y se tienenlas siguientes reglas:

    E E + T E T

    T T * F T F

    F (E) T -F

    F id F num

    23

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

  • 1. Dadas las siguientes gramticas, de la tabla dederivaciones para comprobar la perteneca de lascadenas dadas.

    .24

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    Ejercicios 11 Derivacin de gramticas y ambigedad

    1.-

    G = (VN,VT, exp, P)VN= {exp, opsuma, term, factor,numero}VT = {+, -,*,(,),0,1,2,3,4,5,6,7,8,9}

    P:

    exp exp opsuma term |termopsuma + | -term term opmul factor | factoropmult *factor (exp) | numeronumero 0|1|2|3|4|5|6|7|8|9

    a) 3+4*5-6b) 3*(4-5+6)c) 3-(4+5*6)

    2.-

    G = (VN,VT, S, P)VN= {S, A, B, C}VT = {a, b}

    P:

    S BAaA bBC | aB bB | b | C aB | aa

    a) bbbaab) baac) aa

  • 25

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    2. Dadas las siguientes gramticas, tipo 3 encuentre la expresinregular que reconocen

    3. Dadas las gramticas siguientes dibuje los rboles de derivacinpara las cadenas dadas

    .

    1.-a*S aSS

    2.-a*b*S aS | bA | A bA | b |

    3.-a+b+S ABA aA | aB bB | b

    1.-

    sentencia sent-if | otro | sen-if if ( exp ) sentencia parte-elseparte-else else sentencia | exp 0 | 1

    a) if(0) if(1) otro else else otro b) if(1) otro else if(0) otro else otroc) if(0) otro

    2.-

    A (A) A | | exp

    a) ( ( exp) ( (exp ) (exp ) ) )b) ( exp ) ( exp )c) ( exp ) exp

  • 4. Demostrar que las siguientes gramticas son ambiguas:

    *Se entregarn antes del da Domingo 20 de Octubre de 2013

    (23:59:59 hora limite)

    *Incluir la redaccin de cada ejercicio

    *Portada y encabezados de pagina 26

    T

    e

    o

    r

    a

    c

    o

    m

    p

    u

    t

    a

    c

    i

    o

    n

    a

    l

    C

    l

    a

    s

    e

    1

    3

    :

    D

    e

    r

    i

    v

    a

    c

    i

    n

    d

    e

    g

    r

    a

    m

    t

    i

    c

    a

    s

    y

    a

    m

    b

    i

    g

    e

    d

    a

    d

    P

    r

    o

    f

    .

    E

    d

    g

    a

    r

    d

    o

    A

    d

    r

    i

    n

    F

    r

    a

    n

    c

    o

    M

    a

    r

    t

    n

    e

    z

    1.-a*S S + SS S * SS ( S )S 0 SS 1 SS 0S 1

    3.-a*b*S A C | B DA a A b | a bB a B | aC c C | cD b D c | b c

    2.-a+b+sentencia if ( exp ) sentencia | sent-igualadasent-igualada if ( exp ) sent-igualada else sentencia | otroexp 0 | 1