fbpx
Wikipedia

Teoría de autómatas

Sistema combinacionalAutómata finitoAutómata con pilaMáquina de TuringTeoría de autómatas

La teoría de autómatas es una rama de la teoría de la computación que estudia las máquinas abstractas y los problemas que éstas son capaces de resolver. La teoría de autómatas está estrechamente relacionada con la teoría del lenguaje formal ya que los autómatas son clasificados a menudo por la clase de lenguajes formales que son capaces de reconocer. También son de gran utilidad en la teoría de la complejidad computacional.

Un autómata es un modelo matemático para una máquina de estado finito (FSM sus siglas en inglés). Una FSM es una máquina que, dada una entrada de símbolos, "salta" a través de una serie de estados de acuerdo a una función de transición (que puede ser expresada como una tabla). En la variedad común "Mealy" de FSMs, esta función de transición dice al autómata a qué estado cambiar dados unos determinados estado y símbolo.

La entrada es leída símbolo por símbolo, hasta que es "consumida" completamente (piense en ésta como una cinta con una palabra escrita en ella, que es leída por una cabeza lectora del autómata; la cabeza se mueve a lo largo de la cinta, leyendo un símbolo a la vez) una vez la entrada se ha agotado, el autómata se detiene.

Dependiendo del estado en el que el autómata finaliza se dice que este ha aceptado o rechazado la entrada. Si este termina en el estado "acepta", el autómata acepta la palabra. Si lo hace en el estado "rechaza", el autómata rechazó la palabra, el conjunto de todas las palabras aceptadas por el autómata constituyen el lenguaje aceptado por el mismo.

Vocabulario

Los conceptos básicos de símbolos, palabras, alfabetos y strings son comunes en la mayoría de las descripciones de los autómatas. Estos son:

Símbolo
Un dato arbitrario que tiene algún significado o efecto en la máquina. A estos símbolos también se les llama "letras" o "átomos".[1]
Palabra
Una cadena finita formada por la concatenación de un número de símbolos.
Alfabeto
Conjunto finito de símbolos. Un alfabeto se indica normalmente con  , que es el conjunto de letras en un alfabeto.
Lenguaje
Un conjunto de palabras, formado por símbolos en un alfabeto dado. Puede ser infinito.
Clausura de Kleene
Un lenguaje se puede considerar como un subconjunto de todas las posibles palabras. El conjunto de todas las palabras puede, a su vez, ser considerado como el conjunto de todas las posibles concatenaciones de cadenas. Formalmente, este conjunto de todas las cadenas se llama en inglés free monoid. Se indica como  , y el superíndice * se llama la estrella de Kleene.

Autómatas finitos

Formalmente, un autómata finito (AF) puede ser descrito como una 5-tupla  .

Existen tres tipos de autómatas finitos

Autómata finito determinista (AFD)
Cada estado de un autómata de este tipo puede o no tener una transición por cada símbolo del alfabeto.
 
AFD.
Autómata finito no determinista (AFND)
: Los estados de un autómata de este tipo pueden, o no, tener una o más transiciones por cada símbolo del alfabeto. El autómata acepta una palabra si existe al menos un camino desde el estado q0 a un estado final F etiquetado con la palabra de entrada. Si una transición no está definida, de manera que el autómata no puede saber como continuar leyendo la entrada, la palabra es rechazada.
Autómata finito no determinista con transiciones ε (AFND-ε)
Además de ser capaz de alcanzar más estados leyendo un símbolo, permite alcanzarlos sin leer ningún símbolo. Si un estado tiene transiciones etiquetadas con  , entonces el AFND puede encontrarse en cualquier de los estados alcanzables por las transiciones  , directamente o a través de otros estados con transiciones  . El conjunto de estados que pueden ser alcanzados mediante este método desde un estado q, se denomina la clausura   de q.

Sin embargo, puede observarse que todos estos tipos de autómatas pueden aceptar los mismos lenguajes. Siempre se puede construir un AFD que acepte el mismo lenguaje que el dado por un AFND.

 
AFND con transiciones vacías.

Extensiones a los autómatas finitos

Los lenguajes aceptados por los autómatas descritos más arriba se denominan lenguajes regulares. Autómatas más potentes pueden aceptar lenguajes más complejos. Algunos de estos autómatas son:

Autómata con pila
Son máquinas idénticas a los AFD (o AFI), exceptuando el hecho de que disponen de una memoria adicional, haciendo uso de una pila. La función de transición   ahora dependerá también de los símbolos que se encuentren al principio de la pila. Esta función determinará como cambia la pila en cada transición. Este tipo de autómatas aceptan los lenguajes independientes del contexto.
Autómata linealmente acotado
Se trata de una máquina de Turing limitada en la cantidad de cinta o memoria que posee. Las computadoras de propósito general que existen físicamente son equivalentes a estas máquinas.
Máquina de Turing
Son las máquinas computacionales más potentes (junto con otros sistemas equivalentes no basados en autómatas. Ver tesis de Church-Turing). Poseen una memoria infinita en forma de cinta, así como un cabezal que puede leer y cambiar esta cinta, y moverse en cualquier dirección a lo largo de la cinta.

Véase también

Enlaces externos

  • JFLAP
  • dk.brics.automaton
  • Exorciser (en alemán)

Referencias

  1. . Archivado desde el original el 20 de marzo de 2009. Consultado el 29 de junio de 2009. 
  •   Datos: Q214526
  •   Multimedia: Automata theory

