Pi puede definirse como diameter / circunference
de un círculo. ¿Pero qué es un círculo? No puedes decirle a un ordenador: "construye un círculo y divide su diámetro por su circunferencia". Hay que definir qué es un círculo. Wikipedia define un círculo como: It is the set of all points in a plane that are at a given distance from a given point, the centre.
Pero eso no es más que una afirmación sobre una propiedad que tienen los círculos y que nos permite identificarlos de forma única entre el espacio de las ideas matemáticas existentes. ¿Cómo se construye realmente ese círculo? ¿Y cómo se encuentra realmente pi
de esa definición? No hay instrucciones en esta definición. Esta definición no explica cómo construir un círculo, sólo identifica lo que es.
Como ejemplo, hablemos de los árboles. Los árboles son estructuras bien entendidas con una representación computacional obvia. Incluso hay muchos tipos de árboles y puedo escribir todos ellos como son realmente. Usando el -cálculo, por ejemplo, puedo representar un árbol binario completo, sin etiquetas, de profundidad 2, usando la codificación lambda:
tree : ( (t : *) -> (t -> t -> t) -> t -> t)
tree = ( branch tip . branch (branch tip tip) (branch tip tip))
Eso es un árbol, en su verdadera forma. No se limita a "identificar" la esencia de un árbol enumerando una propiedad única que tiene. En realidad lo define. El tipo anterior captura perfectamente el conjunto de árboles binarios no etiquetados, y el elemento que escribí es un miembro de ese conjunto. Puedes verlo, puedes inspeccionar su estructura y puedes usarlo para hacer cálculos significativos. Si estudias ese tipo, estás estudiando árboles binarios no etiquetados; tiene todas las propiedades que podrías esperar de un árbol binario no etiquetado, porque es la definición real de un árbol binario no etiquetado.
Ahora, cuando se trata de números, no tenemos eso. Si le preguntamos a un matemático qué es un número natural, o un número real, o un número fraccionario, seguirá proponiendo enunciados "palabreros" que identifiquen de forma única esos conjuntos, pero no te mostrará cómo construir realmente esas cosas. Si le pides que escriba un número en un papel, escribirá 5
o 6
. Pero eso no es un número. Es una representación decimal de un número que resulta que a los humanos les gusta. Del mismo modo, si le preguntas a un informático, te hablará de las propiedades que tienen los números. Si le pides que te muestre cómo es un número en realidad, puede que te muestre un vector de 64 bits. Pero esos vectores tampoco son números. Sólo representan números.
Si quisiéramos estudiar los vectores de bits, también podríamos hacerlo:
bits : ( (t : *) -> (t -> t) -> (t -> t) -> t -> t)
bits = ( o z e . (o (z (o (o (z (z (z (z e)))))))))
Esta es una definición tan buena de un vector de bits como la definición anterior de un árbol. Pero no dice nada sobre los números. Como mucho, es isomorfo al conjunto de los números naturales. Pero ahí se acaba. No dice nada sobre los números naturales porque no capta su esencia de forma significativa. Estudiar los números a través de esa definición sería como estudiar la gramática japonesa en inglés. Es una capa de indirección.
Entonces, ¿qué es un número? ¿Cómo es su estructura? ¿Cómo se representan, computacionalmente, sintácticamente, los fenómenos de un número real, de un número complejo, de un tensor? ¿Qué estructura algebraica tiene todas las propiedades que tiene un cuaternión, sin capas de indirecciones?