Documente Academic
Documente Profesional
Documente Cultură
Autmatafinito
DeWikipedia,laenciclopedialibre
Unautmatafinito(AF)omquinadeestadofinitoesun
modelo computacional que realiza cmputos en forma
automticasobreunaentradaparaproducirunasalida.
Estemodeloestconformadoporunalfabeto,unconjuntode
estadosfinito,unafuncindetransicin,unestadoinicialy
unconjuntodeestadosfinales.Sufuncionamientosebasaen
una funcin de transicin, que recibe a partir de un estado
inicialunacadenadecaracterespertenecientesalalfabeto(la
entrada), y que va leyendo dicha cadena a medida que el
autmata se desplaza de un estado a otro, para finalmente
detenerseenunestadofinalodeaceptacin,querepresenta
lasalida.
Lafinalidaddelosautmatasfinitosesladereconocerlenguajesregulares,quecorrespondenaloslenguajes
formalesmssimplessegnlaJerarquadeChomsky.
ndice
1 Historia
2 Definicinformal
2.1 Representacincomodiagramasdeestados
2.2 Representacincomotabladetransiciones
2.3 Funcionamiento
2.4 Generalizacindelafuncindetransicin
3 Autmatafinitodeterminista
4 Autmatafinitonodeterminista
5 Equivalenciasentreautmatasfinitos
5.1 ConversindeunAFNDaunAFND
5.2 ConversindeunAFNDaunAFD
5.3 MinimizacindeunAFD
6 Generalizacionesdeautmatasfinitos
7 Vasetambin
8 Referencias
8.1 Bibliografa
9 Enlacesexternos
Historia
Elorigendelosautmatasfinitosprobablementeseremontaasuusoimplcitoenmquinaselectromecnicas,
desdeprincipiosdelsigloXX.1Yaen1907,elmatemticorusoAndriMrkovformalizunprocesollamado
cadena de Markov, donde la ocurrencia de cada evento depende con una cierta probabilidad del evento
anterior.2 Esta capacidad de "recordar" es utilizada posteriormente por los autmatas finitos, que poseen una
memoriaprimitivasimilar,enquelaactivacindeunestadotambindependedelestadoanterior,ascomodel
smboloopalabrapresenteenlafuncindetransicin.
https://es.wikipedia.org/wiki/Aut%C3%B3mata_finito 1/9
2017530 AutmatafinitoWikipedia,laenciclopedialibre
Definicinformal
Formalmente,unautmatafinitoesuna5tupla(Q,,q0,,F)donde:6
esunconjuntofinitodeestados
esunalfabetofinito
eselestadoinicial
esunafuncindetransicin
esunconjuntodeestadosfinalesodeaceptacin.
Representacincomodiagramasdeestados
Los autmatas finitos se pueden representar mediante grafos
particulares,tambinllamadosdiagramas de estados finitos,dela
siguientemanera:
LosestadosQserepresentancomovrtices,etiquetadoscon
sunombreenelinterior.
Unatransicin desde un estado a otro, dependiente de un
smbolo del alfabeto, se representa mediante una arista
dirigida que une a estos vrtices, y que est etiquetada con
dichosmbolo. Esteautmatafinitoestdefinidosobreel
El estado inicial q0 se caracteriza por tener una arista que alfabeto={0,1},poseedosestadoss1y
llegaal,provenientedeningnotrovrtice. s2,ysustransicionesson(s1,0)=s2,
El o los estados finales F se representan mediante vrtices (s1,1)=s1,(s2,0)=s1y(s2,1)=s2.Su
queestnencerradosasuvezporotracircunferencia. estadoinicialess1,queestambinsu
nicoestadofinal.
Representacincomotabladetransiciones
Otramaneradedescribirelfuncionamientodeunautmatafinitoesmedianteelusodetablasdetransiciones
omatricesdeestados.Dosposiblestablasparaelejemplodelaimagenanteriorpodranserlassiguientes:
La primera representa explcitamente los parmetros y el valor que toma cada ocurrencia de la funcin de
transicin.7 La segunda es ms compacta, y marca con una flecha el estado inicial, y con un asterisco los
estadosfinales.
Funcionamiento
En el comienzo del proceso de reconocimiento de una cadena de
entrada, el autmata finito se encuentra en el estado inicial y a
medida que procesa cada smbolo de la cadena va cambiando de
estado de acuerdo a lo determinado por la funcin de transicin.
Cuandosehaprocesadoelltimodelossmbolosdelacadenade
entrada,elautmatasedetieneenelestadofinaldelproceso.Siel
estado final en el que se detuvo es un estado de aceptacin,
entonces la cadena pertenece al lenguaje reconocido por el
autmata en caso contrario, la cadena no pertenece a dicho Elesquemageneraleseldeunacinta
lenguaje. lectoraqueavanzaslohaciadelanteydea
unacelda,segnlafuncindetransicin.
Note que el estado inicial de un autmata finito siempre es
nico,entantoquelosestadosfinalespuedensermsdeuno,esdecir,elconjunto puedecontenermsdeun
elemento.Tambinpuededarseelcasodequeunestadofinalcorrespondaalmismoestadoinicial.
Generalizacindelafuncindetransicin
Si es un alfabeto, entonces se denota * al conjunto de todas las cadenasdecaracteres o palabras que se
puedenconformarcondichoalfabeto.
Una funcin de transicin se puede generalizar a una funcin *, que opera sobre estados y secuencias de
smbolos, en lugar de smbolos individuales del alfabeto. As, esta nueva funcin de transicin se define
,permitiendocaracterizarlosautmatasdemaneramsabreviadaysinperderexpresividad.6
Lafuncin*puedeexpresarsetambindemanerarecursiva,definiendoparatodacadenax*,todosmbolo
a,yunestadoqQ:6
,queeslabaseinductiva,siendolacadenavaca,y
,queeslainduccinpropiamentetal.
Sellamaconfiguracindeunautmatafinitoaun"instante"enelcmputodelamquinaesdecir,alestado
actual en que se encuentra dicho cmputo, junto con la palabra que ha sido procesada hasta ese momento.
Formalmente, se define como un par ordenado (q, x) Q *. De este modo, se puede definir adems la
configuracininicialdelautmata,comoelpar(q0,x),dondexeslaentradaylaconfiguracinfinal,comoel
par(q,),conqF.
De este modo, el lenguaje regular aceptado por un autmata finito A puede denotarse como L(A) = {w *
(q0,w)F},esdecir,comoelconjuntodetodaslasconfiguracionesinicialesqueconllevanaestadosfinales.
Autmatafinitodeterminista
https://es.wikipedia.org/wiki/Aut%C3%B3mata_finito 3/9
2017530 AutmatafinitoWikipedia,laenciclopedialibre
Unautmatafinitodeterminista(abreviadoAFD) es un autmata
finito que adems es un sistema determinista es decir, para cada
estado q Q en que se encuentre el autmata, y con cualquier
smbolo a del alfabeto ledo, existe siempre a lo ms una
transicinposible(q,a).
EnunAFDnopuedendarseningunodeestosdoscasos:
enunAFNDsedefinecomo: AFNDacuyoestado2se
puedeaccederpasandoporel
estado3,sinprocesarsmbolos
deentrada.
ParaelcasodelosAFND,sesueleexpresarlafuncindetransicindela
forma:
dondeP(Q)eselconjuntopotenciadeQ.
Estosignificaquelosautmatasfinitosdeterministassonuncasoparticulardelosnodeterministas,puestoque
QpertenecealconjuntoP(Q).
https://es.wikipedia.org/wiki/Aut%C3%B3mata_finito 4/9
2017530 AutmatafinitoWikipedia,laenciclopedialibre
La interpretacin que se suele hacer en el cmputo de un AFND es que el automta puede estar en varios
estados a la vez, generndose una ramificacin de las configuraciones existentes en un momento dado. Otra
interpretacinpuedeserimaginarquelamquina"adivina"aquestadodebeir,eligiendounatransicinentre
variasposibles.
Notefinalmentequeenunautmatafinitonodeterministapodemosaceptarlaexistenciademsdeunnodo
inicial,relajandoanmsladefinicinoriginal.
Equivalenciasentreautmatasfinitos
Sedicequedosautmatasfinitossonequivalentes,siambosreconocenelmismolenguajeregular.
Todaexpresinregular(quedefineasuvezunlenguajeregular)puedeserexpresadacomounautmatafinito
determinista,8yviceversa.9Dadaunaexpresinregular,esposibleconstruirunAFNDquereconozcadicho
lenguaje,porejemplo mediante elalgoritmodeThompson. Luego, todo AFND puede transformarse en un
AFND equivalente, as como todo AFND puede transformarse en un AFD equivalente, mediante el mtodo
llamado construccin de conjunto potencia. As, por transitividad, para cualquier autmata finito no
deterministasiempreexisteunautmatafinitodeterministaequivalente,yviceversa.3
Normalmenteeneldiseodeautmatasfinitos,loprimeroquesehaceesconstruirunAFND,queeselms
sencillo de construir, por poseer menos restricciones en su funcin de transiciones. Luego dicho autmata se
reduce a un AFND, y finalmente a un AFD, el cual por sus caractersticas deterministas ya puede ser
implementadosinproblemasutilizandounlenguajedeprogramacin.
ConversindeunAFNDaunAFND
La conversin de un AFND en un AFND se basa en el concepto de clausura, que corresponde a una
clausuratransitivacontextualizadaenlateoradeautmatas.
Dadounestadoq,sellamaclausura(q)alconjuntodetodoslosestadosalosquesepuedeaccederapartirde
q, procesndose a lo ms un nico smbolo de la entrada. Puede definirse recursivamente de la siguiente
manera:10
(Baseinductiva)Paratodoestadoq,qclausura(q).
(Induccin)Dadosdosestadospyr,sipclausura(q)yr(p,),entoncesrclausura(q).
Elalgoritmoparaeliminarlastransicionesvacaseselsiguiente:
1.Secalculalaclausuradelestadoinicial,formndoseunconjuntoAquecorresponderalestadoinicial
delnuevoautmata.
2.Paracadasmbolodelalfabeto,severificanlosestadosalcanzablesapartirdealgnestadocontenidoen
A, y se calcula la clausura de dichos estados alcanzables. Si dichas clausuras producen nuevos
conjuntos distintos de A, estos sern nuevos estados a los que se acceder a partir de A y del smbolo
correspondiente.
3.Se repite lo anterior para cada nuevo conjunto, hasta que no existan transiciones posibles para ningn
smbolodelalfabeto.
Ejemplo
Enelejemplodelafigura,setendrinicialmente:
clausura(1)={1,2,3,4,6}=A
ParaA:
Paraelsmboloa:4vaa5,yclausura(5)={5,7}=B.
https://es.wikipedia.org/wiki/Aut%C3%B3mata_finito 5/9
2017530 AutmatafinitoWikipedia,laenciclopedialibre
ParaC: AFNDinicial.
EnalgunoscasospuedeocurrirquealquitarlastransicionespsilonobtengamosdirectamenteunAFD,puesla
nicarazndenodeterminismoerajustamentelapresenciadedichastransiciones.
ConversindeunAFNDaunAFD
Todo AFND (QN, , q0, N, FN) puede convertirse en un AFD ConversindeunAFNDaunAFD.
(QD,,q0, D, FD) equivalente, que mantiene el alfabeto y el
estado inicial q0 originales. La conversin implica pasar por un
AFDintermedioconestadosytransicionesredundantes,quealno
ser accesibles a partir del estado inicial, son eliminados para
AFNDinicial.
obtenerelAFDdefinitivo.
1.PrimeroseredefineelconjuntodeestadosQN={q0,q1,...,
qm} original, como uno conformado por todos los
subconjuntosdeQN.Losnuevosestadosfinalesserntodos
aquellos estados que contengan a alguno de los estados
finalesoriginales.
Procesodeconversin.
2.Posteriormente, se redefine el conjunto de transiciones
original,portransicionesdeltipoD(S,a),dondea,ySes
launindetodoslosestadosqdeQNparaloscualesexista
latransicinN(q,a).
3.Por ltimo, se eliminan los estados inaccesibles o
inalcanzables(juntoconsustransicionesdesalida),esdecir,
aquellos a los que no se puede acceder a partir del estado
inicial.Luegodeestadepuracin,seobtieneelAFDfinal.
Ejemplo
AFDfinal.
Enlasfigurasdeejemplo,comoelAFNDinicialposeetresestados
(q0,q1,q2),entonceselAFDintermedioposeersiete({q0},{q1},{q2},{q0,q1},{q0,q2},{q1,q2},{q0,q1,
q2}),ycomoelestadofinaloriginaleraq2,entonceslosestadosfinalesdelAFDintermedioson{q2},{q0,q2},
{q1,q2}y{q0,q1,q2}.Conrespectoalasnuevastransiciones,noteporejemploquesemantuvolatransicin
N(q0,1)=q0, siendo ahora llamada D({q0},1)={q0} sin embargo, dado que originalmente se daba que
https://es.wikipedia.org/wiki/Aut%C3%B3mata_finito 6/9
2017530 AutmatafinitoWikipedia,laenciclopedialibre
N(q0,0)=q0yN(q0,0)=q1, ahora estas dos transiciones fueron reemplazadas por D({q0},0)={q0, q1}. Para
terminar,notequelosestados{q1},{q2}y{q1,q2}noestnconectadosconelrestodelautmataqueposeeel
estadoinicialportanto, son eliminados. Asimismo es eliminado tambin {q0,q1,q2}, pues a pesar de estar
conectadoconelrestodelautmata,noesaccesibleapartirde{q0}.Asfinalmente,eliminandoestoscuatro
estados,ascomosusrespectivastransiciones,seobtieneelAFDbuscado.
MinimizacindeunAFD
Dosestadosdeunautmatafinitodeterministasonestadosequivalentessialunirseenunsloestado,pueden
reconocerelmismolenguajeregularquesiestuviesenseparados.Estaunindeestadosimplicalaunintanto
de sus transiciones de entrada como de salida. Si dos estados no son equivalentes, se dice que son estados
distinguibles.Unestadofinalconunestadonofinalnuncasernequivalentes.
UnAFDestminimizado,sitodossusestadossondistinguiblesyalcanzables.Unalgoritmodeminimizacin
deAFDeselsiguiente:
1.Eliminarlosestadosinaccesiblesdelautmata.
2.Construirunatablacontodoslospares(p,q)deestadosrestantes.
3.Marcarenlatablaaquellasentradasdondeunestadoesfinalyelotroesnofinal,esdecir,aquellospares
deestadosquesonclaramentedistinguibles.
4.Paracadapar(p,q)ycadasmboloadelalfabeto,talquer=(p,a)ys=(q,a):
1.Si (r, s) ya ha sido marcado, entonces p y q tambin son distinguibles, por lo tanto marcar la
entrada(p,q).
2.Delocontrario,colocar(p,q)enunalistaasociadaalaentrada(r,s).
5.Agruparlosparesdeestadosnomarcados.
Luegodeltercerpaso,silatablacreadaquedacompletamentemarcada,entonceselAFDinicialyaeramnimo.
LacomplejidadcomputacionaldelproblemademinimizarunAFDespolinomial.Dehecho,existenalgoritmos
mseficientesanqueelmostradoenesteartculo(aunquemenosintuitivos).11Sinembargo,elproblemade
minimizarunautmatafinitonodeterministaesNPcompletoyPSPACEcompleto.1213
Ejemplo
Tablasparalabsquedadeestadosequivalentes
b b b AFDminimizado.
c c c
e e e
f f f
g g g
abcef abcef abcef
https://es.wikipedia.org/wiki/Aut%C3%B3mata_finito 7/9
2017530 AutmatafinitoWikipedia,laenciclopedialibre
Generalizacionesdeautmatasfinitos
Existen diversas generalizaciones posibles de hacer sobre los autmatas
finitos,paraaumentarsuusoyexpresividad.As,porejemplo,sedefinen
los transductores de estados finitos como autmatas finitos que estn
dotados adems de un alfabeto de salida, distinto al de entrada, y que
pueden poseer ms de un estado inicial.14 Las mquinas de Moore y
mquinas de Mealy son conocidos ejemplos de transductores, que se
utilizansobretodoparamodelarsistemassecuenciales.1516
Referencias
6.Chakraborty, Samarjit (17 de marzo de 2003).
1.Wolfram, Stephen (2002). Starting From Formal Languages and Automata Theory. Regular
Randomness (http://www.wolframscience.com/refere ExpressionsandFiniteAutomata(http://citeseerx.ist.
nce/notes/958a). A New Kind of Science (en ingls). psu.edu/viewdoc/summary?doi=10.1.1.89.9977).
Wolfram Media. p. 958. Consultado el 31 de marzo Computer Engineering and Networks Laboratory.
de2010. Swiss Federal Institute of Technology (ETH) Zrich
2.Basharin, Gely P. Langville, Amy N. Naumov, (eningls):17.Consultadoel30demarzode2010.
Valeriy A. (2004). The Life and Work of A. A. 7.Brena, Ramn (2003). Autmatas y Lenguajes. Un
Markov(http://citeseerx.ist.psu.edu/viewdoc/summar enfoque de diseo (http://homepages.mty.itesm.mx/r
y?doi=10.1.1.4.4887). Linear Algebra and its brena/AyL.html). Tecnolgico de Monterrey, Mxico:
Applications(eningls)386: 326. Consultado el 31 205.Consultadoel31demarzode2010.
demarzode2010. 8.Berry, G. Sethi, R. (1987). From regular
3.Rabin, Michael O. Scott, Dana (1959). Finite expressionstodeterministicautomata(http://hal.arch
automataandtheirdecisionproblems(http://portal.ac ivesouvertes.fr/docs/00/07/59/04/PDF/RR0649.pdf).
m.org/citation.cfm?id=1661909). IBM Journal of TCS: Theoretical Computer Science (en ingls) 48:
Research and Development (en ingls) (IBM Corp. 117126.Consultadoel1deabrilde2010.
Riverton,NJ,USA)3(2):114125.ISSN00188646(htt 9.Neumann, Christoph (2005). Converting
ps://www.worldcat.org/issn/00188646). Consultado el 5 de Deterministic Finite Automata to Regular
abrilde2010. Expressions (http://citeseerx.ist.psu.edu/viewdoc/dow
4.Wolfram,Stephen(2002).ANewKindofScience(htt nload?doi=10.1.1.85.2597&rep=rep1&type=pdf) (en
p://www.wolframscience.com/reference/notes/958a) ingls).Consultadoel1deabrilde2010.
(eningls).WolframMedia.p.893.Consultadoel31 10.van Noord, Gertjan (2000). Treatment of epsilon
demarzode2010. movesinsubsetconstruction(http://portal.acm.org/c
5.Thompson, Ken (1968). Programming Techniques: itation.cfm?id=971841.971845). Computational
Regularexpressionsearchalgorithm(http://portal.ac Linguistics(eningls)(MITPress. Cambridge, MA,
m.org/citation.cfm?id=363387&dl=GUIDE,). USA)26(1):6176. ISSN08912017(https://www.worldca
CommunicationsoftheACM(eningls)11(6):419 t.org/issn/08912017).Consultadoel5deabrilde2010.
422.Consultadoel1deabrilde2010.
https://es.wikipedia.org/wiki/Aut%C3%B3mata_finito 8/9
2017530 AutmatafinitoWikipedia,laenciclopedialibre
Bibliografa
Hopcroft, John Motwani, Rajeev Ullman, Jeffrey D. (2001). Introduction to Automata Theory,
Languages,andComputation(eningls).Massachusetts,EstadosUnidos:AddisonWesley.
Enlacesexternos
WikimediaCommonsalbergacontenidomultimediasobreAutmatafinito.
JFLAP,softwareparaexperimentarconlenguajesformalesyautmatas(http://www.jflap.org/)
Obtenidodehttps://es.wikipedia.org/w/index.php?title=Autmata_finito&oldid=99059758
Categora: Lenguajesformales
Seeditestapginaporltimavezel11may2017alas16:18.
EltextoestdisponiblebajolaLicenciaCreativeCommonsAtribucinCompartirIgual3.0pueden
aplicarseclusulasadicionales.Alusarestesitio,ustedaceptanuestrostrminosdeusoynuestrapoltica
deprivacidad.
WikipediaesunamarcaregistradadelaFundacinWikimedia,Inc.,unaorganizacinsinnimode
lucro.
https://es.wikipedia.org/wiki/Aut%C3%B3mata_finito 9/9