You are on page 1of 25

AUTONOMAS Y LENGUAJES FORMALES

TRABAJO COLABORATIVO No. 1

TUTOR:

ANGELA MARIA GONZALEZ

GRUPO: 301405_59

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA

CEAD VALLEDUPAR

SEPTIEMBRE 30 DE 2016

INTRODUCCION

En el presente trabajo estaremos dando solucin a ejercicios planteados sobre


Lenguajes y Expresiones Regulares, los cuales nos servirn de mucha utilidad en
nuestro desenvolvimiento diario profesional como Ingenieros de Sistemas.
Los lenguajes regulares son los que se pueden generar a partir de los lenguajes
bsicos con la aplicacin de las operaciones de unin, concatenacin y * de
kleene un numero finito de veces, los expresamos por extensin y por
comprensin y puede ser reconocido por un autmata finito determinista, un
autmata finito no determinista, un autmata de pila, un autmata finito alterno y
una mquina de turing de solo lectura, es generado por una gramtica regular y
una gramtica de prefijos y es descrito por una expresin regular.

Las Expresiones Regulares se utilizan para hacer bsquedas contextuales y


modificaciones sobre textos, nos sirven para definir lenguajes, imponiendo
restricciones sobre las secuencias de caracteres que se permiten en el lenguaje
que estamos definiendo.

OBJETIVOS

OBJETIVO GENERAL
Debatir y desarrollar los ejercicios planteados sobre Lenguajes y
Expresiones Regulares.

OBJETIVOS ESPECIFICOS

Comprender el tema de lenguajes y expresiones regulares.


Dar solucin a los ejercicios planteados en la gua.
Aplicar los conocimientos adquiridos en los videos expuestos en la
plataforma para el desarrollo de los ejercicios.

Problemas a desarrollar:

1. 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 el siguiente tem, Autmatas Finitos Deterministas,
Autmatas Finitos no Deterministas, lenguajes y expresiones regulares
(ER), encuentre segn corresponda:
2.

AFN / AFD LENGUAJE EXPRESIN REGULAR


EJ
1
L={w {1,0 } } 00

00



( ( 1+01 ) 0 1 )
ER=

AFD

EJ
2
L={w {1,1 } } 11 10 1 1
ER=

AFND

EJ
3
L={w {1.1} + } 11 ( 10+ 00 ) 11
ER=

AFND-
1.

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,



c a +b b ab ( a+ b+c c b )

c a +b b ab ( a+ b( +c c ) )

c a +b b ab ( a+ b c )

c a + +b b ab ( a+b c )

c a +b b ( a+ b c ) a

c a + +b b ( a+b c ) a

c a +b ( a+b c ) a

=({c }{a }n {b }m ( { a } { b } {c }r t { a }|n , m, r , t 0)

Autmata de la ER=ca+bbab (a+b +ccb)

Simplificacin: ER=ca+bbab ( a+b )+bbab( ccb)


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)

{a ,b , c }
q a b c
->q0 q1 q4
q1 q2 q0,q1
q2 q5
q3 q5, q3
*q4 q4
*q5 q3, q5 q3

El autmata es AFND ya que tiene varias transiciones para llegar al estado


final
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.

Elementos Definicin
Tupla Es una secuencia de valores agrupados.
Una tupla sirve para agrupar, como si fueran un nico
valor, varios valores que, por su naturaleza, deben ir
juntos.
M M (K, , . S, F)

K {q0, q1, q2, q3, q4, q5} aqu se identifica el conjunto de


estados del autmata.
Es un conjunto finito de smbolos {1,0, } este
corresponde al alfabeto de entrada. En nuestro caso
esto quiere decir la cadena que ingresamos para que
nuestro autmata realice sus respectivas validaciones
S Es el elemento de 0, llamado estado inicial. Para
nuestro caso este estado como su nombre es indicado
como estado inicial, es por donde la cadena ingresada
realizara su primera validacin o transicin.
F Es un subconjunto de , llamado conjunto de estados
finales o de aceptacin, en este caso es q5. Esto quiere
indicar que este es el ltimo estado de nuestro
autmata permitindonos conocer si la cadena
ingresada es aceptada o rechazada.
La relacin de transiciones para llegar a otro estado

4. Identifique el lenguaje que genera.

L={ { a ,b , c } ca bbab (abccb) }


El lenguaje generado por extension
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)

Grafico No. 1

Grafico No. 2

1Inicio de la secuencia en (q0) con la cadena (bbbabaabbcccb)


2

2Al ingresar el smbolo (b) al estado (q0) nos lleva al estado (q1)
Grafico No. 3

Grafico No. 4

3Al ingresar el smbolo (b) al estado (q1) nos lleva al estado (q1)

4Al ingresar el smbolo (b) al estado (q1) nos lleva al estado (q1), ya que
se ingresa dos veces
Grafico No. 5

Grafico No. 6

5Se ingresa el smbolo (a) al estado (q1) y nos lleva al estado (q2)

