You are on page 1of 18

AUTOMATAS Y LENGUAJES FORMALES

TRABAJO COLABORATIVO 1
Fase 1: Debatir y desarrollar los ejercicios planteados sobre lenguajes y
expresiones regulares

PRESENTADO POR:
GINYER JARABA DEDES
COD. 1.081.919.243
KATTY MARTNEZ LUNA
C.C: 1.081.920.027
EUNICE YULIETH PAEZ
COD. 26.970.412
RAFAEL ALBERTO DAZA PLATA
COD. 1.122.402.807
IVN DAVID LPEZ HOYOS
COD. 1069474318

PRESENTADO A:
ANGELA MARIA GONZALEZ
Tutor de Curso

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


COLOMBIA
2.016

INTRODUCCION
Un autmata es un modelo matemtico para una maquina de estado finito (FSM) siglas
en ingles, una FSM es una maquina que, dada una entrada de smbolos, salta a travs
de una serie de estados de acuerdo a una funcin de transicin (que puede ser expresada
como una tabla).
La teora de autmatas es una rama de la ciencia de la computacin que estudia las
maquinas abstractas y los problemas que estas son capaces de resolver.
En el presente documento se aborda el tema de Autmatas y lenguajes formales
donde se tiene en cuenta las distintas expresiones regulares y lenguajes aceptados por
cada autmata. As mismo se detallara la forma matemtica de una expresin regular
que se halla seleccionado. Se identificaran los procesos, tipos de autmatas y lenguaje a
utilizar en cada ocasin (AFD o AFND) apoyados en herramientas o aplicaciones para
generar las graficas necesarias.

OBJETIVOS
General:

Apropiarse de los conceptos del curso virtual Autmatas y lenguajes formales.

Especficos:

Resolver los ejercicios sobre expresiones regulares


Interactuar activamente con los compaeros de grupo dentro del foro
colaborativo de la plataforma del curso virtual de autmatas y lenguajes
formales.

PROBLEMAS A DESARROLLAR:
Las expresiones regulares (ER), pueden tambin escribirse de otras formas o
con otra secuencia de operadores o distribucin de smbolos. En general es
una forma matemtica que representa el Lenguaje que genera un Autmata. Y
esas expresiones regulares siempre sern vlidas siempre y cuando
representen exactamente el mismo lenguaje para un Autmata. Concluyendo,
para un Autmata, puede haber ms de una ER que representa el mismo
lenguaje ya sea que esa ER sea minimizada, extensa, equivalente o como se
prefiera escribir. Solo que en los diseos ptimos computacionales siempre se
buscar la mejor ER (corta o mnima) para efectos de la mejor simulacin o
para llevarlas a lenguajes de programacin en la creacin de soluciones
computacionales (solucionar problemas - Algoritmos)
Dados los siguientes tems, Autmatas Finitos Deterministas, Autmatas
Finitos no Deterministas, lenguajes y expresiones regulares (ER), encuentre
segn corresponda:
AFN / AFD

LENGUAJE
E

EXPRESIN REGULAR

EJ1

AFD

(00)*(1+01)(01)*

AFN

(11*10)*11*

EJ2

EJ3

AFN

0+1+1*+(10+00)

Pasos EJ1: por la ley de arden.


Q1 = 0q1 + (1q1 + )
X=rx+s
X = r* s
Q1 = 0* (1q0 + )
Q1 = 0* 1q0 + 0*
Q1 = 0* 1q0 + 0*
Por reduccin:

Pasos EJ2: por reduccin.

Pasos EJ3: por reduccin.

q2 = 0q0 +1q
q2 = 0q0 + 1(0*1q0 + 10*)
q2 = 0q0 + 10*1q0 + 10*
ER=>

q0 = (0 + 10*1) q0 + 10*
x=rx+s
x = r* s
q0 = (0 + 10*1)* + 10*

2. PARA LA EXPRESION REGULAR: ca*+bb*ab(a+b+cc*b)*


SIMPLIFIQUE LA EXPRESIN REGULAR Y RESUELVA:
1. Describa la forma matemtica del autmata,
2. Plasme la tabla de transicin. Identifique que tipo de autmata es (AFD o
AFND) y justifique su respuesta. (No se trata de dar el concepto de
determinismo sino de justificarlo asociando la respuesta al diseo del autmata)
3. Identifique los elementos (tupla que es) (Asociadas con los elementos del
autmata del ejercicio propuesto). Debe explicar y describir cada elemento y la
funcin y significado en el autmata. Conceptos y definiciones adicionales.
4. Identifique el lenguaje que genera.
5. Muestre en el simulador (grficamente) como recorre una cadena vlida.
Explique cada secuencia. (No se trata solo de captura las imgenes, estas deben
ser explicadas en pi de pgina o de lo contrario no tienen validez)
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.
(herramientas que ofrezca uno u otro).
7. Genere tres cadenas vlidas y dos no vlidas.

