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

Mecanismos, reglas y la mquina universal

Javier Blanco, Po Garca (UNC)

Introduccin
Desde posiciones muy diferentes se ha puesto en cuestin tanto el concepto de computacin como el alcance de la tesis Church-Turing (esto es la tesis que afirma la adecuacin de la caracterizacin de computacin a partir de la equivalencia extensional de los formalismos utilizados). Entre dichas posiciones se puede sealar el proyecto de comprender a la mente como una computadora, la propuesta de que cualquier sistema de la suficiente complejidad se puede describir en trminos computacionales (pancomputacionalismo) e incluso la extensin del argumento wittgensteniano de seguir una regla al mbito de la computacin (Shanker). Estas controversias parecen apuntar a un mismo problema: qu se entiende por computacin. Y efectivamente esta parece ser la discusin central. Pero, por la forma en la cual se han desarrollado estas discusiones, se hace referencia aqu a problemas diferentes. Por un lado est la cuestin central de qu es computar, en segundo lugar el problema de qu es una computadora, en tercer lugar cules son los criterios que me permiten identificar cundo un sistema computa, finalmente est el problema de la relacin entre los aspectos fsicos y abstractos de la computacin. Marcar la relativa independencia entre estos problemas significa que la respuesta que se d a alguno de estos no necesariamente resuelve las otras cuestiones (aunque estn ntimamente relacionados). En este trabajo avanzaremos sobre una estrategia posible para abordar aspectos de los dos primeros problemas (qu es computar y qu es una computadora). Consideraremos el primer problema en trminos del segundo. Esto es tomaremos el concepto de computacin a partir de una caracterizacin de la mquina computadora. Siguiendo la sugerencia de Canguilhem de que los diferentes tipos de mecanicismos pueden ser entendidos a partir de la mquina que se toma como modelo, proponemos que esta mquina modelo estara representada no slo por la llamada mquina de Turing sino por la mquina universal. Cuando se incluye esta ltima en la discusin aparece, en principio, un horizonte de posibilidades diferente en donde se pueden analizar los problemas anteriores. Puesto en otros trminos, nuestra intencin es responder a la pregunta qu aspectos centrales de la nocin de computacin aparecen explicitados cuando se toma en consideracin a la mquina universal?.

Pancomputacionalismo y otros desafos


En el mbito de la filosofa de la mente se ha cuestionado la tesis computacionalista en trminos de su capacidad explicativa. Una forma de hacer esto es mostrando que la explicacin en trminos de mecanismos computacionales no agrega nada relevante a nuestra comprensin de la mente. Si cualquier sistema de la suficiente complejidad puede ser descripto como una computadora, entonces no hay nada especfico en el sealamiento de que la mente es una computadora. La tesis del Pan-computacionalismo tuvo su origen en el trabajo de Putnam y Searle, y afirma que cualquier sistema fsico con suficientes estados puede implementar

cualquier computacin.
Las definiciones originales dadas por Alan Turing conforman la definicin estndar de computacin.. En la definicin estndar de computacin es dificil ver cmo evitar lo siguiente: 1. para cualquier objeto, hay una descripcin de ese objeto tal que bajo tal descripcin el objeto es una computadora digital. 2. Para cualquier programa y para cualquier objeto suficientemente complejo, hay alguna descripcin del objeto bajo la cual implementa el programa. As por ejemplo la pared a mis espaldas esta ahora implementado el programa Wordstar porque hay algn patrn del movimiento de las molculas que es isomrfico con la estructura formal de Wordstar. Pero si la pared est implementando el programa Wordstar, entonces si hay una pared lo suficientemente grande, sta puede implementar cualquier programa, incluido cualquier programa implementado en el cerebro.

Luego de este intento de trivializar la explicacin computacionalista, Searle sugiere algunas soluciones:
Creo que es posible bloquear el resultado de la realizabilidad mltiple restringiendo nuestra definicin de computacin. Una definicin ms realista de computacin enfatizar tales aspectos como las relaciones causales entre los estados del programa, la programabilidad y la controlabilidad del mecanismo y su situacionalidad en el mundo real (Searle 1990)