6Al estado (q2) se le ingresa el smbolo (b) y nos lleva al estado (q5) Estado de
aceptacin, pero la cadena continua.
Grafico No. 7

Grafico No. 8

7Al estado (q5) se le ingresa el smbolo (a) y nos lleva al estado (q5)
Estado de aceptacin o ciclo repetitivo, pero la cadena continua.

8 Al estado (q5) se le agrega el smbolo (a) nuevamente y nos lleva al


estado (q5)
Grafico No. 9

Grafico No. 10

10

9Al estado (q5) se le agrega el smbolo (b) y lo lleva al estado (q5), ya


que la en la ER tenemos la estrella de Kleene (*) que nos permite hacer
estos ciclos repetitivos.

10Nuevamente se agrega el smbolo (b) al estado (q5) y nos lleva al


estado (q5)
Grafico No. 11

11

Grafico No. 12

12

11Al estado (q5) le agregamos el smbolo (c) y nos lleva al estado (q3)

12Al estado (q3) le agregamos una (c) y nos lleva al estado (q3)
Grafico No. 13

13

Grfico No. 14

13Al estado (q3) le agregamos el smbolo (c) nuevamente y nos lleva al


estado (q3)repitiendo el ciclo14Al Estado (q3) le ingresamos el smbolo
(b) y este nos lleva al estado final o de aceptacin (q5), terminando la
secuencia, as demuestra que la cadena es vlida
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 JFLAP Diagrama De Moore VAS

Similitudes
1. Cada simulador nos permiten crear AFD y AFND.
2. Los dos simuladores nos permiten observar el recorrido paso a
paso de un autmata.
3. Los dos simuladores permiten la conversin a formato de imagen.
Diferencias
En cambio en jflap va colocando el Con el Diagrama de Moore Vas Al
estado segn el orden que tenga insertar los estados el simulador
q0, q1,q2 etc nos pide colocar a que numero de
estado se refiere

En Jflap se le dificulta sacar la lista En vas de una forma clara se


de las transiciones, ya que genera puede sacar un listado de
otras letras a los estados a lo que transiciones.
uno originalmente pone.
Jflap es muy completo para generar Vas es un simulador muy limitado,
un autnoma ya que posee muchos ya que no tiene varias de las
mens de opciones. funciones que maneja jflap
JFLAP VAS

Posee la opcin de convertir de AF a No posee esta opcin


expresin regular

Tiene 11 opciones para escoger la que Tiene 2 opciones para empezar a


se requiere para empezar a trabajar. trabajar.

No permite mostrar tabla de Permite visualizar la tabla de


transiciones. transiciones.

Permite establecer si una cadena es


aceptada o rechazada por el autmata

7. Genere tres cadenas vlidas y dos no vlidas.


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

El autmata anterior es un autmata finito no determinista. Podemos convertir en


un autmata finito determinista que sera:

En este caso reconocen el mismo lenguaje

1. Describa la forma matemtica del autmata

M =( { q0 q 1 q 2 q 3 } , {1,0 } , ,q 0 { q2 } )

2. Identifique los elementos (tupla que es) (Asociadas con los elementos del
autmata del ejercicio propuesto).

El autmata m finito est dado por M = (, K, q0, , F)


K = {q0, q1, q2, q3} Identifica los estados que puede tener la mquina
= {0,1} Identifica el alfabeto de entrada
s = q0 Es el estado inicial de la mquina
F = q1,q2,q3 Estados finales

Donde la funcin : (q0, q1, q2, q3) (1,0) (q0, q1, q2, q3) q0 q1 q2
q3 viene dada por las transiciones

(q0, 1) =q1

(q1, 1) =q2

(q2, 0) =q2

(q2, 1) =q2 final

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)

La cadena es: 1101


En esta imagen podemos apreciar que el autmata inicia en q0 que es el estado
inicial y pasa a q1 denotado con el alfabeto 1 como lo muestra la siguiente imagen
Po
demos mirar que del estado q1 paso a q2 por medio del alfabeto 1 y se queda ah
haciendo el ciclo en q3
Para concluir hace el ciclo repetitivo en q2 pasando por la cadena 01 en donde
finaliza y tenemos una cadena valida

5. Identifique la ER asociada al nuevo diseo y comprela con la expresin


regular simplificada (es decir analcelas con dos cadenas vlidas y con dos
no vlidas). Para ello debe identificar en una tabla la jerarqua de operadores
regulares, identificando con colores las sentencias matemticas.
ER autmata finito no determinista= (1*1(1+0)*(10+00))*1*1(1+0)*

ER autmata finito determinista= 1+11(1+0)*+101*(+0(1+0)*)

Cadena que recibe: 1101

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


0 1

11 01

CONCLUSIONES
Con la realizacin del anterior trabajo me queda ms claro el manejo de
lenguajes regulares y expresiones regulares con las cuales me di cuenta que
por muy complejas que sean las expresiones estn siempre tienen la meta de
cumplir un requerimiento dado.