PREGUNTA: Dada la siguiente expresión regular: (((a + b) c* (a + b)) + (( ac + ab) *))* y el siguiente autómata finito:
Indicar qué valores deben tener Etiqueta-1 y Etiqueta-2 para que el autómata acepte el mismo lenguaje que la expresión regular:
a) Etiqueta-1=a, b Etiqueta-2=a
b) Etiqueta-1=c Etiqueta-2=a
c) Etiqueta-1=a Etiqueta-2=a, b
d) Ninguna de las anteriores combinaciones es válida
RESPUESTA: la opción correcta es la c), aunque ver comentarios.
Nos dice que el autómata debe aceptar el mismo lenguaje, pero esto no deja claro si debe ser exactamente el mismo lenguaje, o podría reconocer un lenguaje más amplio que englobe el lenguaje de la expresión regular. Si se considerara oportuno, se podría incluir un comentario en el examen para indicar qué interpretación hemos hecho.
Nos fijamos primero en si la expresión regular admite ε, ya que el autómata admite ε por ser el estado inicial un estado de aceptación. Dado que el conjunto de la expresión regular está afectada por un asterisco de Kleene, efectivamente admite ε.
La expresión regular y el autómata no son fáciles de analizar con un simple vistazo, requiere un tiempo y posiblemente se pueda hacer de distintas maneras.
( ac + ab) * está contenido en la rama de abajo del autómata.
((a + b) c* (a + b)) está contenido en la rama de arriba del autómata.
Para ligar la rama de arriba con la de abajo necesitamos que etiqueta-1 sea a ya que la rama de abajo sólo admite comienzos por la letra a, mientras que para ligar la de abajo con la de arriba necesitamos que etiqueta-2 sea a,b ya que la rama de arriba admite inicios tanto con a como con b.
Otra forma de razonarlo: plantear cadenas que admite la expresión regular y ver qué valores de etiquetas se requerirían en el autómata:
La ER admite acccaac: para que el autómata admita esta cadena Etiqueta-1=a, la etiqueta 2 en principio nos da igual.
La ER admite acccaab: para que el autómata admita esta cadena Etiqueta-1=a, la etiqueta 2 en principio nos da igual.
La ER admite abacccb: no intervienen las etiquetas
La ER admite acbac: para que el autómata admita esta cadena Etiqueta-1=a, la etiqueta 2 en principio nos da igual.
La ER admite acbacbb: para que el autómata admita esta cadena Etiqueta-1=a, la etiqueta 2 ha de ser Etiqueta-2=b.
Vemos que la Etiqueta-1 ha de ser a. La Etiqueta-2 tendría que ser b. Respondemos entonces la opción c). Esta pregunta tiene su complejidad, no permite de forma clara tener seguridad de que la conclusión a la que llegamos sea con certeza la correcta.