De hecho la mayora de estos caminos posibles de solucin han sido recorridos por los filsofos: el camino causal -en trminos contrafcticos- ha sido sugerido por Copeland (1996), Piccinini, por otro lado ha sealado a la controlabilidad del sistema como un aspecto clave de las computadoras que sean usables. En otros trabajos hemos argumentado en favor de la programabilidad como una caracterstica saliente de la computacin (Blanco, Garcia, Cherini 2011). La modificabilidad y plasticidad en los sistemas computacionales podran entenderse desde la propiedad ms pertinente de la programabilidad. El objetivo primero de la tesis pan-computacionalista era la teora computacional del mente, pero para algunos filsofos involucra un cuestionamiento a la nocin misma de computacin. Para algunos investigadores, solucionar este problema significaba encontrar algn conjunto de caractersticas o propiedades especficos de la computacin que excluyan la aplicacin indiscriminada de la tesis pancomputacionalista. Para otros autores, la pregunta era cmo especificar de manera adecuada la realizacin fsica de un sistema computacional. As, por ejemplo, Piccinini presenta el concepto de mecanismo como una propiedad especfica de la computacin. Copland sugiere el concepto de arquitectura (junto con la idea de modelos honestos) como una respuesta. Scheutz trabaja la idea de "realizacin de una funcin" y sus condiciones fsicas como la concepto clave contra la pan-computacionalismo. Chalmers trata de evitar las consecuencias de esta tesis diciendo que el argumento de Putnam carece de una teora adecuada de la implementacin. Desde el campo de la filosofa del lenguaje se ha sugerido que en la propuesta original de Turing hay una confusin entre una tesis matemtica y otra filosfica (Shanker); y que a partir de una posicin wittgensteniana se podran marcar los lmites de la idea de computacin en trminos de seguir una regla. El artculo de Turing de 1936 sera un trabajo hbrido, en donde aparece tanto la nocin de clculo efectivo como la anticipacin de la idea de las mquinas que piensan de 1950. De acuerdo con la interpretacin de Shanker, seguir una regla involucra aspectos normativos que no aparecen en la idea de mquina de Turing; relegando de esta manera la computacin a un mbito descriptivo se marcan lmites - en principio- de lo que una mquina puede hacer. Habra de esta manera una diferencia entre calcular (normativo) y contar (emprico). Esta diferencia podra explicar la expresin de Wittgenstein acerca de

que las mquinas de Turing son en realidad humanos que calculan. Ms all de si la versin de Shanker es una interpretacin adecuada del pensamiento de Wittgenstein, puede ser considerada un desafo acerca de los lmites de la nocin de computacin. Finalmente se pueden sealar algunos de los desafos que se han presentado a la nocin de computacin a partir del cuestionamiento de la tesis Church-Turing. Las computadoras fsicas podran computar ms funciones que las mquinas de Turing. A su vez esta tesis de Church-Turing fsica podra tomar una forma general (bold) o podra restringirse a aquellas computadoras que sean manipulables de una forma adecuada (modest) (Cfr. Piccinini 2011) Si bien son importantes los desafos presentados por las versiones llamadas fsicas de la tesis Church-Turing o por la hipercomputacin, en tanto son de una naturaleza diferente a los problemas discutidos aqu no los consideraremos en el presente trabajo.

Mquina de Turing y Mquina Universal


Hay un acuerdo generalizado de que la nocin de computacin ha sido caracterizada de manera sustantiva por Turing en su artculo acerca de los nmeros computables de 1936 (Turing 1936). El significado de lo que implica calcular de manera efectiva se entendera a partir de ahora como la ejecucin paso a paso del funcionamiento de mquinas abstractas. Este acuerdo parece ir ms all de encontrar un formalismo para caracterizar una nocin. As parece entenderlo Godel cuando dice que con Turing encontramos por primera vez una nocin absoluta de computacin. Mucho se ha dicho sobre el alcance de la nocin de mquina - y de mquina de Turing- para entender a la de computacin. Menos explorado es el eventual aporte de la idea de mquina universal (MU) que Turing presenta en el mismo artculo de 1936. Por supuesto que ha sido ampliamente reconocida la importancia de las MU como una nota distintiva de la propuesta de Turing (Davis 2000). Lo que queremos problematizar es el aporte de las MU a la nocin misma de computacin. Este aporte parece ir ms all de una mera sofisticacin de las mquinas de Turing o de una extensin de su campo de aplicacin. Una mquina de Turing est definida a partir de un conjunto finito de estados, un alfabeto finito de smbolos de entrada (se suele usar un alfabeto binario) y una funcin de transicin, la cual suele ser presentada como una tabla de transicin. Los datos de entrada vienen en una cinta infinita (pero con una cantidad finita de smbolos no nulos), sobre la cual habr una posicin distinguida que indicar el smbolo corriente. Cada una de las filas de la tabla indica para cada estado y smbolo de entrada dados cmo se cambia el smbolo corriente de la cinta, si se mueve para la izquierda o la derecha la posicin corriente, y cul ser el nuevo estado. El "computador" presentado por Turing para realizar las computaciones prescriptas por sus mquinas abstractas es una persona equipada con lpiz y papel que toma una tabla de transicin como codificacin de un comportamiento cuyos datos de entrada estn la cinta, y va aplicando mecnicamente los pasos prescriptos en esa tabla. Como decamos, cada paso indica posibles modificaciones a una posicin de la cinta, un posible cambio de posicin y cul es el siguiente estado. Si se llega a un estado y un smbolo de entrada para el cual no hay ninguna regla en la tabla, el programa termina. La MU es una mquina particular (dada por su propia tabla de transicin) cuyo comportamiento consiste inicialmente en recorrer la cinta leyendo el cdigo de una mquina dada, y luego comportndose como dicha mquina tomando como entrada el resto de la cinta. En la MU

