Upload
jonathan-arango
View
223
Download
0
Embed Size (px)
Citation preview
7/27/2019 Trabajo Colaborativo1 Automatas
1/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
AUTOMATAS Y LENGUAJES FORMALES
ACTIVIDAD N 6
TRABAJO COLABORATIVO 1
CRDENAS MOYA JOS GABRIEL
CC 93. 296. 319
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAUNAD
CEAD ACACIAS META
NOVENO SEMESTRE
INGENIERA DE SISTEMAS
ABRIL -2013
7/27/2019 Trabajo Colaborativo1 Automatas
2/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
AUTOMATAS Y LENGUAJES FORMALES
ACTIVIDAD N 6TRABAJO COLABORATIVO 1
CRDENAS MOYA JOS GABRIEL
TUTOR: ING JAIME VALDES
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA
UNAD
CEAD ACACIAS META
NOVENO SEMESTRE
7/27/2019 Trabajo Colaborativo1 Automatas
3/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
INGENIERA DE SISTEMAS
ABRIL -2013
INTRODUCCION
Los autmatas vienen a ser mecanismos formales que realizan derivaciones engramticas formales. La manera en que las realizan es mediante la nocin dereconocimiento. Una palabra ser generada en una gramtica si y slo si lapalabra hace transitar al autmata correspondiente a sus condiciones terminales.Por esto es que los autmatas son analizadores lxicos (llamados en inglsparsers'') de las gramticas a que corresponden.
7/27/2019 Trabajo Colaborativo1 Automatas
4/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
OBJETIVOS
Objetivo general
Reconocer los lenguajes regulares, autmatas finitos y su aplicacin.
Objetivos especficos
Analizar la aplicacin de los lenguajes regulares y los autmatas finitos. Adquirir las habilidades necesarias para desarrollar autmatas y mquinas que
reconozcan lenguajes o computen funciones.
Distinguir los diferentes tipos de lenguajes formales existentes.
Adquirir el conocimiento y competencia para poder recrear autmatas sencillosen un simulador. De igual forma verificar el lenguaje que reconoce.
7/27/2019 Trabajo Colaborativo1 Automatas
5/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
MARCO CONCEPTUAL
1 AUTMATASFINITOS
1.1 AUTMATASFINITOSDETERMINSTICOS (AFD)
Es un modelo matemtico de un sistema con un conjunto discreto deentradas y salidas.
El sistema puede estar en cualquier configuracin interna o estado, loscuales aparecen en un nmero finito.
Ejemplos (sistemas de estados finitos)1.- el mecanismo de control de un elevador
2.- Editores de texto y analizadores de lxico en los compiladores.
3.- Una computadora pudiera ser vista como un sistema de estado finito.
4.- El cerebro humano se puede considerar un sistema de estado finito. elnmero de neuronas o clulas cerebrales es limitado a lo sumo 235. Si el estado decada neurona pudiera describirse mediante un nmero pequeo de bits, entoncess, pero en general esto no es as y en realidad lo que se tiene es que tal nmerode estados es excesivamente grande y es poco probable este modelo.
CONCEPTO:Un AFD es una 5 tupla o quinteta ( |, L, F, A, s*) donde:
1. Un conjunto finito | de simbolos de entrada.2. Un conjunto finito L de estados3. Una funcin estado siguiente o transicin f de | x L en L4. Un subconjunto A de L de estados aceptados5. Un estado inicial s* L
Definicin:Dispositivo que tiene un nmero finito de estados, uno de los cuales es el estado
inicial y, por lo menos uno, es un estado de aceptacin.
7/27/2019 Trabajo Colaborativo1 Automatas
6/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
Definicin formal
Un AFD es una quntupla (I, L, f, A, s*) Donde:
I conjunto finito de smbolos de entrada L conjunto finito de estados de transicin f funcin de transicin de I x L en L A conjunto de estados de aceptacin L
s* estado inicial L
Ejemplo
7/27/2019 Trabajo Colaborativo1 Automatas
7/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
1.1.2 AUTMATASFINITOSNODETERMINSTICOS (AFN)
Si tratamos de definir el trmino autmata finito no determinista, veremos que
la mayor parte de la definicin se puede obtener a partir de la de AFD. Es decir,
tendremos un conjunto finito de estados L, un alfabeto de entrada I, un estado
inicial o de partida s*, un conjunto de estados aceptados A y una regla de
transicin. La nica diferencia que existe se encuentra en las reglas de transicin.
En un AFN, las reglas asocian pares (S, q) con Cero o ms estados. Se puede
decir que las reglas relacionan pares (S, q) con colecciones de conjuntos de
estados.
Esto conduce a una diferencia significativa entre un autmata de estado finito
no determinstico y un autmata de estado finito que en ste ltimo la funcin de
7/27/2019 Trabajo Colaborativo1 Automatas
8/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
estado siguiente conduce a un estado unvocamente determinado, mientras que
en un AFN la funcin de estado siguiente lleva a un conjunto de estados.
CONCEPTO:Un AFND es una 5 tupla o quinteta ( |, A, L, s*, f) donde:1. Un conjunto finito | de simbolos de entrada.2. Un conjunto finito L de estados3. Un subconjunto A de L de estados aceptados4. Un estado inicial s* L5. Una funcin f es una relacin sobre ( L x | ) X L llamada relacin de
transicin
DefinicinDispositivo que tiene un nmero finito de estados, algunos de los cuales son los
estados iniciales y, por lo menos uno, es un estado de aceptacin.Cada estado tiene que discernir entre un conjunto de caminos vlidos,examinando si estos conducen a un estado de aceptacin; nada permitediferenciar entre dos caminos hechos por el mismo smbolo de entrada
Definicin formalUn AFND es una quntupla (I, L, f, A, s*)
Donde: I conjunto finito de smbolos de entrada. L conjunto finito de estados de transicin f relacin de transicin en I x L sobre L A conjunto de estados aceptados L s* estados iniciales L
7/27/2019 Trabajo Colaborativo1 Automatas
9/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
2.1 Expresiones regulares.
Relacin entre Expresiones Regulares y Lenguajes regulares.
Como la terminologa sugiere, la conexin entre lenguajes regulares yexpresiones regulares es muy estrecha. Los dos conceptos son esencialmente elmismo; para cada lenguaje regular existe una expresin regular, y para cadaexpresin regular existe un lenguaje regular.Las Expresiones Regulares denotan lenguajes regulares
Primero mostramos que si r es una expresin regular, entonces L(r) es unlenguaje regular. Nuestra definicin dice que un lenguaje es regular si es aceptadopor algn AFD. Debido a la equivalencia entre AFD y AFN, un lenguaje es tambinregular si es aceptado por un AFN.
Teorema. Un lenguaje es regular si es aceptado por un AF.
La prueba consiste en dar un procedimiento para transformar en forma sistemticauna ER en una AF que acepte su lenguaje. El objetivo es convertir una ExpresinRegular en un AF
7/27/2019 Trabajo Colaborativo1 Automatas
10/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
EJERCICIOS PROPUESTOS
1. Para los siguientes ejercicios identifique el lenguaje que reconoce y plasmecinco posibles cadenas vlidas que representan esa ER:si A = {a,b,c}
1 c) (a +b) = {a,b} , {aab},{aaabaa},{aabaa,{baab}2 d) (a + b ) * = {aba} , {aab} , {abaa,aaba}, {abaaa,aa,ab}, {baabaa}3 e) (a+ )b* ={ab},{bab},{abaab},{a...babab}4 f) a (ab)* = {aab},{aaba},{aabaab},{aabaabaaab}, {aabaababaaab}5 g) ={ *}, {* }
si A = {0,1}1 h) 000 = {01},{0010},{0100},{010101110},{00100010001}2 i) 10* + 1 ={101}, {10110}, {101101},{101101101},{10110101101101010}3 j) 01* + 0 = {010}, {0101},{01001},{01001010},{01001}4 k) (1 110) * ={110},{110110},{110110110},{1101101101101110}5 l) (1 + 10) + ={110},{101},{10101},{1110111},{10110101110}6 m) 1* 0* ={01},{10},{101},{010},{110111001}7 n) 00* 11* ={0011},{1100},{11001100},{00110000},{00110011111101}
o)(0+1)*11(1+0)*={110101},{111101},{111101101},{1101011111},{1111011}
2. Partiendo de la definicin de que un Autmata Finito Determinstico (AFD) estdado por la quntupla: A = (Q, , f, q 0 , F) donde: Q es un conjunto de estados. es el alfabeto de entrada f: Q X Q es la funcin (total) de transicin. q 0 Q es el estado inicial. F Q es el conjunto de estados finales.Y que para el ejercicio, el autmata se define como:, A = ({q 0 , q1 , q 2 , q 3 } , {0,1} , f , q 0 , { q 2 })Representado mediante el grafo:
7/27/2019 Trabajo Colaborativo1 Automatas
11/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
E N UN SIMULADOR (YA SEA JFLAP O VAS)
Plsmelo en el simuladorRealice la tabla de transicin correspondiente.Compruebe el lenguaje aceptadoIdentifique la expresin regular que permite identificar que cadenas son vlidas y queacepta el autmata.Identifique que denotacin de estados est errada y corrjala.
SOLUCIONPlsmelo en el simulador
7/27/2019 Trabajo Colaborativo1 Automatas
12/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
7/27/2019 Trabajo Colaborativo1 Automatas
13/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
Compruebe el lenguaje aceptadol= (01) *1
Observamos en las figuras que el autmata acepta el lenguaje y llega al estado de
aceptacin. Se observa tambin que el autmata fue montado con el software Jflap.
Compruebe el lenguaje aceptadol= (01) *1 Este autmata acepta las cadenas 01 seguidas de un 1
Observamos en las figuras que el autmata acepta el lenguaje y llega alestado de aceptacin. Se observa tambin que el autmata fue montado
con el software Jflap.
3. Acorde al autmata del ejercicio N 2, Realice:
Identifique si es un AFD AFND y justifique por qu. Si dado el caso es un AFND convirtalo en el simulador a un AFD y plsmelo
en el trabajo sus cadenas vlidas. Analice si son las mismas cadenas queacepta al autmata antes de convertirlo.
El nuevo AFND debe plasmarlo en el simulador. Compruebe el lenguaje aceptado
7/27/2019 Trabajo Colaborativo1 Automatas
14/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
Identifique la expresin regular que permite identificar que cadenas son vlidasy que acepta el autmata.
Analice si la ER y el Lenguaje aceptado es el mismo o no al ejercicio Nmero2. Justifique sus respuestas.
7/27/2019 Trabajo Colaborativo1 Automatas
15/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
CONCLUSIONES
Est claro que cualquier AFD tambin es un AFND, es decir, si L es un lenguajeaceptado por un AFD, tambin est aceptado por un AFND. Simplemente existecomo mucho una sola transicin para cada smbolo del alfabeta y para cadaestado.Pero tambin podemos construir para cada AFND un AFD equivalente, es decir,un autmata determinista que acepta el mismo lenguaje.
7/27/2019 Trabajo Colaborativo1 Automatas
16/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.
BIBLIOGRAFA
Modulo de autmatas y lenguajes formales, QUIROGA ROJAS, EDGAR,BOGOTA DC, COLOMBIA, 2008.
http://alipso.com/monografias/2561_automatas2/
http://alipso.com/monografias/2561_automatas2/http://alipso.com/monografias/2561_automatas2/7/27/2019 Trabajo Colaborativo1 Automatas
17/17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIAEscuela de Ciencias Bsicas Tecnologa E Ingeniera
Autmatas y Lenguajes Formales.