Está en la página 1de 15

UNIDAD 1: FASE 1

DEBATIR Y DESARROLLAR LOS EJERCICIOS PLANTEADOS SOBRE


LENGUAJES Y EXPRESIONES REGULARES.

APORTE # 1

INTEGRANTES:

JUAN SEBASTIAN LOPEZ 1088294891

GRUPO 301405_65

TUTOR
JAIME JOSE VALDES

UNIVERSIDAD NACIONAL ABIERTA A DISTANCIA


ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA
SEPTIEMBRE 16 DEL 2018
Actividades a desarrollar

Actividades Individuales:

Cada estudiante resuelve el taller propuesto en el objeto virtual de aprendizaje Lenguajes Regulares
propuesto en el entorno de conocimiento Unidad 1.

Se encuentran dos ejercicios, correspondientes a:

Actividad 1: Expresión regular


Actividad 2: Conversión del autómata

Actividades Colaborativas:

El trabajo se desarrolla demostrando el procedimiento realizado paso a paso, no se tendrá en cuenta las
respuestas o simulaciones en jFlap o VAS.
Actividad 3:

Teniendo en cuenta los ejercicios desarrollados por los estudiantes el Grupo, selecciona uno de los
autómatas finitos deterministas (AFD). Con base en ese autómata desarrollan:

1. Describa la forma matemática del autómata,


2. Plasme la tabla de transición.
3. Identifique los elementos (tupla, estado final, inicial, alfabeto, etc.). Debe explicar y describir cada
elemento y la función y significado en el autómata. Conceptos y definiciones adicionales.
4. Muestre en el simulador (gráficamente) como recorre una cadena válida. Explique cada secuencia.
(No se trata solo de captura las imágenes, estas deben ser explicadas en pié de página o de lo
contrario no tienen validez)

Muestre el diagrama de Moore generado en JFLAP y en VAS y comente tres similitudes y tres diferencias
que encuentra al realizarlo en los dos simuladores. (Ventajas que ofrezca uno u otro).
DESARROLLO DE LA ACTIVIDAD

Ejercicio 1:

Teniendo en cuenta el autómata realizar la expresión regular, el lenguaje regular y mencionar el tipo de autómata (Autómata finito
determinista y autómata finito no determinista)

AUTOMAT
A

Expresión 01+11 00*1+1(1+10*1) ((1+00*1)(10*1)*0)*(1+00*1)(10*1)*


regular
Lenguaje L={0,1} L={0,1} L={0,1}
regular
Tipo de AFD AFND AFD
autómata
(AFD o
AFND)
Ejercicio 2:

Realizar la conversión del siguiente autómata, si el autómata es AFD convertirlo a AFND y


si es AFND convertirlo a AFD, Se debe mostrar el procedimiento paso a paso.

Empezando por el estado de inicio (q0), revisamos cuales transiciones vacías o épsilon lo
afectan, en este caso ninguno. Así que unimos el número del estado (0), con las transiciones
vacías (queda vacío), a esta unión la nombramos A. Luego evaluamos este conjunto A, con
el alfabeto entrante (0 y 1) y verificamos los estados que puede alcanzar. Se genera
nuevamente una unión, entre el estado alcanzado por el elemento del alfabeto (1 en este caso),
esta unión es diferente al conjunto A, por lo cual genera un nuevo conjunto llamado B. Se
repite el paso anterior con el alfabeto, (0 en este caso), generando un nuevo conjunto C. Este
proceso se repite hasta que no se generen más conjuntos.

1 0
A={0}U{} B={2}U{1} C={1}U{}
B={2}U{1} D = { 2, 3 } U { 1 } E = { 1, 4 } U { 3 }
C={1}U{} B={2}U{1} C={1}U{}
D = { 2, 3 } U { 1 } D = { 2, 3 } U { 1 } F = { 0, 4 } U { 3 }
E = { 1, 4 } U { 3 } B={2}U{1} G = { 0, 1 } U { }
F = { 0, 4 } U { 3 } B={2}U{1} G = { 0, 1 } U { }
G = { 0, 1 } U { } B={2}U{1} C={1}U{}
Todos los conjuntos ya han sido operados. En el autómata anterior, el estado final era q4. En
la nueva tabla, todos los conjuntos que contengan a 4 serán estados finales. Simplificando la
tabla quedaría así:

1 0
->A B C
B D E
C B C
D D F
#E B G
#F B G
G B C

Y ubicando estos nuevos estados y transiciones en un nuevo autómata, quedaría así:


Ejercicio 3:

Teniendo en cuenta el ejercicio anterior, seleccionar el autómata finito determinista (AFD).


Con base en ese autómata desarrolle:

1. Describa la forma matemática del autómata.

A a E = 10(10(010(000*10)*)*)*
A a E (por C) = 00*10(10(010(000*10)*)*)*
A a F = 111*0(111*0(0111*0(000*111*0)*)*)*
A a F (por C) = 00*111*0(111*0(0111*0(000*111*0)*)*)*

