Vous êtes sur la page 1sur 14

Asignatura

Autómatas y Leguajes formales

Presenta

Henry Jhoan Torres Villarreal

Carlos Giovanni Ruiz

Deis y Ibon Noriega

Raul Jimenez

Eddin Jose Robles

Grupo301405_13

Tutor

Edgar Antonio Cortes

Bucaramanga –Colombia 2018


INTRODUCCIÓN

El presente trabajo tiene como principal objetivo realizar la entrega de la

actividad fase 1 propuesta en la guía integrada, la cual nos propone

realizar una presentación en PPT inicialmente sobre un tema previamente

seleccionado en el grupo colaborativo, así mismo dar solución a 3

ejercicios relacionado con autómatas en donde pondremos en práctica

nuestras capacidades para hallar expresiones regulares, lenguajes

regulares, conocer los diferentes tipos de autómatas que existen, realizar

conversiones, plasmar tablas de transición, y profundizar sobre el

diagrama de Moore, para llevar a cabo el trabajo el grupo colaborativo uso

los recursos destinados en el entorno de conocimiento, así mismo el

material compartido por el tutor asignado en el foro y por supuest o los

links de las videoconferencias realizadas para el desarrollo del mismo.


OBJETIVOS

 Abordar y dar solución a los ejercicios planteados en la temática 1


de forma colaborativa la cual hace referencia a Lenguajes regulares .

 Profundizar y poner en práctica lo relacionado con alfabetos,


autómatas y lenguajes, clases entre otros .

 Investigar sobre los conceptos básicos de Lenguaje regular,


expresión regular, Autómata finito (determinista y no determinista)
EJERCICIOS

Ejercicio 1: Teniendo en cuenta el autómata realizar paso a paso el


procedimiento de:

1. Hallar la expresión regular


2. Hallar el lenguaje regular
3. Justificar el tipo de autómata que es

Desarrollo.

Lo primero que debemos tener en cuenta que la expresión regular final va


a estar compuesta por varios sumandos. Cada una de estas expresiones
regulares sale de obtener el número de sumandos el cual va a depender del
número de estados de aceptación y caminos.

1. Hallar la expresión regular

S e r e l e v a q1

q 4 = aq 4 + bq 3 + a∗ (bq3 ) = a∗ bq 3 (bq1 + ba∗ b∗ )

q 4 = a∗ baba∗ ba∗ + a∗ baba∗ bba∗ b∗ + a∗ baaaba∗ + a∗ baaaba∗ bba∗ b∗ + a∗ bba∗ b∗


S e r e l e v a q2

q1 = aq1 + bq 2 = aq1 + b(a∗ bq 3 ) = aq1 +ba∗ b∗


q1 = aba∗ ba + aba∗ bba∗ b∗ + aaaba∗ aaaba∗ bba∗ b + ba∗ b∗
S e r e l e v a q3

q 2 = aq 4 + bq 4 + λ = (a + b)q 4 = abq 4 = ab(a∗ bq3 ) = aba∗ bq 3

q 2 = aba∗ b(aq1 + ba∗ b) = aba∗ aq1 + aba∗ bba + b

S e r e l e v a q4

q 2 = aq 4 + bq 4 + λ = (a + b)q 4 = abq 4 = ab(a∗ bq3 ) = aba∗ bq 3

relevamos q1
q 0 = bq 2 + aq 3 = b(a∗ baq1 + a∗ bba∗ b∗ ) + a(aba∗ baq1 + aba∗ bba∗ b)
q 0 = ba∗ ba∗ + ba∗ bba∗ b∗ + aaba∗ + aaba∗ bba∗ b

ER = ba∗ ba∗ + ba∗ bba∗ b∗ + aaba∗ + aaba∗ bba∗ b


HALLAR EL LENGUAJE REGULAR

Σ es un conjunto finito de símbolos o alfabeto.

δ : Q × Σ → Q es una función parcial llamada función de transición

E n t o n c e s L(A) = ({q 0, , q1, , q 2 , q 3 , q 4, }, {a, b}, {δ}, {q 0 }{q 4 })

δ(q 0 , a) = q1

δ(q 0 , b) = q1 δ a b

δ(q1 , a) = q 2 q 0, q1 q1
q1, q2 q1
δ(q1 , b) = q1
q2 q3 q3
δ(q 2 , a) = q 3 δ(q 2 , b) = q 3 q3 q4 q4
q4 q4 q4
δ(q 3 , a) = q 4 δ(q 3 , b) = q 4

δ(q 4 , a) = q 4

δ(q 4 , b) = q 4
JUSTIFICAR EL TIPO DE AUTÓMATA

Es un autómata determinístico porque consta de:

 Se determina para cada símbolo de entrada, designado como ∑ (a, b).


solo se puede ir a una sola etapa

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.

Conjuntos a b

A= {0} U {} = {} B={1,3}U{2}

B={1,3} U {2} C= {0,1,3} U {2} D={2,3} U {2}

C= {0,1,3} U {2} C= {0,1,3} U {2} E= {1,2,3} U {2}

D={2,3} U {2} B={1,3} U {2} F= {3} U {2}


E= {1,2,3} U {2} C= {0,1,3} U {2} D={2,3} U {2}

F= {3} U {2} F= {3} U {2} F= {3} U {2}

Tabla Conjunto Conversión AFND a AFD

Fig1. Modelo AFD ejercicio 2

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= (Q, ∑, q0, F, ð). Donde

Q = (a, B,C, D, E,F)

∑ = {a,b}

q0= A
F= B,C,F

ð = (A, a) = {}

ð = (A, b) = B

ð = (B, a) = C

ð = (B, b) = D

ð = (C, a) = C

ð = (C, b) = E

ð = (D, a) =B

