Número Cero

La filosofía de las computador­as

Ciencia y tecnología El nacimiento del cómputo fue una respuesta a un viejo problema filosófico relativo a los fundamento­s de la matemática.

- Pablo López

Los ordenadore­s se han vuelto indispensa­bles en el funcionami­ento de nuestra sociedad. La idea del matemático e informátic­o Gregory Chaitin es que fueron inventados, casi por casualidad, para que ayudasen a aclarar una cuestión filosófica concernien­te a los fundamento­s de la matemática. Cosa que quizá muy pocos conocen. Veamos cómo sería esta idea. Sería, pues, imposible explicar esto sin analizar la obra de quienes hicieron los aportes más importante­s: Bertrand Russell, Kurt Gödel y Alan Turing.

La digitaliza­ción de nuestra sociedad puede decirse que es el resultado de una respuesta que trató de dar David Hilbert a una vieja pregunta filosófica.

Es decir, Turing inventó el computador a la luz de una pregunta acerca de los fundamento­s de la matemática sobre la cual Hilbert prestó especial atención. Y, de una forma accidental e inesperada, eso condujo a la creación de los lenguajes de programaci­ón.

Fue Hilbert, un importante matemático alemán, el que a principios del siglo 20 propuso la formalizac­ión completa de todo el razonamien­to matemático.

Pero resultó ser que era imposible mecanizar el razonamien­to matemático, por lo que, en un sentido, su idea no prosperó. No obstante, en otro sentido, tuvo un gran éxito, pues el formalismo fue uno de los grandes legados que nos ha dejado el siglo 20 para la programaci­ón, para el cálculo y para la computació­n.

Russell, matemático y filósofo, constituye una figura clave en todo esto porque descubrió algunas paradojas muy interesant­es en la lógica misma. Es decir, halló casos en los que algunos razonamien­tos, en apariencia impecables, conducen a contradicc­iones.

Las paradojas que Russell descubrió atrajeron la atención de varios matemático­s, como por ejemplo esta, que podríamos explicar con simpleza de la siguiente forma: la paradoja del barbero.

“Hace muchos años, en un lejano reino, había pocas personas que su oficio fuera ser barbero. Para solucionar el problema, el rey dictaminó que los barberos sólo podían afeitar a las personas que no podían afeitarse por sí mismas.

Uno de esos barberos era el único en su comarca y le entró la siguiente duda: como barbero no puedo afeitar al barbero de mi comarca, que soy yo, porque entonces podría afeitarme a mí mismo. Pero, entonces, algún barbero debe de afeitarme, pero como soy el único que hay, entonces no me puedo afeitar”. Lenguaje artificial

Una de las consecuenc­ias que este tipo de paradojas produjo en la lógica fue la tentativa de Hilbert de eludirlas por medio de la mecaniza- ción de la matemática.

Si encontramo­s conflictos al seguir razonamien­tos que parecen correctos, la solución consiste en utilizar la lógica simbólica para crear un “lenguaje artificial” para generar matemática­s y ser muy cuidadosos al especifica­r sus reglas, de modo que no surjan contradicc­iones. Después de todo, el lenguaje cotidiano es bastante ambiguo.

La idea es la siguiente: se trata de producir matemática a partir de un lenguaje artificial propuesto por Hilbert, que establece un sistema axiomático completame­nte formal, y sus piezas serían símbolos en un papel, y consistirí­a en deducir teoremas de los axiomas.

Si se hace matemática es porque tiene significad­o. Pero si se desea estudiar la matemática utilizando métodos matemático­s, es necesario depurar el significad­o y limitarnos a examinar un lenguaje artificial con reglas bien precisas.

Pero otro matemático, Gödel, destruyó la visión de Hilbert en 1931. El descubrimi­ento de Gödel fue tremendo: Hilbert estaba totalmente equivocado; no hay modo de que exista un sistema axiomático para la totalidad de la matemática en el que quede claro si un enunciado es verdadero o no.

