Sunteți pe pagina 1din 18

ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA

AUTOMATAS Y LENGUAJES FORMALES

TRABAJO GRUPAL

LENGUAJE REGUALRES Y SUS MAQUINAS

Presentado por:

WILLIAM ORTIZ ROMERO


JOSE ANDRES
CLEMENCIA ALVARADO AVILA
COD: 1057185599
DIEGO ALEJANDRO VELASQUEZ

Presentado a:

ROLANDO FABIAN JUNCO


Tutor

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA


UNAD
2019
INTRODUCCION

En este trabajo grupal se estudiará los temas correspondientes a la unidad


I del curso, donde se asimilará términos relacionados con autómata y
lenguajes formales y el análisis del comportamiento de máquinas y su
lenguaje aceptado.

Por otra parte, el autómata y lenguajes formales como rama de la teoría


de la computación, estudia las maquinas abstractas y problemas que se
pueden resolver con el uso de estos modelos matemáticos para la solución
de problemas organizacionales.

En este primer trabajo colaborativo encontraremos algunas prácticas


realizado con simuladores JFLAP y VAS, con fin de entender y observar
procesos que se ejecutan las máquinas (autómatas) a partir de una
expresión regular, con paso a partir de un autómata finito determinístico.

En este orden de ideas el grupo colaborativo intercambiará ideas,


desarrollo y conocimientos con cada uno de los integrantes del grupo
colaborativo, con el fin abordar la temática correspondiente a la unidad y
solucionar problemas
planeada en este trabajo grupal, y de esa manera construir cada uno
aprendizaje significativo que servirá para cada uno y ponerlo en práctica
en su vida profesional.
OBJETIVOS

 Identificar los lenguajes regulares, autómatas finitos y su


aplicación.
 Aplicar y comprender los conceptos del curso virtual autómatas y
lenguajes formales.

OBJETIVO ESPECIFICOS
 Resolver el ejercicio planteado y describir su forma
matemática.
 Adquirir habilidad y conocimiento para simular
autómatas utilizando simulador JFLAP.
 Analizar el funcionamiento de una máquina que
reconozcan lenguaje del alfabeto y su transición.
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 el siguiente autómata realice:

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)
5. 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 ofrezcan uno u otro).
Desarrollo
1. Describa la forma matemática del autómata.
 El autómata finito determinista(AFD) se define como una quíntuplas
M (  , Q,  , q0, F )
K= q0, q1, q2, q3, q4, q5, q6, q7, q8
  0,1
2. Plasme la tabla de transición.

1 0
q0 q1 q3
q1 q1 q2
q2 q5 q4
q3 q1 q0
q4 q8 q4
q5 q8 q2
q6 q3 q7
q7 q3 q8
q8 q4 q7

0 1
->q0 q3 q1
q1 q2 q1
#q2 q4 q5
q3 q0 q1
#q4 q4 q8
q5 q2 q8
q6 q7 q3
q7 q8 q3
#q8 q7 q4
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.
Tupla: Es una lista ordenada de elementos. Una n-Tupla es la secuencia o
lista de ordenada de n elementos, siendo n un número natural (no
negativo). Se puede decir que n-Tupla se define desde la construcción de
un par ordenado de elementos.

Estado inicial: Es el estado inicial donde empieza la ejecución y entrada


de símbolo de alfabeto a la máquina. Y debe hacer parte de Q y en este
caso corresponde q0.

El autómata finito se encuentra en el estado inicial y a medida que


procesa cada símbolo de la cadena va cambiando de estado de acuerdo a
lo determinado por la función de transición.

Alfabeto: Símbolos que aceptan los diferentes estados del autómata. En


este caso Σ = {a, b}.

Si Σ es un alfabeto, entonces se denota Σ* al conjunto de todas las


cadenas de caracteres o palabras que se pueden conformar con dicho
alfabeto.

Estado Final (F): Conjunto de estados de aceptación o estado finales


que debe pertenecer a Q. en este caso corresponde F= {q2, q4, q8}.

δ: Función de transición de un estado a otro. En este ejercicio la función


de transición esta descrita en la tabla anterior.

Cuando se ha procesado el último de los símbolos de la cadena de


entrada, el autómata se detiene en el estado final.
Si el estado final en el que se detuvo es un estado de aceptación,
entonces la cadena pertenece al lenguaje reconocido por el autómata; en
caso contrario, la cadena no pertenece a dicho lenguaje
4. Muestre en el simulador (gráficamente) como recorre una
cadena válida.

A continuación muestro gráficamente simulando cada una de las


