Вы находитесь на странице: 1из 6

Mquina de Turing

um dispositivo imaginrio que formou a estrutura para fundamentar a cincia da computao moderna. Seu inventor, o matemtico Alan Mathison Turing, mostrou que a computao das operaes de leitura, escrita e excluso de smbolos binrios poderiam ser satisfeitas por uma mquina que continha uma fita de comprimento ilimitado, com quadrados de tamanho definido sobre ela e um dispositivo com um nmero finito de estados, que realizava as operaes na fita. Em 1936 foi formalizado o termo algoritmo: um conjunto finito de instrues simples e precisas, que so descritas com um nmero finito de smbolos. Qualquer processo aceito por ns homens como um algoritmo precisamente o que uma mquina de Turing pode fazer (Alonzo Church, matemtico).

MquinasdeTuringparaconstruo:Foramencontradosdoismodelosquesedestacaramemnossaspesquisas. 1. Modelo mais completo, com circuitos digitais e implementaes de diversos algoritmos: http://aturingmachine.com,comvdeodemonstrativo:http://www.youtube.com/watch?v=E3keLeMwfHY

dedifcilimplementao,porissofoifeioocontatoparaaexposio. 2. Utilizando um kit Lego: http://legoofdoom.blogspot.com, http://www.youtube.com/watch?v=cYw2ewoO6c4 com vdeo demonstrativo:

Em relao aprimeira (1), sua implementao mais fcil, porm vai requererbastante trabalho para elarealizar as operaes de leitura, escrita e excluso e executar alguns algoritmos simples como somatrio e subtrao. No endereoindicadohumdetalhamentodaconstruoeocontatocomosautores.

MaterialparaoCatlogo: AMQUINADETURING RogrioXavierdeAzambuja EliasRamos Novembro/2011. Tratase de um dispositivo imaginrio embasado por uma teoria revolucionria do seu autor, o britnico Alan Mathison Turing, concebida aos 24 anos de idade. A mquina de Turing formou a estrutura bsica para fundamentar a cincia da computao moderna e a computabilidade. Foi responsvel anos depois, pelo reconhecimento da comunidade cientfica, declarando Turing com o ttulo simblico de pai dacomputao. A teoria foi publicada pela primeira vez em 1936, num artigo intitulado "On Computable Numbers, with an Application on the Entscheidungsproblem", em resposta ao tratamento do problema da deciso, formuladoporHilbert.TuringestudavanauniversidadedePrinceton,NovaJerseyEUA. ApesardamquinadeTuringnotersidoimplementadafisicamente,natotalidadepeloseuautor, o processo computacional foi matematicamente demostrado e provado no artigo. Turing explicitou um dispositivo lgico que ele chamou de "automatic machine" (ou amachine), capaz de ler, escrever e apagar smbolos binrios em uma fita de comprimento ilimitado e dividida por quadrados de igual tamanho. Uma cabeade leitura/gravao semoveria em qualquer direo ao longo da fita, um quadrado por vez, e uma unidade de controle poderia interpretar uma lista de instrues simples, movendose para adireitaouesquerda.Aregraexecutadadeterminaoqueseconvencionouchamardeestadodamquina.

Figura1:ModeloconceitualdedamquinadeTuring. O conceito de mquina de Turing semelhante ao de uma frmula ou equao. Assim, h uma infinidade de possveis mquinas de Turing, cada uma correspondendo a um mtodo definido ou algoritmo. Turing props que cada algoritmo, formalizado como um conjunto finito de instrues bem definidas,pudesseserinterpretadoeexecutadoporumprocessomecnico.

FormalmenteamquinadeTuringpodeserdefinidacomoumamquinaquecontm: UmconjuntofinitodeestadosQcomumestadoinicialdistinto, Umconjuntofinitodesmbolos.

A interpretao e execuo dos algoritmos so realizadas por estados e uma funo de transio determina o novo contedo da fita.Desde modo, por restrio imposta ao algoritmo, podese alterar o contedo de apenas um quadrado por vez ou movimentar a cabea, no mximo uma clula em qualquer direo. permitida tambm a utilizao de qualquer conjunto finito de smbolos para o alfabeto , mesmo que a definio original tenha insistido em = {0,1}. Esta mudana no tem impacto sobre a definiodoconjuntodefunescomputveispelamquina. OquetornaumamquinadeTuringcapazdeexecutarumatarefaatabeladeregrasdetransio que compem o programa da mquina e um determinadoestado inicial. O conjunto de instrues conhecidaseprocessadaspelomdulodecontrolefinito,ilustradonaFigura1,relacionadoabaixo: IMPRIMA0NOQUADRADOQUEPASSAPELACABEA IMPRIMA1NOQUADRADOQUEPASSAPELACABEA VUMQUADRADOPARAAESQUERDA VUMQUADRADOPARAADIREITA VPARAOPASSOiSEOQUADRADOQUEPASSAPELACABEACONTM0 VPARAOPASSOjSEOQUADRADOQUEPASSAPELACABEACONTM1 PARE