teoría, autómatas, este, artículo, sección, necesita, referencias, aparezcan, publicación, acreditada, este, aviso, puesto, enero, 2018, teoría, autómatas, rama, teoría, computación, estudia, máquinas, abstractas, problemas, éstas, capaces, resolver, teoría, a. Este articulo o seccion necesita referencias que aparezcan en una publicacion acreditada Este aviso fue puesto el 28 de enero de 2018 La teoria de automatas es una rama de la teoria de la computacion que estudia las maquinas abstractas y los problemas que estas son capaces de resolver La teoria de automatas esta estrechamente relacionada con la teoria del lenguaje formal ya que los automatas son clasificados a menudo por la clase de lenguajes formales que son capaces de reconocer Tambien son de gran utilidad en la teoria de la complejidad computacional Un automata es un modelo matematico para una maquina de estado finito FSM sus siglas en ingles Una FSM es una maquina que dada una entrada de simbolos salta a traves de una serie de estados de acuerdo a una funcion de transicion que puede ser expresada como una tabla En la variedad comun Mealy de FSMs esta funcion de transicion dice al automata a que estado cambiar dados unos determinados estado y simbolo La entrada es leida simbolo por simbolo hasta que es consumida completamente piense en esta como una cinta con una palabra escrita en ella que es leida por una cabeza lectora del automata la cabeza se mueve a lo largo de la cinta leyendo un simbolo a la vez una vez la entrada se ha agotado el automata se detiene Dependiendo del estado en el que el automata finaliza se dice que este ha aceptado o rechazado la entrada Si este termina en el estado acepta el automata acepta la palabra Si lo hace en el estado rechaza el automata rechazo la palabra el conjunto de todas las palabras aceptadas por el automata constituyen el lenguaje aceptado por el mismo Indice 1 Vocabulario 2 Automatas finitos 2 1 Extensiones a los automatas finitos 3 Vease tambien 4 Enlaces externos 5 ReferenciasVocabulario EditarLos conceptos basicos de simbolos palabras alfabetos y strings son comunes en la mayoria de las descripciones de los automatas Estos son Simbolo Un dato arbitrario que tiene algun significado o efecto en la maquina A estos simbolos tambien se les llama letras o atomos 1 Palabra Una cadena finita formada por la concatenacion de un numero de simbolos Alfabeto Conjunto finito de simbolos Un alfabeto se indica normalmente con S displaystyle Sigma que es el conjunto de letras en un alfabeto Lenguaje Un conjunto de palabras formado por simbolos en un alfabeto dado Puede ser infinito Clausura de Kleene Un lenguaje se puede considerar como un subconjunto de todas las posibles palabras El conjunto de todas las palabras puede a su vez ser considerado como el conjunto de todas las posibles concatenaciones de cadenas Formalmente este conjunto de todas las cadenas se llama en ingles free monoid Se indica como S displaystyle Sigma y el superindice se llama la estrella de Kleene Automatas finitos EditarFormalmente un automata finito AF puede ser descrito como una 5 tupla Q S d S 0 F displaystyle langle Q Sigma delta S 0 F rangle Existen tres tipos de automatas finitos Automata finito determinista AFD Cada estado de un automata de este tipo puede o no tener una transicion por cada simbolo del alfabeto AFD Automata finito no determinista AFND Vease tambien Cadena de Markov Los estados de un automata de este tipo pueden o no tener una o mas transiciones por cada simbolo del alfabeto El automata acepta una palabra si existe al menos un camino desde el estado q0 a un estado final F etiquetado con la palabra de entrada Si una transicion no esta definida de manera que el automata no puede saber como continuar leyendo la entrada la palabra es rechazada Automata finito no determinista con transiciones e AFND e Ademas de ser capaz de alcanzar mas estados leyendo un simbolo permite alcanzarlos sin leer ningun simbolo Si un estado tiene transiciones etiquetadas con ϵ displaystyle epsilon entonces el AFND puede encontrarse en cualquier de los estados alcanzables por las transiciones ϵ displaystyle epsilon directamente o a traves de otros estados con transiciones ϵ displaystyle epsilon El conjunto de estados que pueden ser alcanzados mediante este metodo desde un estado q se denomina la clausura ϵ displaystyle epsilon de q Sin embargo puede observarse que todos estos tipos de automatas pueden aceptar los mismos lenguajes Siempre se puede construir un AFD que acepte el mismo lenguaje que el dado por un AFND AFND con transiciones vacias Extensiones a los automatas finitos Editar Vease tambien Jerarquia de Chomsky Los lenguajes aceptados por los automatas descritos mas arriba se denominan lenguajes regulares Automatas mas potentes pueden aceptar lenguajes mas complejos Algunos de estos automatas son Automata con pila Son maquinas identicas a los AFD o AFI exceptuando el hecho de que disponen de una memoria adicional haciendo uso de una pila La funcion de transicion d displaystyle delta ahora dependera tambien de los simbolos que se encuentren al principio de la pila Esta funcion determinara como cambia la pila en cada transicion Este tipo de automatas aceptan los lenguajes independientes del contexto Automata linealmente acotado Se trata de una maquina de Turing limitada en la cantidad de cinta o memoria que posee Las computadoras de proposito general que existen fisicamente son equivalentes a estas maquinas Maquina de Turing Son las maquinas computacionales mas potentes junto con otros sistemas equivalentes no basados en automatas Ver tesis de Church Turing Poseen una memoria infinita en forma de cinta asi como un cabezal que puede leer y cambiar esta cinta y moverse en cualquier direccion a lo largo de la cinta Vease tambien EditarSistema combinacional Automata finito Automata con pila Maquina de Turing Maquina abstracta Cadena de MarkovEnlaces externos EditarJFLAP dk brics automaton Exorciser en aleman Referencias Editar page 81 of Archivado desde el original el 20 de marzo de 2009 Consultado el 29 de junio de 2009 Datos Q214526 Multimedia Automata theoryObtenido de https es wikipedia org w index php title Teoria de automatas amp oldid 129745302, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos