Libro Cap 11
Libro Cap 11
Libro Cap 11
Teoría de Tipos
11.1. Paradojas
Hacia el cambio del siglo XIX al XX, un número creciente de paradojas
fueron apareciendo en la matemática, particularmente en la recién estrenada
teoría de conjuntos. En un principio parecían afectar sólo a los conjuntos muy
grandes por lo que se pensó que tal vez fuera la noción de infinito la que cau-
saba problemas, pero cuando Russell descubrió su famosa paradoja, que minaba
su noción fundamental de definición de conjunto, todos se convencieron de la
necesidad de modificar substancialmente la teoría. Es de sobra conocida la vía
de solución axiomática, representada por Zermelo y sus modificadores por un
lado, y por Von Neuman y los suyos1 , por otro. Otra segunda vía, que no co-
mentaré es la tomada por Brower y los intuicionistas2 . Finalmente, Russell hizo
borrón y cuenta nueva al diseñar su teoría de tipos. Mientras que en las teorías
axiomáticas el procedimiento es el de “parcheado”, taponando con enunciados
apropiados las vías de agua descubiertas, en la de tipos no pueden reproducirse
porque el propio lenguaje impide su formulación.
Las paradojas conocidas son muchas3 , entre ellas voy a distinguir cuatro,
muy sencillas. En 1926 Ramsey [62] las clasificó en dos grandes grupos:
1. Lógicas o matemáticas
2. Semánticas o epistemológicas
287
288 CAPÍTULO 11. TEORÍA DE TIPOS
Paradojas Lógicas
Entre ellas la de Russell y la de Cantor son las más conocidas. La de Russell
cuestiona el mismísimo principio de definición de clases, mientras que la de
Cantor se basa en un concepto más elaborado, pero tan básico como aquel, que
es el de cardinalidad.
Paradoja de Russell5
En la teoría intuitiva, cantoriana, de conjuntos todas las propiedades permi-
ten definir conjuntos, pero si tomamos como propiedad la de no pertenecerse a
sí mismo, llegamos a una contradicción al analizar la clase
U = {X/X ∈
/ X}
y preguntarnos
¿Es U un elemento de U ?
Esto no es otra cosa que un cambio superfluo, notacional, ya que las dos
fórmulas tienen el mismo alcance y significado. En este punto el axioma
de definición de clases y relaciones toma la forma siguiente:
∃Y β ∀X α (X α ∈ Y β ↔ ϕ)
∃Y ∀X(X ∈ Y ↔ X ∈
/ X)
∀X(X ∈ U ↔ X ∈
/ X)
La contradicción se reproduce cuando intentamos determinar si este U
es un miembro de sí mismo; entonces obtenemos
U ∈U ↔U ∈
/U
Paradoja de Cantor
Consideremos la clase U de todas las clases, la clase universal. Se puede
demostrar tanto que la cardinalidad de su conjunto potencia ℘(U ) es mayor
que la cardinalidad de la clase universal como que es menor o igual que ella.
Sea U el conjunto de todos los conjuntos. Evidentemente su cardinal |U |
sobrepasa a cualquier otro cardinal; i.e. |A| ¹ |U | para todo A. Así,
X = {x ∈ A/x ∈
/ h(x)}
Claramente,
x∈X ↔x∈
/ h(x), para cualquier x ∈ A
z∈X ↔z∈
/ h(z) (11.3)
z ∈ h(z) ↔ z ∈
/ h(z)
que equivale a
¬∃X∀Y (|Y | ¹ |X|)) (11.4)
Los enunciados (11.1) y (11.4) se contradicen.
11.1. PARADOJAS 291
Paradojas semánticas
La más antigua que se conoce de esta clase es la de Epiménides, otra es la
de Richard.
Paradoja de Richard
Está directamente inspirada en el procedimiento diagonal que Cantor utiliza
en su celebrada demostración de que los números reales constituyen un conjunto
no numerable; es decir, cuya cardinalidad excede a la de los números naturales.
Recordemos esta prueba de Cantor: Sin pérdida de generalidad nos concen-
tramos en los números reales del intervalo [01] y consideramos una enumeración
cualquiera de estos decimales;
X
am = (amn × 10−n )
n≥1
algo de detalle.
292 CAPÍTULO 11. TEORÍA DE TIPOS
Es fácil ver que ninguna enumeración de esta índole contiene a todos los
decimales del intervalo [01], para lo cual especificaremos uno,
X
d= (dn × 10−n )
n≥1
Para él había una diferencia fundamental entre los conjuntos por un lado y
las propiedades por otro. Los conjuntos o clases son extensionales y su existencia
la deben a sus miembros. En esta concepción los conjuntos existen con indepen-
dencia de si pueden o no ser definidos y no hay entonces razón para evitar las
definiciones circulares o no-predicativas. Por otra parte, los conceptos o propie-
dades existen sólo en la medida en que podamos definirlos, captarlos. Cuando
las entidades que constituyen la teoría de conjuntos se conciben a la manera
conceptualista, que sólo existen en la medida en que pueden ser definidos, la
restricción a las definiciones predicativas es inevitable.
La teoría de tipos de Russell [1908] sobre la que se construyeron los Principia
Mathematicae cumple algunos de estos requisitos. Analiza las paradojas en dos
pasos. En el primero reformula la paradoja de teoría de conjuntos convirtiéndola
en otra en la que las consideraciones acerca de la predicatividad son relevantes;
11.2. TEORÍA SIMPLE DE TIPOS DE CHURCH 293
Por su parte Russell, en su teoría ramificada de tipos, evita todas las pa-
radojas, y no solamente las matemáticas. Sin embargo, el lenguaje se torna
innecesariamente complejo y para poder obtener ciertos resultados matemáti-
cos se ve forzado a admitir el denominado axioma de reducibilidad, de dudosa
aceptación.
Aunque se cree que parte de la motivación para desarrollar la teoría de tipos
se debe al descubrimiento de las paradojas de la teoría intuitiva de conjuntos,
está lejos de ser una construcción ad hoc carente de naturalidad y sentido común
matemático. Citemos a Gandy [29]:
Henkin [36] y [38]. Está basada en la de Russell, pero distingue claramente en-
tre sintaxis y semántica y entre lenguaje y metalenguaje, por lo que aúna las
ventajas del tratamiento de Russell para evitar las paradojas lógicas y las del
de Tarski, para evitar las semánticas. Si se admite para las fórmulas una semán-
tica de modelos generales, conseguimos un teorema de completud; al precio,
naturalmente, de la merma de capacidad expresiva.
Jerarquía de tipos
La teoría de tipos allí expuesta, que llamaré T podría describirse así: Los
tipos están estructurados en una jerarquía que cuenta con:
Alfabeto
Contamos con variables de diferentes tipos, con un superíndice que lo indica.
En este artículo de Church se introducen también las constantes N(00) y
A((00)0) (para la negación y la conjunción) y Π(0(0α)) (nos permitirá expresar
cuantificación). Finalmente ι(α(0α)) es un selector.
Expresiones
Hay dos formas fundamentales de formar expresiones:
Las simples: Fórmulas o constantes solas son fórmulas cuyo tipo es el del
índice.
Interpretación
La interpretación de estas expresiones es como sigue:
(λX β φ)
es una clase unitaria el selector asigna a dicha clase ese único elemento y
así
(ι(α(0α)) (λX α φ))
se abrevia como
(ιX α φ)
considerándose como un descriptor.
en Andrews [6].
296 CAPÍTULO 11. TEORÍA DE TIPOS
Comentario 363 Parece ser que esta asimetría, esta indeterminación, está
en la base de la investigación que llevó a Henkin a descubrir sus pruebas de
completud. De manera que a ella debemos una pieza clave de toda lógica, la reina
de las pruebas de los sistemas formales, pues su procedimiento, a diferencia del
usado por Gödel para demostrar completud para la lógica de primer orden, es
tan versátil que se adapta fácilmente a otras lógicas.
(λX β M α )N β
³ ´
Mα N Xβ
β
the symbol ια(0α) was put into the formal languaje of T origi-
nally to serve the function of the definite article the, as expressed
in Axiom 9α (el de las descripciones), and that its availability to
provide such a succint formulation of the axiom of choice was a for-
tuitous circumstance that must have come to Church as an inspired
afterthought.
Números naturales en T
En el artículo de Church se introducen como abreviaturas las constantes
para cada número natural y se define a éstos, siguiendo a Russell y a Frege. Se
prueba para ellos, como teoremas, los postulados de Peano.
En particular, el cero, el uno y el dos se definen así:
0
0α = λf (αα) λX α X α
0
1α = λf (αα) λX α (f (αα) X α )
0
2α = λf (αα) λX α (f (αα) (f (αα) X α ))
La función del siguiente y el concepto de número natural también son defini-
dos mediante expresiones con lambda. Incluye Church la definición de la función
del predecesor de un número natural, uno de los logros de Kleene, que sirvió a
ambos para calibrar la enorme potencia de la λ−definibilidad.
Incompletud
Cuando uno se da cuenta de que el cálculo no sólo es completo, sino incom-
pletable –esto es, no se torna completo añadiéndole nuevos axiomas o reglas–
la pregunta es si podemos separar de alguna forma a las fórmulas que son no
sólo válidas, sino también deducibles en el cálculo de las que son sólo válidas.
Cito a Henkin [38]:
A
la usamos para indicar una deducción de A; esto es, que acaba en A. La
deducción se escribirá como un árbol finito cuyas hojas están etiquetadas con
sentencias. Las sentencias pueden aparecer en dos estados: vivas y muertas. En
general estarán vivas en una deducción y sólo están muertas cuando dejan de
funcionar activamente en la prueba.
El caso típico es el de la introducción del condicional
[A]
..
.
B
I→
A→B
Todas las reglas preservan todas las hipótesis, salvo I → ya que desaparece
(se descarga o se mata) [A].
π1 t [x1 ...xn ]
λx v [x x1 ...xn ]
Ecuaciones fundamentales
1 2 ®
π 1 hu, vi = u π 2 hu, vi = v π t, π t = t
¡u¢
(λx v) u = v x λx tx = t
11.4. La Identidad
11.4.1. Identidad en FOL.
En la lógica de primer orden se suele introducir entre los signos lógicos el
de igualdad, que se estipula ha de interpretarse como identidad. Es decir, la
identidad es un concepto lógico, primitivo.
En el lenguaje formal, a partir de términos cualesquiera τ y t formamos
la expresión
τ =t
que será verdadera en una interpretación = cuando sus denotaciones coincidan;
es decir,
=(τ = t) = V syss =(τ ) = =(t)
El cálculo deductivo nos debería permitir deducir las leyes habituales de: re-
flexividad, simetría, transitividad, sustitución de iguales, etc. Para ello se añaden
algunas reglas al cálculo deductivo; por ejemplo, nosotros tomamos las reglas
de reflexividad de la igualdad y de sustitución de iguales como reglas primitivas
de inferencia:
RI
aτ =τ
¡ ¢
Ω a ϕ xτ
SI ¡ ¢
Ω, τ = t a ϕ xt
y las restantes leyes mencionadas se obtienen como teoremas.
El que la interpretación del signo de igualdad sea la genuina relación de
identidad –es decir, la identidad genérica, la que mantiene un objeto consigo
mismo, pero sólo consigo mismo– no se lo debemos a la capacidad expresiva
de la lógica de primer orden; sencillamente es un concepto primitivo y se toma
así del metalenguaje.
Pero,
¿Se puede definir la identidad en F OL sin igualdad?
302 CAPÍTULO 11. TEORÍA DE TIPOS
¿Hay una ϕ que la defina? ; es decir, tal que para cada = = hA, Hi
=(ϕ) = {hx, yi ∈ A × A | x = y}
La respuesta es que nó. Sin embargo, en los casos en los que el lenguaje sólo
tenga un número finito de relatores; por ejemplo, R (monario) y T (binario),
la fórmula
(Rx ↔ Ry) ∧ ∀z(T xz ↔ T yz) ∧ ∀z(T zx ↔ T zy) (11.7)
expresa que x e y no se pueden distinguir mediante fórmulas del lenguaje de
primer orden. Esta “definición” obedece las leyes habituales de la igualdad, pero
hay modelos en donde la relación que define esta fórmula no es la de identidad
genérica.
®
Ejemplo 364 En el modelo = = hA,Hi donde A = {1, 2, 3} , T A , RA ,
siendo T A = ∅ y RA = {1, 2, 3} la relación definida por la fórmula (11.7) no
es la identidad.
Comentario 365 Aunque sea tan sólo una relación similar a la de identidad y
requiera un alfabeto con un número finito de relatores, es la mejor aproximación
que tenemos en primer orden al Principio de Leibniz de los Indiscernibles
–según el cual dos individuos son iguales si comparten todos sus atributos–.
RI
aτ =τ
¡ ¢
Ω a ϕ τx
SI ¡ ¢
Ω, τ = t a ϕ xt
son ambas reglas derivadas de inferencia.
No es ésta la única forma de definir la identidad, pues también puede usarse
–Dos individuos son iguales cuando están en todas las relaciones reflexivas.–
Estas dos fórmulas son sintácticamente equivalentes en cualquier cálculo de-
ductivo de orden superior, por ejemplo en λ − C2 . Éste es uno de los que utilizo
para la lógica de segundo orden en [54].
Identidad global
En la teoría de tipos simple no tenemos algo tan básico como la función global
de identidad: para cada tipo τ tenemos la identidad de dicho tipo Iτ := λxτ xτ .
Si usamos una variable b t para tipo, la función identidad sería una generalización
de λxbt xbt . Pero esto no es una expresión bien formada del formalismo; b t no
es un tipo. Para conseguir que la identidad sea una expresión lo que se hace es
utilizar Λ, un abstractor de tipos; la identidad polimorfa es definida como
b b
I :=Df Λb
t λxt xt
®
La colección de tipos se enriquece así con un ∀ y Λb t λxbt xbt es de tipo ∀b
t bt, b
t .
Una expresión ³cuyo tipo es ∀b
t σ puede aplicarse a una de tipo τ y origina
´
una de tipo σ τbt
Por ejemplo, la expresión
b b
Λbt λxt xt τ (11.12)
es de tipo hτ , τ i
Si se usa
¡ una
¢ regla de reducción β para tipos, de la expresión (Λt E) τ se
pasa a E τt . En nuestro caso (11.12) se reduce a λxτ xτ ; es decir a Iτ .
Ext
a ∀X n Y n (X n = Y n ↔ ∀x1 ...xn (X n x1 ...xn ↔ Y n x1 ...xn )
306 CAPÍTULO 11. TEORÍA DE TIPOS
que se incluye como regla sin premisas, surte el efecto deseado; esto es,
excluye modelos no extensionales.
Al combinar su acción con la del Esquema Axiomático de Comprehension
EC
a ∃X n ∀x1 ...xn (X n x1 ...xn ↔ ϕ)
que se incluye también como regla sin premisas, nos permite demostrar
`C2 ∃¡X n ∀x1 ...xn (X n x1 ...xn ↔ ϕ)
IAC
Ω a λx1 ...xn ϕ τ 1 ...τ n
y de Introducción del Abstractor en el Antecedente
³ ´
Ω ϕ xτ 11 ...τ
...xn a ψ
n
IAA
Ω λx1 ...xn ϕ τ 1 ...τ n a ψ
Definiciones básicas
El lenguaje de tipos ecuacional que usaremos sólo contiene: Variables para
todos los tipos finitos –con un superíndice que lo indica–; igualdad para todos
los tipos; abstractor λ.
1. Bicondicional: Para fórmulas ϕ y ψ, la expresión
ϕ↔ψ
se usará en vez de
((=hh00i0i ϕ)ψ)
1 5 Véase [57] y [58].
308 CAPÍTULO 11. TEORÍA DE TIPOS
abreviado, ϕ = ψ
2. Lo verdadero: >0 . Su definición abreviada es
λX 0 X 0 = λX 0 X 0
Explicación
La semántica empleada es estándar, pero se puede también usar la de marcos
o la de modelos generales.
Sea = = hD, M i un modelo. Es fácil comprobar que con las siete definiciones
anteriores:
1. =(ϕ ↔ ψ) = V syss =(ϕ) = =(ψ) –Funciona como el bicondicional–
2. =(>) = V –Es un nombre para lo verdadero–
3. =(⊥) = F –Es un nombre para lo falso–
4. =(¬) es una función de tipo h00i cuyo valor es V syss =(X 0 ) = F .
–Es la función veritativa de negación–
5. =(Σ) es una función que asigna a los conjuntos de tipo h0αi el valor
V syss el conjunto no es vacío. –Es un predicado de predicados, afirma
del predicado que “no predica en el desierto”, que bajo él cae cuanto menos
un objeto–
6. La cuantificación existencial ∃X α ϕ podría reducirse a lo anterior, Σ(λX α ϕ).
Hemos optado por definirlo directamente.
7. Finalmente, incluso la disyunción puede definirse usando identidad y lambda;
la fórmula se interpreta como la función que asigna F syss
tanto =(X 0 ) = F como =(Y 0 ) = F
11.6. APÉNDICE: LA PIEDRA FILOSOFAL 309
Un cálculo para ET T
Cálculo axiomático: Sólo contiene cuatro axiomas y una regla de reemplaza-
miento.
Axiomas
(Ax.1) (X h00i ⊥∧X h00i >) = ∀X 0 (X h00i X 0 ) –Hay sólo dos valores de verdad–
Regla de inferencia: R
Pese a ese tropiezo inicial, pronto se vio que la definibilidad mediante lambda
equivalía a la recursividad y a la computabilidad mediante máquinas de Turing,
proporcionando así un argumento de gran fuerza a favor de la denominada tesis
de Church; es decir, la de tomarlas como una definición posible de computabili-
dad efectiva o algoritmo. Además, usando la mencionada tesis, Church demostró
la indecidibilidad de la lógica de primer orden.
1 8 Se atribuye la inspiración para crear el lenguaje LISP, desarrollado por John Mc Carthy,
al cálculo lambda.
1 9 El pequeño volumen [14] es interesante. Una presentación moderna se encuentra en los
(2) Entscheidungsproblem
Uno de los temas que más interesaba en aquel momento (estamos en los años
treinta) era el de la decidibilidad. Hilbert y Ackerman [41] lo expresan así:
podria haberse derivado de los resultados de Church; veamos lo que dice Shoenfield [66] en
312 CAPÍTULO 11. TEORÍA DE TIPOS
fue dando cuenta gradualmente (como dije, en parte gracias a su alumno Kleene)
de que dicha clase era muy, pero que muy extensa. Estaba claro que las funciones
λ−definibles eran computables y parecía razonable pensar que todas las com-
putables eran λ−definibles. Es decir, que la noción intuitiva de computabilidad
(o efectividad) se correspondía exactamente con la de λ−definibilidad. En un
principio la formuló como definición y luego Kleene la cambió al status de tesis,
con el que la conocemos actualmente. En su primera formulación computabili-
dad efectiva fue identificada con λ−definibilidad, públicamente fue anunciada
como recursividad y más tarde fue generalmente aceptada como computabilidad
mediante máquinas de Turing. Las vicisitudes de la tesis pueden verse bien en
Davis [23].
Aunque por tratarse de una tesis no se puede demostrar matemáticamente,
hay razones poderosas para aceptarla:
(1) La primera es una razón basada en la experiencia acumulada: todos los
algoritmos conocidos son recursivos. Gandy [30] añade al respecto:
(2) La segunda está basada en la equivalencia entre los tres conceptos in-
troducidos para establecer la noción de algoritmo: resulta tranquilizador que
desde planteamientos tan distintos se lleguen a definir exactamente las mismas
funciones.
(3) La tercera, que fue la que sin duda convenció a Gödel, está relacionada
con el análisis que Turing hizo del concepto de computabilidad; no se interesa
tanto por la naturaleza de las funciones computables como por el propio proceso
de computación. Al comienzo de su trabajo Turing afirma:
The real question at issue is What are the possible processes which
can be carried out in computing a number?
(5) Finalmente, la razón que convenció a Kleene: la del fracaso del argumento
diagonal24 . Llamamos diagonalización al proceso que mimetiza el que Cantor
introdujo para demostrar que ℘ (ω) no es biyectable con ω y que permite señalar
conjuntos (en el caso mencionado, Y = {x | x ∈/ f (x)}) que no han sido incluídos
en una enumeración, pretendidamente completa de un determinado dominio.
fallo del proceso de diagonalización sobre la clase de las funciones recursivas convenció a Kleene,
tan fervientemente, de la tesis de Church.
11.6. APÉNDICE: LA PIEDRA FILOSOFAL 315
Otra versión del cálculo lambda es la que publica Church [16] en los cin-
cuenta. En ella se toma la tesis de Frege, conforme a la cual para entender un
lenguaje no nos basta con conocer la estructura del lenguaje simbólico y el uni-
verso de objetos a los que el primero se refiere; hay que interponer una tercera
instancia de entes abstractos; a saber, los sentidos o conceptos. Church en el ar-
tículo citado desarrolla una teoría matemática del sentido, en la acepción arriba
mencionada, y de su relación con los objetos del universo. Para ello utiliza el
lenguaje de tipos del artículo de 1940 y le añade una nueva jerarquía de tipos
para los sentidos.
317
318 BIBLIOGRAFÍA
[34] van Heijenoort, J. [1967]. From Frege to Gödel: a source book in mathema-
tical logic, 1879-1931. Cambridge, Mass: Harvard University Press.
[35] Henkin, L. [1949]. “The completeness of the first order functional calculus”.
The Journal of Symbolic Logic. vol. 14, pp. 159-166.
[40] Herken, R. ed. [1988]. The Universal Turing Machine: A Half-Century Sur-
vey. Oxford: Oxford University Press.
[43] Hindley, R. [1997]. Basic Simple Type Theory. Cambridge Tracts in Theo-
retical Computer Science. Cambridge: Cambridge University Press.
[44] Hodges, A. [1983]. Alan Turing: The Enigma. Publicado por Burnett Books
Ltd, la edición que yo uso es de 1992, de Vintage. Londres.–
[55] Manzano, M. [1997]. “Alonzo Church: Hil Life, His Work and Some of His
Miracles”. History and Philosophy of Logic, vol 18, pp 211-232.
[60] Quine, W. [1937]. “Logic based on inclusion and abstraction”. The Journal
of Symbolic Logic. vol. 2 pp. 145-152.
[61] - [1976]. The ways of paradoxes and other essays. Cambridge. Massachus-
sets: Harvard University Press.