Solucin:
Simplifico la expresin regular ca*+bb*ab(a+b+cc*b)* .

ca* + bb*ab (a + b + cc*b)* =


= ca* + bb*ab (a + ( + cc*) b)* =
= ca* + bb*ab (a + c*b)*
La ltima igualdad es consecuencia de la siguiente propiedad
regulares:
+ rr* = r*

de las expresiones

Por lo tanto la expresin regular simplificada es:


ca* + bb*ab (a + c*b)*.
Adems, poniendo r = a, s = c*b y utilizando la propiedad ( + )* = (*)* *,
se halla que,
ca* + bb*ab (a + c*b)* =
= ca* + bb*ab (a*c* b)* a* =
= (c + bb*ab (a*c* b)*) a*.
Entonces, (c + bb*ab (a*c* b)*) a*
simplificada.

es una expresin regular equivalente a la

Desarrollo del punto 1: Describa la forma matemtica del autmata

La forma matemtica del autmata finito asociado a la expresin regular asignada es la


quntupla
(, , , , )
Donde = { , , , , , } es el conjunto de los estados del autmata,
= {, , }

Es el alfabeto de entrada,

: Es la funcin de transicin que especifica a qu estado pasa el autmata


desde el estado actual al recibir un smbolo de entrada,

Es el estado inicial del autmata,

= { , } Es el conjunto de estados finales del autmata.

Desarrollo del punto 2: Plasme la tabla de transicin. Identifique que


tipo de autmata es (AFD o AFND) y justifique su respuesta. (No se
trata de dar el concepto de determinismo sino de justificarlo asociando
la respuesta al diseo del autmata)
La tabla de transicin del autmata es:
a

q0

----

q2

q1

#q1

q1

----

----

q2

q3

q2

----

q3

----

q4

----

#q4

q4

q4

q5

q5

----

q4

q5

Como se puede notar, cada celda de la tabla anterior contiene a lo mucho un estado, en
efecto no existen celdas con dos o ms estados, por lo tanto para cada estado en que se
encuentre el autmata y con cualquier smbolo del alfabeto ledo, existe siempre a lo
ms una transicin posible desde ese estado y con ese smbolo.
Eso asegura que el autmata es un AFD, es decir un autmata finito determinista.

Desarrollo del punto 3: Identifique los elementos (tupla que es)


(Asociadas con los elementos del autmata del ejercicio propuesto).
Debe explicar y describir cada elemento y la funcin y significado en el
autmata. Conceptos y definiciones adicionales.
Una tupla es una lista ordenada de elementos. Una n-tupla es una secuencia (o lista
ordenada) de n elementos, siendo n un nmero natural (entero no-negativo). La nica 0tupla es la secuencia vaca. Una n-tupla se define inductivamente desde la construccin
de un par ordenado. Las tuplas suelen anotarse listando sus elementos entre parntesis "(
)", separados por comas.
El autmata finito asociado a la expresin regular asignada es definido por la quntupla
(5-tupla)
(, , , , )
Donde = { , , , , , } es el conjunto de los estados del autmata,
= {, , }

Es el alfabeto de entrada,

Es el estado inicial del autmata,

= { , } Es el conjunto de estados finales del autmata,


: Es la funcin de transicin que especifica a qu estado pasa el autmata
desde el estado actual al recibir un smbolo de entrada.
La ley de definicin de esta funcin es dada por:
(0 , ) = 2
(0 , ) = 1
(1 , ) = 1
(2 , ) = 3

(2 , ) = 2
(3 , ) = 4
(4 , ) = 4
(4 , ) = 4
(4 , ) = 5
(5 , ) = 4
(5 , ) = 5

Desarrollo del punto 4: Identifique el lenguaje que genera.


El lenguaje generado por la expresin regular y aceptado por el autmata es el siguiente:
= { tal que 0 } { +1 ( | )

tal que , , 0 } =

= { tal que 0 } { +1 ( ) tal que , , , , 0 }

Desarrollo del punto 5: Muestre en el simulador (grficamente) como