pueden plantearse con mayor claridad algunas propiedades que consideramos relevantes de la computacin como la programabilidad. Se puede hacer una distincin entre sistemas ms interesantes que otros, donde interesante est vinculado a la capacidad de cmputo y a la programabilidad de los sistemas. Ambas nociones admiten grados. Es ms, se puede construir una jerarqua de sistemas computacionales (Blanco, Cherini, Diller, Garcia 2011) tomando en consideracin su comportamiento o los lenguajes de programacin que admiten. En esta jerarqua hay sistemas que son ms interesantes que otros en trminos de su capacidad de cmputo y de su programabilidad, entendiendo a sta como una propiedad relevante de todo sistema que se diga computacional. Podemos caracterizar a la programabilidad como la capacidad de comportarse de formas sustancialmente distintas de acuerdo con la entrada del sistema. Los intrpretes y compiladores en computacin surgieron porque se necesitaba algn tipo de traduccin entre niveles (en nuestro caso se pude decir entre mquinas de Turing, pero puede ser, por ejemplo, entre un lenguaje de alto nivel y el lenguaje de mquina). Por esta razn Davis dice que la MU es un primer ejemplo de intrprete, porque su funcin es tomar como entrada la descripcin de una mquina de Turing y los datos de esa mquina, para luego comportarse como dicha mquina. En este sentido se puede decir que un intrprete realiza una tarea de traduccin entre distintos niveles. Y si la programabilidad, como decamos arriba, se puede caracterizar como la capacidad de comportarse de maneras sustancialmente distintas de acuerdo con un input, la MU es un ejemplo privilegiado de sistema computacional programable. De cierta manera podemos pensar a la tabla de transicin de una mquina de Turing como un programa que se aplican a los datos codificados en la cinta, la MU hace aparecer como parte de los datos al programa mismo, pudiendo pensarse a la tabla de transicin de la MU como el hardware, ya que no es necesario cambiarla, con esa nica tabla puede implementarse cualquier otra mquina slo codificndola como parte de los datos. La distincin entre hardware, programa y datos deja de ser ntida, en algunos casos se vuelve una nocin relacional. Es importante subrayar que aqu tomamos algunos de los sentidos de la relacin hardware-software. Uno de esos sentidos se refiere a la modificabilidad: aquello que regula el comportamiento y que es ms directamente cambiable es el software. Otro sentido consiste en una idea muy similar pero con connotaciones ontolgicas: el hardware es aquello que constituye el soporte efectivo de las instrucciones y los datos (el input en general) y que permite la generacin del comportamiento respectivo. La codificacin de una MU, permite, a una mquina particular, cumplir ambas funciones. La MU permite distinguir en el mismo formalismo entre las nociones de mecanismo gobernado por reglas y la de seguir una regla considerada esta ltima por Wittgenstein y reformulada por Kripke. La MU es ella misma una mquina de Turing, por lo cual su comportamiento est determinado por la tabla de transicin. Sin embargo, podemos considerar a la MU en el punto en que ya ley la codificacin de una mquina cualquiera Z como una emulacin de esta. La MU puede verse aqu como siguiendo las reglas de Z, lo cual puede explicarse haciendo referencia a las reglas elementales que definen a MU misma, as tambin como al estado de la cinta de entrada de MU. En la seccin siguiente desarrollaremos algunas de las consecuencias de esta relacin. A partir de lo dicho se puede decir que una nocin mnima de computacin no parece requerir ms que de las caractersticas de una mquina de Turing, pero una nocin ms completa (ideal) de computacin parece requerir de la nocin de MU. Con la expresin ms completa o ideal queremos decir que es un sistema ms flexible, modificable y con

propiedades distintas a una mquina de Turing. Y esta nocin es ideal en tanto funciona como prescripcin para la construccin de sistemas computacionales interesantes (esto es flexibles y programables). De esta forma se puede releer la historia de la construccin de sistemas computacionales desde fines de la dcada del 30 del siglo pasado.