ER = 10(10(010(000*10)*)*)* + 00*10(10(010(000*10)*)*)* +
111*0(111*0(0111*0(000*111*0)*)*)* +
00*111*0(111*0(0111*0(000*111*0)*)*)*

ER = (10(010(000*10)*)*)*(10+ 111*0) + (111*0(0111*0(000*111*0)*)*)*(


111*0 + 00*111*0)

2. Plasme la tabla de transición.

3. Identifique los elementos (tupla, estado final, inicial, alfabeto, etc.). Debe explicar y
describir cada elemento y la función y significado en el autómata. Conceptos y
definiciones adicionales.

Definición de un autómata finito


𝐴 = {𝑄, 𝛴, 𝛿, 𝑞0 , 𝐹}

donde:

Q: Es el conjunto de estados del autómata.


Σ: Es el alfabeto del autómata finito.
δ: Son las transiciones presentes en el autómata.
q0: Estado inicial.
F: Conjunto de estados finales.

𝑄 = {𝐴, 𝐵, 𝐶, 𝐷, 𝐸, 𝐹, 𝐺}
𝛴 = {0,1}
𝑞0 = {𝐴}
𝐹 = {𝐸, 𝐹}

4. Identifique el lenguaje que genera.

L = {Lenguaje que inicia con Cero seguido de n sucesos de 0 y continuo a un uno


y cero para terminar o inicia con 1 con N sucesos de 1 seguido de un único cero
para terminar}

5. Muestre en el simulador (gráficamente) como recorre una cadena válida. Explique


cada secuencia. (No se trata solo de captura las imágenes, estas deben ser explicadas
en pié de página o de lo contrario no tienen validez)
Se procede a trabajar con la cadena 0010
Empezamos en el estado inicial A en el cual ingresaremos el primer valor

Al ingresar el primer valor en este caso Cero, el autómata lo reconoce como un


valor aceptable y procede al estado C , mediante la transición anterior (0).
Al estar en el estado C el autómata espera a que se ingrese el nuevo valor al leer que
este es cero realiza la iteración sobre el mismo.

El autómata espera para leer el siguiente valor, al reconocer que este válido, procede
ir del estado C con transición 1 al estado B.
Al identificar el 1 como un valor valido para llegar al estado B, en este se cuentan
con dos transiciones es decir si el valor ingresado es 0 el autómata ingresara al
estado E, pero si el valor es el autómata pasaría al estado D.
En este caso ingresaremos el valor 0, con el que se realiza la transición al estado E,
el autómata logra leerlo y lo identifica como un valor válido, es así como el
autómata llega a su estado final (E), siendo la cadena 0010 aceptada.
6. Muestre el diagrama de Moore generado en JFLAP y en VAS y comente tres
similitudes y tres diferencias que encuentra al realizarlo en los dos simuladores.
(Ventajas que ofrezca uno u otro).

Similitudes:
 La forma de diseñar los diagramas es igual
 En ambos es posible realizar conversiones de NFA a DFA
 Las dos herramientas permiten realizar la ilustración o simulación de las
cadenas ingresadas.

Diferencias
 La herramienta VAS permite generar la tabla de transiciones mientras que
JFLAP no lo realiza
 JFLAP nos permite obtener la ER mediante el autómata Finito, VAS no
cuenta con esta opción.
 Las diversas opciones que ofrece JFLAP tales como la creación de máquinas
de Moore, ER, expresiones gramaticales, máquina de Mealy, permite que
sea una herramienta más completa ,frente a lo que contiene VAS.

7. Genere tres cadenas válidas y dos no válidas.


REFERENCIAS BIBLIOGRÁFICAS

Carrasco, R., Calera, R., Forcada, M. (2016). Teoría De Lenguajes, Gramáticas Y


Autómatas Para Informáticos. Recuperado
de:http://bibliotecavirtual.unad.edu.co:2048/login?user=proveedor&pass=danue0a0&url=ht
tp://bibliotecavirtual.unad.edu.co:2051/login.aspx?direct=true&db=nlebk&AN=318032&la
ng=es&site=eds-live&ebv=EB&ppid=pp_Cover

Alfonseca, C., Alfonseca, M., Mariyón, S. (2009). Teoría de autómatas y lenguajes


formales. (pp. 7-797). Recuperado
de:http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=10498456&pp
g=6

González, A. (2016). Conversión de Autómata Finito No Determinista a Autómata Finito


Determinista. Recuperado de https://youtu.be/29Qp_AWXFt4

González, A. (2016). Conversión de Autómata Finito No Determinista a Autómata Finito


Determinista con transiciones vacías – Método 1. Recuperado de
https://youtu.be/NF47BSorRfU

Alfonseca, C., Alfonseca, M., Mariyón, S. (2009). Teoría de autómatas y lenguajes


formales. (pp. 7-797). Recuperado de:
http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docID=10498456&p
pg=6

Huallpa, L. (2016). Conversión de AFND-e a AFD. Recuperado de


https://www.youtube.com/watch?v=wacz5J40h9A&t=34s

MonitoresUCaldas. (2016). Expresion Regular de Un Automata. Recuperado de


https://www.youtube.com/watch?v=mCHpn-msFnw