Por exemplo: uma computao pode ser representada por trs estados, nomeados s0, s1, s2 e com algumasinstruesformalizadasnoAlgoritmo1: 1. s0,1,s0, 2. s0,0,s1,1 3. s1,1,s1, 4. s1,0,s2, Algoritmo1:Exemplodeinstruesentretrsestadoss0,s1es2. As duas primeiras instrues (linhas 1 e 2) descrevem o que acontecer no estado s0. H duas possibilidades:naprimeira,amquinafazaleituradeumdgito'1',movimentaracabeaparaadireitae permanecer no estado s0. Na segunda, se for lido um dgito '0' a mquina deixar o estado s0, entrar no estado s1 e escrever o dgito '1' nessa transio. As instrues descritas nas linhas 3 e 4 mostram o que acontecernoestados1,ouseja,seforlidoodgito'1',amquinamovimentaracabeaparaaesquerda epermanecernoestados1.Seforlidoodgito'0',acabeasermovimentadaparaadireitaeamquina passar para o estado s2. Como no h instrues definidas pelo algoritmo no estado s2, a mquina pra a suaexecuo(condiodeparada)aoatingiresteestado. Quando estamos interessados em examinar o comportamento de uma mquina de Turing, eficiente representarmos a mquina usando um diagrama de estados. A Figura 2 representada o conjunto deinstruesnesteformatovisual.

Figura2:UmdiagramadeestadosrepresentativoaoAlgoritmo1.

Nesta figura, os estados so representados por crculos, com um crculo duplo identificando o estadoinicial.Umatransiorepresentadaporumaarestaouarcoprovenientedeumestadoparaoutro ou para o mesmo estado. As arestas so rotuladas por pares (smbolo, ao), constitudo primeiro pelo smbolo que dever ser lido e depois, pela ao que dever ser executada com a transio. Os smbolos pertencem ao alfabeto e a ao ser o smbolo a ser escrito, ou ainda ou , indicando um movimento paraaesquerdaoudireita. A Figura 2 ilustra uma mquina que calcula o sucessor de n, como uma execuo simples para fins meramente demonstrativos. Assim, o estado inicial da fita representa o nmeron eaps executar a sequencia de passos, ele ir parar na configurao padro que representa o nmeron+1. Uma possvel execuodemonstradanaFigura3(ac).

(a) (b)(c) Figura3:Sequenciadeexecuodoalgoritmo1,apartirdeumestadoinicial. Na atualidade fcil relacionar um programa de computador com uma mquina de Turing e a tarefa mecnica de interpretao e execuo obedecendo ao algoritmo.Assim, a mquina de Turing Universal incorpora o princpio essencial do computador: uma mquina simples que poder executar qualquertarefabemdefinida,desdequeespecificadacomoumprogramaapropriado. possvel encontrarmos tambm algumas simulaes modernas para a conceitual mquina de Turing. A Figura 4 ilustra um modelo misto entre componentes digitais e mecnicos, encontrado em http://aturingmachine.com,comvdeodemonstrativoemhttp://www.youtube.com/watch?v=E3keLeMwfHY.

Figura4:Simulaoutilizandocomponentesdigitais. A Figura 5 ilustra uma simulao utilizando o kit de referncia Lego, encontrado em http://legoofdoom.blogspot.com,comvdeodemonstrativoemhttp://www.youtube.com/watch?v=cYw2ewoO6c4.

Figura5:SimulaoutilizandokitderefernciaLego.
Turing provou que para qualquer sistema formal existe uma mquina de Turing que pode ser programada para imitlo. Era este sistema formal genrico, com a habilidade de imitar qualquer outro sistema formal, o que Turing procurava essencialmente. Tais sistemas chamamse Mquinas de Turing Universais. O lgico matemtico Alonzo Church chegou a definir: Qualquer processo aceito por ns homenscomoumalgoritmoprecisamenteoqueumamquinadeTuringpodefazer.

Em abril de 1936, Turing mostrou seus resultados para John Von Neumann em Princeton, quando os computadores, no sentido moderno, ainda no existiam.Turing criou os conceitos e a fundamentao matemtica, que nove anos depois seria a tecnologia utilizada para materializar os primeiros computadores eletrnicos, com grande participao de Neumann, ou seja, a transformao da lgica de suas ideias abstratas em engenharia real.Durante este perodo de tempo, Turing retornou Inglaterra e a ideia viveu apenas em sua mente. A correspondncia entre instrues lgicas, a ao da mente humana e uma mquina, que poderia ser fisicamente construda, foi a contribuio definitiva de Alan Mathison Turing. RefernciasBibliogrficas:
Mquinas de Turing em Princeton, disponvel em http://introcs.cs.princeton.edu/java/74turing, acesso em outubrode2011. Mquinas de Turing em Stanford, disponvel em http://plato.stanford.edu/entries/turingmachine, acesso emoutubrode2011.