El enunciado aquí 8 Gramaticas libres de contexto
1.- Sigue con el JFLAP el proceso de conversión a Forma Normal de Chomsky de la siguiente gramática
- S → sA
- A → BC
- B →ε
- A →a
- C →ε
Abrimos JFlap y pinchamos en el botón “Grammar” nos aparecerá una ventana para introducir la gramatica
Introducimos las producciones para la gramática
Para convertir la gramática a la forma normal de Chomsky seleccionamos la opción Convert -> Transform Grammar
Esta conversión esta compuesta de varios pasos:
Eliminación de Landa
Eliminación de unitarias A->B
Eliminación de producciones no usadas
Y finalmente tras ajustar las producciones la conversión a Chomsky
Lo cual nos generara la gramatica de Chomsky
2. La gramática S → x | y | z | S + S | S – S | S * S | S/S | (S) es libre de contexto y sirve para expresiones enteras algebraicas sintácticamente correctas sobre las variables x, y, z. Comprueba si son correctas las siguientes expresiones, y obtén su árbol de derivación.
modelamos la gramática en JFlap
Para comprobar las expresiones y obtener su árbol de derivación seleccionamos la opción Input->Brute Force Parse y en la caja de texto input introducimos la expresión a comprobar.
( x + y) –x
acepta la expresión con el siguiente arbol
Acepta la expresión con el siguiente árbol
(( x + y ) / z)
Acepta la expresión con el siguiente árbol.
((x+y)(x+z))
Rechaza la expresión
( x + y ) * x – z * y / ( x + x )
Al verificar la expresión utilizando brute force parse se satura es espacio del Heap por lo que no se puede verificar, si transformamos la gramática en una gramática lineal por la derecha y en un autómata finito podemos verificar si la expresión es valida en el automata.
Rechaza la expresión.
3. Describir el lenguaje generado por las siguientes reglas de producción
S → SS | aSb | bSa | ab | ba
ffff
4. Modelar e introducir en JFLAP la siguiente gramática básica de un idioma.
a. <frase> → <sujeto> <predicado>
b. <sujeto> → <articulo> <sustantivo>
c. <articulo> → el | la
d. <sustantivo> → mundo | río | niña
e. <predicado> → <verbo>
f. <verbo> → fluye | gira | llora
Forma todas las frases correctas
el mundo fluye
el mundo gira
el mundo llora
el río fluye
el río gira
el río llora
la niña fluye
la niña gira
la niña llora
Intenta crear una gramática más compleja, para expresar frases como.
El lado oculto de la luna permanece inexplorado
Las prácticas de TALF son entretenidas…
Hola!
El ejercicio 3 (describir el lenguaje generado…) se puede hacer con el JFLAP? Cómo sería?
De no poderse, cómo hay que hacerlo?
Muchas gracias 😀
Yo lo hago de cabeza, en el JFlap solo puedes validar palabras
Hola de nuevo, y muchas gracias por tu pronta contestación ^^
Entonces, el lenguaje generado por esas reglas de producción sería todas las cadenas que genera?
Es decir, la respuesta sería ab, ba, aabb, abab, baba, bbaa,…?
una expresion regular que lo defina y lo bordas
ok! Muchísimas gracias :D:D
con una expresion regular? si la expresion no es regular no?? no estaría bien decir que reconoce cadenas del mismo numero de as y de bs?? o con la expresion
((a^nb^n)+|(b^na^n)+)+
preguntale a Arno o a Carnero yo no te voy a evaluar el examen, yo pondría una expresión regular (me parece mas chachi guay academico)