ð = (D, b) =F

ð = (E, a) = C

ð = (E, b) = D

ð = (F, a) =F

ð = (F, b) =F

2. Plasme la tabla de transición.

Estado a b

A {} B

#B C D

#C C E

D B F

E C D

#F F F

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; En matemáticas, una tupla es una lista ordenada de elementos. Una


n-tupla es una secuencia (o lista ordenada) de n elementos, siendo n un
número natural (entero no -negativo). La única 0 -tupla es la secuencia
vacía. Una n-tupla se define inductivamente desde la construcción de un
par ordenado. Las tuplas suelen anotarse listando sus elementos entre
paréntesis separados por ()” separados por comas. Por ejemplo, denota
una 5-tupla.

En el caso del AFD del ejercicio está formado por una 5 tupla A= (Q, ∑,
q0, F, ð).

Estado Inicial: Es el estado donde el autómata recibe la primera letra de la


palabra y transita al estado siguiente de acuerdo al estado de transición

Para el AFD el estado inicial es A y cambi a al estado B cuando recibe la


letra del alfabeto “b”

Estado Final: Se define como el estado final en el que el autómata


recibido la letra considera la palabra como aceptada

Para el AFD se presentan 3 estados de aceptación B (al recibir del estado


A la letra “b”

), C (al recibir de los estados E y C la letra “a”) y F (al recibir del estado
del estado D la letra “b” o la letra “a” o “b” del estado “F )

Alfabeto: Conjunto de símbolos que recibe el sistema y en autómatas el


alfabeto se representa con la l etra sigma.∑. Es el lenguaje aceptado por el
autómata, denotado como l (M), como {w €∑ | w es una palabra aceptada
por M}

Para el AFD ∑ = {a,b}

Cadena Vacía: Una cadena vacía o string vacío (en inglés) es la única
cadena de caracteres de tamaño cero. Se denota usualmente con las letras
griegas λ

Hacer referencia a una cadena vacía es distinto a hacer referencia a un


Null, puesto que mientras que con este último no se puede operar, esta
cadena acepta todas las operaciones existentes para las cadenas de
caracteres (concatenación, asignación, extracción, etc.).

Para el caso del autómata finito determinista no existen transiciones de


v a c í o , ya q u e a l h a c e r l a u n i ó n p a r a t r a n s f o r m a r e l A F N D a A F D s e
unificaron

4. Muestre en el simulador (gráficamente) como recorr e 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 ofrezca uno u
otro).

Similitudes JFLAP vs VAS Diferencias JFLAP vs VAS

1. Tanto jflap como Vas permiten hacer  En Jflap se puede correr múltiples cadenas y
conversiones de AFND a AFD verificar cuales son aceptadas y cuales no

En VAS se ingresa de a una cadena

2. Tanto jflap como Vas permiten hacer  En Jflap se puede correr múltiples cadenas y
conversiones de AFND a AFD verificar cuales son aceptadas y cuales no

En VAS se ingresa de a una cadena


3. Permiten guardar los diagramas de  Realizar seguimiento a una cadena en Jflap es
Moore como archivos de imágenes más sencillo ya que ofrece un menú para
depuraciones paso a paso, ver depuración de
inicio, fin y ver saltos de forma gráfica entre
estados, dependiendo de la cadena recibida.
 En Vas correr y depurar una cadena es menos
amigable, solo visualiza mensaje de aceptada o
rechazada, o se puede hacer seguimiento de
forma grafica como lo hace JFLAP

3.Permite identificar si una cadena es JFlap presenta en su menú de herramientas una


aceptada o rechazad por el autómata de opción para comparar equivalencias, VAS no cuenta
acuerdo al diagrama de Moore indicado con esta opción

Jflap ofrece más opciones de creación (autómatas,


máquinas de Turing, expresiones regulares, entre
otras.

En VAS solo se permite manejo de AFD o máquinas


de Turing
CONCLUSIONES

El presente trabajo nos permitió como grupo colaborativo realizar el


estudio de lo relacionado con Autómatas, enfocándonos en varios campos
como lo fueron la identificación de cada uno de ellos, la transición, los
elementos que lo componen, el diagrama de Moore y aprendiendo la
utilización del simulador para validar el recorrido de las cadenas y
secuencias básicas.

Esta asignatura es de gran importancia para nosotros como estudiante s de


In geniería dado que nos enseña a entender y a desarrollar la lógica, lo
cual será útil seguramente para la aplicación de los diferentes procesos
que se nos puedan asignar en el campo profesional como futuros
ingenieros de sistemas.
BIBLIOGRAFIA

Carrasco, R., Calera, R., Forcada, M. (2016). Teoría De Lenguajes,


Gramáticas Y Autómatas Para Informáticos. Recuperado
dehttp://bibliotecavirtual.unad.edu.co:2051/login.aspx?direct=true&db=nl
ebk&AN=318032&lang=es&site=edslive &ebv=EB&ppid=pp_Cover

Hernández, R. (2010). Practique la teoría de autómatas y lenguajes


formales. (pp. 1 -124). Recuperado
dehttp://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docI
D=10566114&ppg=10

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


lenguajes formales. (pp. 7-797). Recuperado
dehttp://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?docI
D=10498456&ppg=6

Millán, J., Antonio J. (2009). Compiladores y procesa dores de lenguajes.


(pp. 28-62). Recuperado
dehttp://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/detail.action?docID
=10844351

Ferrando, J.C., and Gregori, V. (2012). Matemática discreta (2a. ed.). (pp.
207-232). Recuperado
dehttp://bibliotecavirtual.unad.edu.co:2 077/lib/unadsp/reader.action?ppg=
260&docID=10751543&tm=1481476339478

Vous aimerez peut-être aussi