Consecuencias de la nocin de mquina universal


Una MU puede ser considerada un intrprete (en el sentido computacional). Un intrprete puede ser visto como un programa que toma otro programa y un conjunto de datos y se comporta como este ltimo programa. En este sentido ante la pregunta de si una mquina de Turing es intrprete, la respuesta es: depende qu aspectos consideremos. Si tomamos, como habitualmente se hace, el conjunto de reglas (tabla de transicin) y los datos de entrada a partir de los cuales se genera el comportamiento, entonces una MT no es un intrprete. Sin embargo, si consideramos no slo la tabla de transicin y los datos, sino tambin al computador que manipula los datos, entonces podemos tener una intrprete. Decimos podemos tener porque depende cmo consideremos el papel del computador. A partir de la descripcin original de Turing, si el computador es un ser humano que manipula smbolos, entonces, bajo esta descripcin, tenemos un intrprete. Puesto que el computador va a poder comportarse como cualquier otra mquina de Turing. Pero esta posibilidad est planteada en un nivel permitido por la metfora de Turing, aunque excluido de su descripcin explcita. En la mquina universal queda explicitado el papel de la mquina que ejecuta otro programa y se comporta como tal. Y esta explicitacin permite la emergencia de varias propiedades interesantes a los fines de caracterizar qu es computar. 1. En primer lugar, como se ha dicho varias veces, el que una mquina se ejecute pone en cuestin la universalidad de una distincin entre hardware y software en trminos ontolgicos o en trminos de la distincin entre algo abstracto y concreto-fsico. Por supuesto, como ya hemos dicho, esta disolucin de la distincin no afecta a todos los sentidos de la relacin hardware-software. 2. En segundo lugar, en tanto en una MU se explicita la semntica que permite al programa-intrprete ejecutar adecuadamente al programa-mquina, hay un sentido definido en el cual se puede decir si el programa-intrprete implementa correctamente al programa-mquina. Y el que haya un sentido en el cual la ejecucin pueda correcta e incorrecta involucra una nocin mnima de normatividad. No necesariamente esta nocin de normatividad da cuenta de todos los sentidos relevante de seguir una regla. Sin embargo, Shanker parta del supuesto de la distincin descriptivo-normativo sin ms como un lmite de la nocin de computacin propuesta por Turing. Y normativo es entendido en Shanker como aquello que puede ser correcto o incorrecto. 3. En tercer lugar, como decamos ms arriba la propiedad de programabalidad, tan importante para discriminar entre sistemas computacionales interesantes y aquellos que no lo son, aparece ms claramente en la mquina universal. Si la propiedad de programabilidad est vinculada con la flexibilidad de un sistema- la capacidad de comportarse de maneras sustancialmente distintas de acuerdo con un input-, entonces, una mquina universal muestra ms claramente este aspecto de la nocin de computacin que una mquina de Turing (a pesar de que esta ltima tambin es programable). En la introduccin de este trabajo citbamos la sugerencia de Canguilhem acerca de la pertinencia de considerar el tipo de mquina que sirven como modelo, muchas veces implcito, para propuestas mecanicistas. Si bien en el presente trabajo no hemos explcitamente analizado la relacin entre las nociones de mquina de Turing, MU y la idea ms general de

mquina, hemos iniciado dicho anlisis poniendo el foco en la nocin de MU. Esta investigacin puede continuarse de diversos modos. As por ejemplo Canguilhem seala como una diferencia entre los organismos y las mquinas el que estas ltimas no puedan generar otras mquinas. Otra intuicin habitual asociada con la mquina-computadora es su supuesta predecibilidad. Pero el que se haya planteado la imposibilidad de solucionar el problema de la decisin por medio de las MU, indica que en dichas mquinas aparece en un sentido fuerte y general la propiedad de impredecibilidad. Revisar nuestras intuiciones y prejuicios a la luz del anlisis de las propiedades que surgen a partir de una -cierta- ampliacin de la nocin de computacin no es el nico camino posible, pero parece fructfero. Bibliografa
Turing, A.M. (1936). "On Computable Numbers, with an Application to the Entscheidungs problem". Proceedings of the London Mathematical Society. 2 42: 23065 Blanco,J. Cherini, R. Garcia, P. Convergencias y divergencias en la nocin de computacin Revista Iberoamericana de Ciencia, Tecnologa y Sociedad 2011 Davis, M The Universal Computer, W.W. Norton & Company 2000.

Вам также может понравиться