transiciones que recorre una cadena valida como el siguiente:
“11111001”.

Figura1.
Figura1. Antes de iniciar con el proceso de transición y evaluación de cada uno de
los símbolos del alfabeto. Se inicia con el estado q0.

Figura2

Figura2: El primer símbolo de la cadena “1” es aceptado por el autómata


pasa del estado q0 a q1.
Figura3

Figura3: Debido a que el autómata acepta una cadena de varios unos


“111” (Estrella de kleene), como es el caso de los elementos de la cadena
siguiente no cambia de estado y por lo tanto se queda en el estado actual
q1.
Figura4

Figura4: El siguiente símbolo de la cadena es “0” y el autómata lo acepta


y pasa del estado q1 a q2 y este es uno de los estados finales del
autómata.
Figura 5

Figura5: Como el sexto símbolo del alfabeto es “0” el autómata cambia


de estado de q2 a q4.
Figura6

Figura6: El siguiente símbolo es “0”, debido a que el autómata pueda


recibir varios ceros, el autómata no presenta una transición, por tanto se
queda en el estado q4.

Figura7
Figura7: El ultimo símbolo del alfabeto aceptado por el autómata es “1”
pasa de q4 a q8, que es el estado de aceptación final de esta máquina.

5. 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 ofrezcan uno u
otro).

DIAGRAMA DE MOORE EN VAS


.

DIAGRAMA DE MOORE EN JFLAP


SIMILITUDES

 Los simuladores permite identificar cadenas aceptadas


y rechazadas.
 Ambos simuladores son capaces de crear AFD y AFND
 Los simuladores permite realizar conversiones de AFND
a AFD
 Al ingresar una cadena de caracteres para validación lo
realizan paso a paso de manera gráfica con uso de
colores para especificar los pasos

DIFERENCIA

 El simulador VAS permite la visualización de la tabla de


transición
 El simulador JFLAP puede convertir de un AFD a la
correspondiente expresión regular que el autómata
reconoce.
 El simulador siempre solicita el nombre del estado cada
vez que se crea en el área de trabajo.
 Las extensiones manejados por estos archivos son
diferente para JFLAP es “.jff” y para VAS es “.fa”
 El simulador VAS tiene un menú de herramientas
ilimitado
 Tiene muchos más contenidos en el menú de
herramientas haciendo más completo y permitiendo
diversas tareas más complejas
 El simular VAS Permite dibujar de manera curva las
transiciones de un estado a otro.
 El simulador JFLAP no permite graficar las curvas de la
transición únicamente en línea recta, haciendo que el
autómata se vea menos organizado
 El simulador VAS solo permite ingresar una cadena de
caracteres para validación como paso a paso como
resultado inmediato
 El simulador JFLAP permite realizar la validación de
cadenas de caracteres para un listado de cadena de
caracteres al tiempo y realiza esa validación de manera
simultánea, indicando los resultados de cada cadena.
CONCLUSIONES

Durante el desarrollo de este trabajo colaborativo, adquirimos


conocimientos sobre el fundamento de autómatas y lenguajes formales,
donde se pudo analizar y ver el funcionamientos de las máquinas y su
importancia de aplicación en diferentes áreas.

Y también aprendimos a realizar conversiones y determinar el tipo de


autómata y hallar su expresión regular, que símbolo se compone el
lenguaje, como hacer la transición de un autómata no determinístico a
uno determinístico y viceversa.

Finalmente se utilizó simuladores como ayuda para ver el


comportamiento y funcionalidad de manera simulada y ver cambio de
estado a medida que la maquina recibe una entrada y asimilar algunos
conceptos fundamentales que nos servirá como base para enfrentar los
trabajos posteriores.
BIBIOGRAFIA

 Conversion de AFN a AFD. Gonzalez Angela. (2017). YouTube.


Recuperado el 30 de Septiembre de 2017, desde:
https://www.youtube.com/watch?v=29Qp_AWXFt4

 (2017). Fing.edu.uy. Recuperado el 02 de Octubre de 2017, desde:


https://www.fing.edu.uy/inco/cursos/intropln/pres/2011%2004%20
-%20Expresiones%20regulares%20y%20aut%c3%b3matas.pdf

 http://www.desarrolloweb.com/articulos/2033.php

 https://youtu.be/65B5QUNHfaM

 https://www.youtube.com/watch?v=zMhwYlXAHE4&index=6
&list=PLYIk_3YB0nVyiNMAdrCPgiv0EoSHZtNto

 https://youtu.be/65B5QUNHfaM

 https://www.youtube.com/watch?v=NF47BSorRfU