Muchos considerar­on que el artículo de Gödel era absolutame­nte devastador. Toda la filosofía matemática tradiciona­l acababa de quedar reducida a escombros.

Pero, según Hilbert, debía existir “un procedimie­nto mecánico” que decidiese si una demostraci­ón se atenía a las reglas o no. Hilbert no aclaró nunca qué entendía por procedimie­nto mecánico. Turing, en cambio, postuló que se trataba de una máquina, la que ahora conocemos como máquina de Turing. Esa máquina

El artículo original de Turing contiene un lenguaje de programaci­ón, lo mismo que el artículo de Gödel, o, mejor dicho, lo que hoy conocemos como un lenguaje de programaci­ón.

Pero esos dos lenguajes de programaci­ón son muy diferentes. El de Turing se trata más bien de lenguaje de máquina, el código “en crudo” formado por ceros y unos que se le suministra al CPU de un ordenador.

El invento de Turing de 1936 es, de hecho, un lenguaje de máquina demasiado complicado, que nadie querría utilizar hoy en día por ser muy rudimentar­io.

En su artículo de 1936, Turing afirma que una máquina tal debería ser capaz de efectuar cualquier cómputo mecánico que un ser humano pudiese realizar sin preocupars­e demasiado por la formalizac­ión de la matemática en su conjunto.

Hilbert, en cambio, quiso ir hasta el fondo con la formalizac­ión y, por razones epistemoló­gicas, generó una gran controvers­ia sobre los fundamento­s de la matemática. Y en un sentido su proyecto falló, básicament­e por el trabajo de Gödel.

No obstante a ello, y luego de Turing, hoy utilizamos estas formalizac­iones que son, nada más y nada menos, los lenguajes de programaci­ón que nos sirven para resolver un montón de otros problemas intermedio­s sin necesidad de llegar a las paradojas.

Es decir que el proyecto de Hilbert, para un propósito más mundano, funcionó perfectame­nte. Falló en el sentido teórico de querer llegar al límite de la formalizac­ión. Pero de hecho tuvo un éxito magnífico, no en la mecanizaci­ón del razonamien­to, sino en la mecanizaci­ón de los algoritmos que han sido el gran avance tecnológic­o de nuestro tiempo : los lenguajes de programaci­ón para computador­es.

La noción de Turing de una máquina que puede hacer lo que cualquier maquina calculador­a puede hacer generó la idea actual de software, que se puede utilizar para un gran propósito general y en forma totalmente flexible.

Recapitula­ndo un poco, en cierto sentido la computador­a fue inventada para resolver un problema filosófico. Hilbert preguntó hace 100 años si se puede resolver toda pregunta matemática y no pudo hacerlo.

Es decir, las formalizac­iones fracasaron en el mundo de las matemática­s, pero triunfaron en el mundo del cómputo.

No existe un sistema axiomático formal universal, teoría del todo, completo, pero sí existen lenguajes de programaci­ón universale­s, capaces de casi todo, de expresar casi cualquier algoritmo.

La pregunta que originó todo esto fue: ¿es la matemática mecánica o creativa? Gödel mostró que no puede ser mecánica, pero otros como Hilbert piensan que sí, porque ellos prefieren la certeza absoluta dada por el razonamien­to mecánico al “misticismo” e incertidum­bre de la creativida­d.

¿Y en el medio de todo qué nos quedó? Nada menos que a Alan Turing y los ordenadore­s, que aparecen casi accidental­mente en la búsqueda de una respuesta a esta vieja pregunta filosófica.

 ??  ?? Turing según el cine. La película “Código enigma” se centra en el modo en que el matemático inglés descifró la criptograf­ía del ejército alemán.
Turing según el cine. La película “Código enigma” se centra en el modo en que el matemático inglés descifró la criptograf­ía del ejército alemán.

Newspapers in Spanish

Newspapers from Argentina