recorre una cadena vlida. Explique cada secuencia. (No se trata solo
de captura las imgenes, estas deben ser explicadas en pi de pgina o
de lo contrario no tienen validez)
A continuacin muestro grficamente como el simulador recorre la cadena vlida
babaacb.

Antes que nada el simulador evidencia el estado inicial q0.

Debido
al
primer
smbolo b de la
cadena, el autmata pasa
del estado q0 al estado q2.

Como
el
segundo
smbolo de la
cadena es a,
el
autmata
pasa
del
estado q2 al
estado q3.

Debido al tercer
smbolo b de la
cadena, el autmata
pasa del estado q3
al estado final q4.

Como el cuarto
smbolo
de
la
cadena es a, el
autmata permanece
en el estado final q4.

Debido al quinto smbolo a de la cadena, el autmata permanece en el


estado final q4.
Como el sexto smbolo de la cadena es c, el autmata pasa del estado
final q4 al estado q5.

Debido al sptimo y ltimo smbolo b de la cadena, el autmata regresa al estado final


q4.

Desarrollo del punto 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. (Herramientas que
ofrezcan uno u otro).
Diagrama de Moore generado en JFLAP es:

Diagrama de Moore generado en VAS es:

SIMILITUDES:

1) Ambos los simuladores permiten el anlisis de cadenas aceptando o rechazando;


2) Ambos los simuladores permiten crear AFD y AFND;
3) Ambos los simuladores permiten la conversin de AFND a AFD.

DIFERENCIAS
1) El simulador JFLAP permite la insercin de varias cadenas para su posterior
anlisis;
2) El simulador JFLAP permite minimizar un AFD;

3) El simulador JFLAP permite la conversin de un AFD a la correspondiente


expresin regular ER aceptada por el autmata;
4) El simulador VAS permite crear estados directamente dando doble clic en el
cuerpo del trabajo;
5) El simulador VAS pide siempre al usuario que ingrese el nombre del nuevo
estado antes de crearlo;
6) El simulador VAS permite la visualizacin de la tabla de transicin.
Otra diferencia entre los dos simuladores es que los archivos creados por ellos tienen
diferentes extensiones.
JFLAP crea archivos con extensin .jff, mientras que VAS crea archivos con
extensin .fa .

Desarrollo del punto 7: Genere tres cadenas vlidas y dos no vlidas.


Las tres cadenas vlidas y las dos no vlidas se encuentran en la siguiente captura de
imgenes:

Las tres cadenas vlidas son caaaa, bbbbababab y bab, mientras que las dos
cadenas no vlidas son ccccaaaa y bbaab.

3. Teniendo en cuenta el siguiente autmata identifique si es AFD o AFND, Si es un


AFD genere un AFND que reconozca el mismo lenguaje; o por lo contrario si el
autmata inicial es un AFND, genere un AFD que reconozca el mismo lenguaje.

1. Describa la forma matemtica del autmata


2. Identifique los elementos (tupla que es) (Asociadas con los elementos del autmata
del ejercicio propuesto).
3. Muestre en el simulador (grficamente) como recorre una cadena vlida. Explique
cada secuencia. (No se trata solo de captura las imgenes, estas deben ser explicadas en
pi de pgina o de lo contrario no tienen validez)
4. Muestre el diagrama de Moore generado en JFLAP y en VAS

Al realizar el autmata en el simulador JFLAP, se observa en la anterior imagen que


realice diferentes opciones de cadena, pero solo hay dos opciones validas o aceptadas
las cuales sern las nicas que corrern en este autmata, como se pueden dar cuenta las
otras cadenas fueron rechazadas por el autmata.

Vamos a correr la primera opcin valida aceptada por el autmata.

CONCLUSIONES

Se obtuvo el aprendizaje primario como introduccin para el tema a desarrollar en el


presente trabajo colaborativo cumpliendo con los objetivos estipulados.

Se adquiri conocimiento en el manejo de las herramientas necesarias y esenciales para


la posterior graficacion de los ejercicios planteados.

Se logro comprender mejor los lenguajes formales como tambin sus identificaciones
como lo son los modelos AFD y AFND.

BIBLIOGRAFIA

http://www.desarrolloweb.com/articulos/2033.php
https://es.wikipedia.org/wiki/Expresi%C3%B3n_regular
http://biblioteca.unex.es/tesis/Teorias_automatas.pdf
https://msdn.microsoft.com/es-es/library/az24scfc(v=vs.110).aspx

You might also like