Documente Academic
Documente Profesional
Documente Cultură
Todo proceso de comunicacin involucra un lenguaje. En la comunicacin entre personas se utilizan los llamados lenguajes naturales mientras que la comunicacin entre personas y mquinas se produce mediante los lenguajes artificiales [8].
Un lenguaje es un conjunto de palabras (o cadenas o sentencias o hileras o frases) formadas por smbolos de un alfabeto.
Llamaremos gramtica a la estructura del lenguaje, esto es: al conjunto de formas vlidas de combinar los smbolos del alfabeto [8].
Los lenguajes naturales existen de hecho, evolucionan con el tiempo y a travs de su uso, y las reglas que los describen se desarrollan con posterioridad a su aparicin. Los lenguajes formales, en cambio, se desarrollan a partir de reglas establecidas a priori, se desarrollan con un fin especfico y no cambian con el tiempo. Un autmata o mquina abstracta es un dispositivo terico que permite recibir y transmitir informacin, manipulando cadenas de smbolos de la entrada y dando cadenas de smbolos a la salida, segn estados internos que determinan esas salidas [8].
Las gramticas fueron estudiadas por el norteamericano Noam Abraham Chomsky (n. 1928) que en 1957 public su obra Syntactic Structures marcando un hito fundamental en el estudio de la lingstica. Chomsky agrup las gramticas en cuatro tipos:
El siguiente grfico ilustra la relacin entre las gramticas, puesto que cada tipo puede considerarse un caso particular de las de tipo ms general:
Cada gramtica G, de Tipo i, genera un lenguaje L(G), que tambin se dice de Tipo i, para i = 0, 1,2 y 3. Los autmatas comienzan con los estudios de Shannon, quien aplica a la lgica los llamados circuitos combinatorios y secuenciales, y posteriormente Moore publica un estudio riguroso sobre autmatas a fines de los aos 50 [8]. Existen correspondencias biunvocas entre lenguajes y gramticas, entre gramticas y autmatas y entre lenguajes y autmatas: una gramtica determina las reglas para decir si una cadena pertenece a un lenguaje; en base a ella se construye un autmata que reconoce las cadenas y decide si pertenecen al lenguaje o no. Los compiladores de los lenguajes de programacin y los editores de texto son ejemplos de autmatas [8]. Un alfabeto es un conjunto no vaco y finito de smbolos (letras, nmeros, signos de puntuacin, etc.) que indicaremos V (en algunos texto se lo indica ) Una palabra o cadena es una sucesin finita de smbolos de V. (Como nos vamos a ocupar de los lenguajes formales, es muy probable que las palabras con que trabajemos no tengan, para nosotros, ningn sentido desde el punto de vista del lenguaje espaol) [8].
La longitud de una palabra es el nmero de smbolos de V que la forman. La longitud de una palabra w se indica long(w) o w (o, en algunos textos, w ). Se indica con la palabra vaca, que no contiene ningn smbolo y tiene, por lo tanto longitud 0. Se llama universo de V, que se indica V*, al conjunto infinito de todas las palabras que se pueden formar con los caracteres de V. Por convencin V *. Un lenguaje sobre V, que se indica L(V), es cualquier subconjunto de V*. Para cada alfabeto existen infinitos lenguajes (tantos como subconjuntos tiene V*)
Definicin formal Un autmata finito no determinista (abreviado AFND) es un autmata finito que, a diferencia de los autmatas finitos deterministas (AFD), posee al menos un estado q Q, tal que para un smbolo a del alfabeto, existe ms de una transicin (q,a) posible [9]. En un AFND puede darse cualquiera de estos dos casos:
Que existan transiciones del tipo (q,), siendo q un estado no-final, o bien un estado final pero con transiciones hacia otros estados.
Cuando se cumple el segundo caso, se dice que el autmata es un autmata finito no determinista con transiciones vacas o transiciones (abreviado AFND-). Estas transiciones permiten al autmata cambiar de estado sin procesar ningn smbolo de entrada. Considrese una modificacin al modelo del autmata finito para permitirle ninguna, una o ms transiciones de un estado sobre el mismo smbolo de entrada [9]. Formalmente, si bien un autmata finito determinista se define como una 5-tupla (Q, , q0, , F) donde:
es un conjunto de estados; es un alfabeto; es el estado inicial; es una funcin de transicin; es un conjunto de estados finales o de aceptacin.
donde P(Q) es el conjunto potencia de Q. Esto significa que los autmatas finitos deterministas son un caso particular de los no deterministas, puesto que Q pertenece al conjunto P(Q).
La interpretacin que se suele hacer en el cmputo de un AFND es que el autmata puede pasar por varios estados a la vez, generndose una ramificacin de las configuraciones existentes en un momento dado. Asimismo, en un autmata finito no determinista podemos aceptar la existencia de ms de un nodo inicial [9]. Funcionamiento La mquina comienza en el estado inicial especificado y lee una cadena de caracteres pertenecientes al alfabeto. El autmata utiliza la funcin de transicin de estados T para determinar el siguiente estado, usando el estado actual y el smbolo que acaba de leer o la cadena vaca. Sin embargo, "el estado siguiente de un AFND no slo depende de el evento de entrada actual, sino que tambin en un nmero arbitrario de los eventos de entrada posterior. Hasta que se producen estos acontecimientos posteriores no es posible determinar en qu estado se encuentra la mquina. Cuando el autmata ha terminado de leer, y se encuentra en un estado de aceptacin, se dice que el AFND acepta la cadena, de lo contrario se dice que la cadena de caracteres es rechazada. Tanto para un AFND como para un autmata finito determinista (AFD) se puede aceptar el mismo lenguaje. Por lo tanto, es posible convertir un AFND existente en un AFD para el desarrollo de una mquina tal vez ms simple. Esto puede llevarse a cabo utilizando la construccin del conjunto potencia, que puede conducir a un aumento exponencial en el nmero de estados necesarios [9]. Ejemplo: Un autmata que reconoce las cadenas que contienen la subcadena aba:
Su definicin formal de este autnoma seria la siguiente: Q= {1,2} = {a,b} I={1} F={2} ={((1,a),1),((1,b),1),((1,aba),2),((2,a),2),((2,b),2)} Estados. Alfabeto (variables). Estado Inicial. Estado final. Funcin de transferencia
1- En el estado 1 al introducir a regresamos al estado 1 2- En el estado 1 al introducir b regresamos al estado 1 3- En el estado 1 al introducir aba pasamos al estado 2 4- En el estado 2 al introducir a regresamos al estado 2 5 En el estado 2 al introducir b regresamos al estado 2
6 Al pasar aba podemos deducir que el estado termina por que cualquier variable que se introduzca estar ciclando en el proceso (estado 2)
10
La manera para ejemplificar estos paso es construyendo una tabla de estados como se muestra a continuacin.
Alfabeto(varia bles)
a 1 2
1 2
b
1 2
aba
2 0
Estados
Ejemplo:
11
Definicin formal: Q= { = {a,c} I={ F={ ={(( } } ,a), ),(( ,a), ),(( ,b), ),(( ,c), ),(( ,a), ),(( ,b), } }
Tabla de transicin:
b
0
c
0
, 0
, 0 0
Dos tipos de Transductores: 1. Maquina de Moore Es un automata de estado finito donde las salidas son determinadas por el estado corriente solo (y no por la entrada). El diagrama incluye una seal de salida para cada estado. Utiliza solo acciones de entrada, la salida depende solamente del estado.
La ventaja es la simplificacin del comportamiento 12
Reconoce
dos
comandos:
comando_abrir
encendido
comando_cerrar o apagado que disparan la alteracin de estado. [13] La siguiente imagen es un ejemplo del mismo:
2. Mquina de Meadley:
A diferencia de una mquina de Moore , esta es un tipo de mquina de
estados finitos donde las salidas se generan como producto de la transicin entre los estados. En el siguiente ejemplo, la luz se ve afectada por el proceso de cambios de estado. [13]
Los AFN son ms fciles de disear De manera sorpresiva, para cualquier AFN N, existe un AFD D, tal que L(D)=L(N) y viceversa.
El mtodo empleado la conversin se conoce como Construccin de
Subconjuntos. [12]
14
Referencias.
[1] Jhenny Castillo Tapia; Introduccin a la teora de gramticas: Lenguajes
y autmatas; http://www.monografias.com/trabajos62/teoria-gramaticalenguaje-automata/teoria-gramatica-lenguaje-automata.shtml [2] Lenguajes, autmatas y calculabilidad ; http://www.fdi.ucm.es/profesor/vaquero/TALF/Cap1/1INTRODUCCI %C3%93N.doc [3] Stephen Brown y Zvonko Vranesic, del libro Fundamentos de Lgica Digital con diseo VHDL ,Captulo 8 [4] Angulo Usategui, Jos Maria. Electrnica Digital y Microprogramable. Cap 6. Editorial paraninfo.2007 [5] Calderon Vilca, Hugo David. MATEMTICAS DISCRETAS PARA LA CIENCIA COMPUTACIN, Editorial Pacfico,Per.2008 [6] GMEZ ANDRADE ABELARDO, TEORA DE LA COMPUTACIN, Universidad de Guadalajara, Texto para el curso impartido en el CUCEI
[7] S. Takahashi ; Autmatas de Estados Finitos ;
http://sistemas.uniandes.edu.co/~isis1106/dokuwiki/lib/exe/fetch.php? media=bibliografia:capitulo3.pdf [8] Silvia Seminara; Matemtica Discreta; http://www.clasesba.com.ar/utn/discreta/Unidad%20VI.pdf [9] Silvana Arias; Teora de autmatas; http://www.slideshare.net/equipolf/teoria-de-automatas [10] Teora de autmatas y lenguajes formales http://es.scribd.com/doc/60079964/55/RELACION-ENTRE-AUTOMATASY-GRAMATICAS
[11] Guillermo Morales-Luna , Autmanas no-deterministas
http://delta.cs.cinvestav.mx/~gmorales/ta/node6o.html
[12] Dr. Jos Raymundo Marcial Romero Autmata finito no determinista
http:// fi.uaemex.mx/rmarcial/LenguajesFormales/Clase4y5.ppt
15
16