Está en la página 1de 94

INTRODUCIN A LA LGICA

MATEMTICA
SEMESTRE 01- 2016
U. NACIONAL
JUAN D VLEZ

ii

Contenido
Introduccin

1 Orgenes de la Lgica Matemtica


1.1 Las paradojas lgicas . . . . . . . . . . . . . . . . . . . . . . .
1.2 El problema de la consistencia de las matemticas . . . . . .

1
1
5

2 Teoras de Primer Orden


2.1 Clculo Proposicional . . . . . . . . .
2.2 Tablas de verdad . . . . . . . . . . . .
2.3 Funciones booleanas y circuitos lgicos
2.4 Lenguajes de primer orden . . . . . .
2.5 Teoremas del clculo de predicados . .
2.6 Interpretaciones de L . . . . . . . . . .

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

11
11
16
20
23
28
29

3 Teorema de incompletez de Gdel


47
3.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.2 Demostracin del teorema de Gdel . . . . . . . . . . . . . . 49
3.3 Numeracin gdeliana . . . . . . . . . . . . . . . . . . . . . . 53
4 Mquinas de Turing
4.1 Introduccin . . . . . . . . .
4.2 Problema de la parada . . .
4.3 Mquinas Universales . . .
4.4 Problemas indecidibles de la
4.5 El Entscheidungsproblem .

. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
Aritmtica de Peano
. . . . . . . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

61
61
67
71
72
73

5 Dcimo problema de Hilbert

79

6 Introduccin a la Teora de Modelos

81

iii

iv

CONTENIDO

7 Algunas aplicaciones de la Teora de Modelos al Algebra y


a la Geometra Algebraica.
83
8 Principios de Transfer y ultraproductos

85

Introduccin
Estas son notas para un primer curso de Lgica Matemtica. Nuestro objetivo es cubrir una serie de tpicos entre los que se cuentan los clebres
teoremas de Gdel, la teora de las funciones recursivas, las Mquinas de
Turing y los conceptos bsicos de la Teora de Modelos.
Para el material que pienso cubrir, existen excelentes referencias en la
literatura. Aunque no seguir al pie de la letra ningn texto en particular,
los temas que trataremos en el curso seguirn no obstante un desarrollo
muy similar y en las mismas lneas de los libros clsicos [1], [3] y [2]. El
lector interesado en una visin panormica de la lgica matemtica puede
consultar [4]. Un desarrollo integral y bastante completo de la Teora de
Modelos aparece en [5]. Una exposicin completa del Dcimo Problema de
Hilbert, su historia, su solucin y sus implicaciones puede consultarse en [6].
El material correspondiente al ltimo captulo del curso aparece desarrollado
de manera sistemtica en [7].
En mi pgina personal https://sites.google.com/a/unal.edu.co/juan-dvelez/ abrir un espacio dedicado al curso, donde ir poniendo material
complementario y literatura que pueda resultar de inters.

vi

PREFACIO

Chapter 1

Orgenes de la Lgica
Matemtica
1.1

Las paradojas lgicas

Paradoja de Carl Hemple


Principio de induccin: si se observa un caso particular que corrobora
una determinada hiptesis H, entonces la probabilidad de que H sea cierta
aumenta. Hempel da el siguiente ejemplo. Propone como hiptesis la armacin: Todos los cuervos son negros. Cada vez que examinemos un cuervo,
y ste sea negro, la factibilidad de la hiptesis todos los cuervos son negros
crecer ligeramente. El principio de induccin, que de hecho constituye el
fundamento de toda ciencia, se ve ms que razonable.
De otro lado, la armacin todos los cuervos son negros es equivalente a
su contrarrecproco. Sea C(x) la sentencia el objeto x es cuervo. Sea N (x)
la sentencia el objeto x es negro. Entonces nuestra hiptesis sera:
(8x)(C(x) =) N (x))

(1.1)

Esta hiptesis es equivalente a su contrarrecproca: todos los objetos nonegros no son cuervos:
(8x)(:N (x) =) :C(x))

(1.2)

Por consiguiente, cada vez que observemos una manzana roja o veamos
que el cielo es azul, dichas experiencias estara proporcionando evidencia
emprica para corroborar la hiptesis (1.1), escrita en su forma lgicamente
1

CHAPTER 1. ORGENES DE LA LGICA MATEMTICA

equivalente (1.2). Una manzana roja es una cosa no-negra, y cuando la


examinamos, vemos que es un no-cuervo. Y as de manera anloga con el
cielo. El principio de induccin nos dira entonces que el hecho de observar
una manzana roja, el cielo azul, la sangre roja. . . , debera aumentar nuestra
fe en la creencia de que todos los cuervos son negros.

Paradoja de Pinocho
Denamos un pinocho como un ser al cual le crece la nariz si y solo si
miente. Qu pasara si Pinocho dijera: mi nariz se alargar?
Si en efecto se alarga, tendr que haber mentido (su nariz de alarga
solo cuando miente). Pero si en efecto minti, su armacin (mi nariz se
alargar) deber ser falsa y por consiguiente su nariz no podra haber crecido.
De otro lado, si no se alargara su armacin resultar falsa, y por tanto
habr mentido, de donde se sigue que su nariz debera haber crecido.
Una conclusin razonable es que !Pinochos no existen! Una paradoja
muy similar se puede leer en El Quijote de Cervantes.

Paradoja del Quijote (Captulo LI)


Con respecto a una pregunta que un forastero le hace a Sancho cuando
era gobernador de la nsula Barataria, estando presentes a todo el mayordomo y los dems aclitos, que fue:
Seor, un caudaloso ro divida dos trminos de un mismo seoro, y est
vuestra merced atento, porque el caso es de importancia y algo dicultoso...
Digo, pues, que sobre este ro estaba una puente, y al cabo della una horca
y una como casa de audiencia, en la cual de ordinario haba cuatro jueces
que juzgaban la ley que puso el dueo del ro, de la puente y del seoro, que
era en esta forma: Si alguno pasare por esta puente de una parte a otra,
ha de jurar primero adnde y a qu va; y si jurare verdad, djenle pasar, y
si dijere mentira, muera por ello ahorcado en la horca que all se muestra,
sin remisin alguna .
Sabida esta ley y la rigurosa condicin della, pasaban muchos, y luego en
lo que juraban se echaba de ver que decan verdad y los jueces los dejaban
pasar libremente. Sucedi, pues, que tomando juramento a un hombre jur
y dijo que para el juramento que haca7, que iba a morir en aquella horca que
all estaba, y no a otra cosa. Repararon los jueces en el juramento y dijeron:
Si a este hombre le dejamos pasar libremente, minti en su juramento, y
conforme a la ley debe morir; y si le ahorcamos, l jur que iba a morir en
aquella horca, y, habiendo jurado verdad, por la misma ley debe ser libre .

1.1. LAS PARADOJAS LGICAS

Pdase a vuestra merced, seor gobernador, qu harn los jueces del tal
hombre, que an hasta agora estn dudosos y suspensos, y, habiendo tenido
noticia del agudo y elevado entendimiento de vuestra merced, me enviaron
a m para que vuestra merced diese su parecer en tan intricado y dudoso
caso.
A lo que respondi Sancho: por cierto que esos seores jueces que a m
os envan lo pudieran haber escusado, porque yo soy un hombre que tengo
ms de mostrenco que de agudo; pero, con todo eso, repetidme otra vez el
negocio de modo que yo le entienda.

La paradoja de Berry
Consiste en la aparente contradiccin que se deriva de deniciones como
la siguiente: El menor entero positivo que no se puede denir con menos de
quince palabras.
Mediante algunas frases pueden describirse enteros positivos concretos.
Llamemos a aquellas frases que denen un entero particular, frases aritmticas. Por ejemplo, mil trescientos ocho , o el primer nmero primo
ms pequeo que contenga un billn de dgitos o dos elevado a la potencia trece millones , son frases aritmticas. Sin embargo, el conjunto de
enteros E que pueden denirse con frases aritmticas que contengan menos
de quince palabras es nito. Ello puesto que todas las frases aritmticas (de
hecho todas las frases) con quince o menos palabras son nitas en nmero,
y cada frase aritmtica dene solo un entero. Puesto que E es nito, debe
haber un nmero entero positivo n que sea el menor de todos los nmeros
enteros positivos que no estn contenidos en A.
Pero la frase El menor entero positivo que no se puede denir con
menos de quince palabras es una frase aritmtica que dene n. Pero dicha
frase contiene slo catorce palabras, lo cual contradice la denicin misma
del nmero n.

Paradoja de Bertrand Russell


La clebre Paradoja de Russel fue una de las inquietantes antinomias que
dio origen a la llamada "Crisis de los Fundamentos", la cual llev a la formacin de las escuelas intuicionista, logicista y formalista. Supongamos que el
universo de todos los conjuntos se denota por W: Dividamos a W en dos conjuntos mutuamente excluyentes W = E [ C. Mediante C hemos denotado
el conjunto de todos los conjuntos comunes. Un conjunto se llamar comn,
si no se contiene a s mismo como elemento. Como ejemplos de esta clase de

CHAPTER 1. ORGENES DE LA LGICA MATEMTICA

conjuntos estn el conjunto de seres humanos (el conjunto de humanos no


es un ser humano, por consiguiente no es elemento de s mismo).As mismo,
el conjunto de todos los automviles, de todos los leones, de todos los caballos..., casi cualquier conjunto que podamos imaginar resultar siendo comn,
de ah su nombre.
De otro lado, E denota el conjunto de todos los conjuntos extraos,
denidos como aquellos conjuntos que se contienen a s mismos como elementos: En E estara, por ejemplo, el conjunto de todos los conjuntos
innitos, pues este conjunto es as mismo innito; o el conjunto de todas las
ideas, o de todos los conceptos.
Nos preguntamos entonces de cul clase ser C: Si C es elemento de E,
entonces C hara parte de aquellos conjuntos extraos que son elementos
de s mismos, y por tanto C deber estar contenido en C, y no en E, como
habamos supuesto. Pero si C no est contenido en E deber estar contenido
en C. Y de ser esto cierto, sera un elemento de s mismo y por consiguiente
estara realmente en E, donde ya vimos que no puede estar. La nocin del
conjunto de todos los conjuntos entraa una inevitable contradiccin.
La misma paradoja puede formularse de la siguiente manera:

La paradoja de Herman Weyl


Esta paradoja utiliza dos conceptos semnticos: adjetivos autolgicos
y heterolgicos. Un adjetivo es autolgico si se calica a s mismo: Por
ejemplo, los adjetivos que calican una palabra como esdrjula, polislaba o
grave, son autolgicos, ya que la palabra esdrjula, la palabra polislaba
es polislaba y la palabra grave, por tener el acento en la penltima slaba
es grave. Los adjetivos que no son autolgicos se denominan heterolgicos. Caliente, fro, hermoso, rico, pobre. . . , (de hecho, la mayora de los
adjetivos) son heterolgicos.
Pregunta: de qu clase es el adjetivo heterolgico? Si fuera heterolgico,
se calicara a s mismo, y por consiguiente sera autolgico. Luego deber
ser autolgico. Pero s es autolgico se aplicara a s mismo, es decir, sera
por ende heterolgico.

Paradoja del examen imprevisto


Un profesor dicta cierta ctedra, todos los das, de lunes a viernes. Al
trmino de la primera semana de clase les informa a sus estudiantes que la
semana siguiente tendrn una evaluacin sorpresa perfecta. A continuacin
explica que con ello se compromete a respetar las siguientes dos condiciones:

1.2. EL PROBLEMA DE LA CONSISTENCIA DE LAS MATEMTICAS5


1. Ningn estudiante podrn saber de antemano el da en qu el examen
se realizar.
2. Con absoluta certeza la prueba se har en uno, y en solo uno, de los
cinco das de la semana.
Los estudiantes preocupados se preparan para afrontar el reto. Uno de
ellos, sin embargo, cae en la cuenta del siguiente hecho, el cual comunica
de inmediato a sus compaeros: el examen no podr ocurrir el viernes,
pues el jueves en la noche ya todos sabramos que tendra que efectuarse el
da siguiente, y en consecuencia se habra violado la condicin (1). Luego
el profesor, si respeta su promesa, deber hacerlo algn da entre lunes y
jueves. Pero tampoco podr ser el jueves, pues, por la misma razn anterior,
el mircoles en la noche todos sabran que al da siguiente se realizara, y
dejara de ser una sorpresa. De manera similar se descartan los otros das
de la semana.
Acaso es imposible que el profesor cumpla con su promesa? Y cmo no
podra cumplirla si en efecto decide hacer el examen, por ejemplo, el martes
o el mircoles, o cuando le venga en gana, y nadie nunca podra saberlo?

Paradoja de la Ley de Murphy


La ley de Murphy (LM) arma: indefectiblemente, todo lo que puede
salir mal, saldr mal. Un lgico escptico decide refutar esa armacin.
Para ello, razona como sigue: Si la LM es cierta, entonces deber ser cierta
empricamente. Luego yo podra comprobarla mediante una serie de buenos
experimentos. Pero de acuerdo con la misma LM, este intento de comprobarla deber salir mal, lo cual signica que en al menos en uno de dichos
experimentos la ley tendr que fallar, y por consiguiente la Ley de Murphy
no puede ser cierta.

1.2

El problema de la consistencia de las matemticas

A comienzos del siglo XX, el problema de la consistencia de la matemtica


era el ms importante que la escuela formalista deba resolver. El objetivo de
David Hilbert y su escuela era el de reducir todas las matemticas a un juego
simblico, en el que las sentencias o armaciones no fueran ms que simples
agregados de smbolos desprovistos de todo signicado intuitivo, construidas

CHAPTER 1. ORGENES DE LA LGICA MATEMTICA

a partir de un conjunto especco de smbolos y siguiendo unas reglas sintcticas determinadas. En este juego habra una serie de reglas de inferencia
que permitan deducir los teoremas de la teora a partir de sus axiomas, o
conjunto de sentencias jado de antemano. Las armaciones verdaderas de
la matemtica seran aquellas para las cuales existiese una deduccin a partir de los axiomas, usando exclusivamente las reglas de inferencia. Adems,
estas reglas deberan ser escogidas de forma tal, que una persona, an sin
saber nada de matemticas, o inclusive una mquina, podra determinar si
la deduccin de una sentencia particular era o no correcta, siguiendo para
ello un procedimiento puramente mecnico. Un lenguaje simblico de este
tipo, junto con sus reglas de inferencia y axiomas se denomina un lenguaje
de primer orden o sistema formal de primer orden. Digamos que los lgicos han propuesto varios de estos lenguajes, en los cuales puede formalizarse
toda la matemtica conocida. Quiz el ms usado de todos ellos sea la teora
de conjuntos de Zermelo-Frankel, o en forma abreviada, ZF. Este lenguaje
consta de
I Smbolos lgicos:
Comprenden:
Un conjunto de letras, x, y, z...
Los dos parntesis, ( ).
El smbolo de pertenencia, 2.
Los smbolos lgicos de conjuncin, disyuncin y negacin, ^, _, : , que
deben leerse como y, o y no.
Los cuanticadores existencial y universal, 9; 8, que se leen existey para
todo, respectivamente.
El smbolo de igualdad, =.
II Reglas de sintaxis:
Estas reglas determinan la gramtica del lenguaje (por motivos de extensin no se explicarn en detalle), y permiten saber con precisin
cules agregados de smbolos conforman sentencias o frmulas bien constituidas.

1.2. EL PROBLEMA DE LA CONSISTENCIA DE LAS MATEMTICAS7


Una sentencia bien construida sera, por ejemplo, la siguiente: 9z8y(:y 2
z), (1). En ella se arma intuitivamente que existe un
conjunto (el conjunto vaco) z, que no contiene ningn otro elemento. Una
sentencia en la cual no aparezca ninguna variable que no est
bajo el alcance de alguno de los cuanticadores 9; 8 se llama cerrada, y
puede ser pensada intuitivamente como una sentencia que hace
referencia a armaciones matemticas no ambiguas.
III Axiomas:
La teora ZF tiene diez axiomas y un esquema axiomtico, es decir un procedimiento que permite generar innitos axiomas usando una especie
de molde o patrn jo. Por ejemplo, las siguientes frmulas son cuatro
de los diez axiomas mencionados:

La primera representa el axioma de extensionalidad, que arma que dos


conjuntos son iguales si tienen los mismos elementos. A este
axioma le sigue la frmula (1) que, como vimos, arma la existencia de un
conjunto vaco. La ltima de las cuatro frmulas arma que
de un conjunto cualquiera x es siempre posible construir otro conjunto,
llamado la unin, y conformado por todos los elementos que
pertenecen a los elementos de x.
IV Reglas de inferencia:
stas reglas formalizan las de deduccin de la lgica aristotlica, como el
modus ponens, el cual permite deducir de la validez de las
frmulas P y P =) Q, la validez de Q. Otra regla de inferencia, es, por
ejemplo, aquella que permite deducir como vlida una frmula que se
obtiene de otra al hacer cierto tipo de reemplazos. Por ejemplo, de
z = z se seguira n = n.

CHAPTER 1. ORGENES DE LA LGICA MATEMTICA


Un teorema de la matemtica o una sentencia cierta en matemticas es
entonces cualquier sentencia que se derive de estos axiomas, usando
exclusivamente dichas reglas. Una sentencia falsa ser aquella para la
cual su negacin sea una sentencia cierta. Una demostracin de una
frmula A es entonces una lista fS1; S2; :::; Ag de frmulas que son
axiomas o que se pueden obtener de stos a partir de las reglas de
inferencia del sistema. A puede considerarse como la conclusin nal
de un razonamiento que involucra a S1,S2, etc. A esta lista se le llama
un texto demostrativo en el sistema. Se denotar por `A el hecho de
que A sea un teorema de F Z.

Un sistema formal se llama contradictorio si sus reglas de inferencia


permiten demostrar a la vez una armacin y su negacin. El problema
de la consistencia de las matemticas consiste entonces en demostrar la
imposibilidad de derivar una contradiccin en un sistema formal particular
que se escoja para desarrollar las matemticas. Garantizar la consistencia
de un sistema particular es pues la tarea ms importante a la que debe
enfrentarse un lgico. La razn es que si el lenguaje formal en cuestin
resulta contradictorio, no es difcil demostrar que en l puede demostrarse
cualquier armacin, lo cual lo convierte en un lenguaje por completo intil.
Por otro lado, en el esquema concebido por Hilbert, los sistemas formales en los cuales se desarrollara la matemtica deberan ser completos.
Esto signica que las sentencias bien formadas, tambin llamadas sentencias cerradas, habran de ser decidibles en el sistema, es decir, que para
cada sentencia cerrada, ella o su negacin ha de ser un teorema del sistema
formal. Este requerimiento prohbe que haya sentencias indecidibles, esto
es, sentencias para las cuales no es posible determinar ni su veracidad ni su
falsedad dentro del sistema. Hilbert, y de hecho la mayora de los matemticos y lsofos de ese momento, crean rmemente en el principio del tercero
excluido, el cual sostiene que toda armacin que posea sentido ha de ser
verdadera o falsa.
La tarea fundamental de los formalistas era, entonces, encontrar un sistema formal capaz de contener toda la matemtica conocida hasta el memento, que fuese completo y consistente. Se propusieron varios sistemas
formales como candidatos. Uno de ellos fue el concebido por los lgicos
britnicos Bertrand Russell y Alfred Whitehead en su monumental obra
Principia Matematica. Fue precisamente ste el sistema formal elegido por
Gdel para asestar el golpe mortal al programa de Hilbert. Gdel demostr
que todo sistema capaz de formalizar las matemticas (de hecho basta que en
l pueda formalizarse la aritmtica elemental), que fuese consistente, con-

1.2. EL PROBLEMA DE LA CONSISTENCIA DE LAS MATEMTICAS9


tendra inevitablemente una sentencia indecidible. De este hecho dedujo
Gdel que la consistencia del sistema no podra entonces demostrarse dentro del sistema mismo. Dicho en forma laxa, nunca podra demostrarse la
consistencia de las matemticas si dicha demostracin tuviera que efectuarse
usando mtodos matemticos.
El programa de Hilbert, en consecuencia, es un imposible absoluto. Las
consecuencias de este descubrimiento son asombrosas. Nunca antes se haba
encontrado una limitacin insuperable para la mente humana, ni que la imposibilidad de demostrar la consistencia de la matemtica se debiera a una
limitacin de nuestros conocimientos. Nunca nadie, sin importar cuan desarrolladas lleguen a ser las matemticas, podr demostrar que stas queden
exentas de contradicciones, a no ser que se recurra a principios o axiomas
que se escapen a los mtodos matemticos. Y como si esto no fuese suciente, en el mejor de los casos en que nuestro sistema formal resultase ser
consistente, siempre contendr proposiciones indecidibles y, por tanto, habr
aseveraciones para las cuales su veracidad o falsedad ser para siempre un
misterio.

10

CHAPTER 1. ORGENES DE LA LGICA MATEMTICA

Chapter 2

Teoras de Primer Orden


2.1

Clculo Proposicional

El llamado Clculo Proposicional, que denotaremos por L0 , proporciona el


ejemplo ms sencillo de lo que llamaremos un lenguaje formal , entendiendo
por ello un lenguaje en el cual las sentencias o armaciones deben construirse siguiendo estrictas leyes sintcticas, y en donde la nocin de "verdad"
adquiere un sentido preciso, una vez se reemplaza por la nocin de demostrabilidad.
Los smbolos primitivos de L0 son los siguientes:
1. Letras maysculas con subndices: A1 ; B1 ; C1 ; A2 ; B2 ;...
2. Los smbolo lgicos _, :, conjuncin y negacin, respectivamente, y
los parntesis (; ) que utilizaremos para resolver posibles ambigedades
en la escritura de las sentencias.
Las sentencias de L0 , que denotaremos por letras maysculas, y que
en el caso del Calculo Proposicional suelen llamarse frmulas; se construyen inductivamente siguiendo dos reglas:
i si A y B son frmulas, su conjuncin A _ B es una frmula.
ii La negacin de una frmula F es as mismo una frmula: es decir, :F es
una frmula.
Por ejemplo, :(A _ B), :(:A _ :B), :(A _ B) _ (:(:A _ :B)) son
ejemplos de frmulas.
A la frmula :A _ B se le denotar por A =) B. As mismo, denimos
A ^ B como abreviacin de la frmula :(:A _ :B). La frmula A () B
11

12

CHAPTER 2. TEORAS DE PRIMER ORDEN

es una manera compacta de escribir (A =) B) ^ (B =) A): Escrita en


trminos de los smbolos lgicos primitivos, esta frmula sera
:( (:(:A _ B)) _ (:(:B _ A)) ):
De manera intuitiva, las letras con ndices denotarn armaciones como,
A1 : "los humanos son mortales"; B1 :"los caballos tienen cuatro patas";
C1 :"los elefantes vuelan", etc. As,por ejemplo, :A1 _ C1 signicara, "los
humanos no son mortales o los elefantes vuelan". La frmula A1 ^B1 =) B1
dira intuitivamente que si "los humanos son mortales y los caballos tiene
cuatro patas" entonces "los caballos tienen cuatro patas": Escribiremos
F (A1 ; : : : ; An ) cuando deseemos destacar el hecho de que F es una combinacin de los smbolos lgicos primitivos y de las letras A1 ; : : : ; An :
En el lenguaje corriente la disyuncin (el "o") suele entenderse de manera
exclusiva: una sentencia de la forma A o B se asume cierta si A es cierta
o lo es B, pero no ambas a la vez. En lgica proposicional, no obstante, se
acostumbra a usar la disyuncin de manera no excluyente. As, entonces,
la frmula A _ B resulta "cierta" si una de las dos frmulas es "cierta" o si
ambas los son. Los dems smbolos, como la conjuncin, la implicacin o la
equivalencia, tendrn el mismo sentido intuitivo que en le lenguaje ordinario:
A ^ B ser "cierta" cuando ambas frmulas lo sean. De otro lado, A =) B
ser "cierta" cuando cada vez que "A" sea cierta B tambin lo sea. Pero si
A es "falsa", la implicacin tambin es cierta, lo cual resulta en ocasiones
engaoso: si un padre le promete a su hijo Juan una bicicleta si aprueba el
ao, entonces la implicacin g =) B, donde g es la sentencia "Juan aprob
el ao" y B es la armacin B : "Juan recibi una bicicleta como regalo
de su padre", ser falsa solo en el caso en el que Juan gane el ao y su
padre incumpla la promesa de regalarle la bicicleta. De otro lado, si Juan
pierde el ao y su padre decide darle de todas formas la bicicleta, el valor de
verdad de la implicacin ser siendo "verdadero". El padre no habr roto
su promesa. En el lenguaje corriente la promesa del padre suele entenderse
como una equivalencia, g () B. En este caso, la equivalencia es cierta si
el padre de Juan le da a su hijo la bicicleta en el caso, y solo en el caso, de
que ste gane el ao.
la esquiva nocin de verdad o certeza en L0 puede formalizarse de la
siguiente manera.
En primer lugar, introduzcamos los siguientes axiomas, por denicin,
frmulas que sern tomadas por "lgicamente verdaderas", es decir, frmulas
verdaderas solo en virtud de su estructura lgica.
Esquemas axiomticos para L0

2.1. CLCULO PROPOSICIONAL

13

E1: Para cualquier frmula A, la frmula A _ A =) A es un axioma.


E2: Para cualquier par de frmulas A; B, la frmula A =) A _ B es un
axioma.
E3: Para cualquier par de frmulas A; B, la frmula A _ B =) B _ A
es un axioma.
E4: Para cualquier terna de frmulas A; B; C, la frmula (A =) B) =)
(A _ C =) B _ C) es un axioma.
En sentido estricto, cada uno de los axiomas anteriores es en realidad
una coleccin de axiomas, que se obtienen cuando se reemplazan A; B; C
por frmulas determinadas. De ah que E1-E4 suelan llamarse esquemas axiomticos. Un axioma ser entonces una instancia particular de un esquema
axiomtico.
Denamos la nocin de prueba o demostracin en L0 :
Denicin 2.1.1 Un texto demostrativo o una demostracin en L0 es una
secuencia de frmulas F1 ; : : : ; Fn en la cual cada Fk es un axioma, o bien
existen frmulas Fi y Fj que anteceden a Fi (esto es, i; j < k), donde Fj es
precisamente la frmula Fi =) Fk . Cuando ello ocurre diremos que Fk se
obtiene de Fi y Fi =) Fk mediante una aplicacin del Modus Ponens.
Diremos que F1 ; : : : ; Fn es una demostracin de Fn . A la frmula Fn la
llamaremos un teorema de L0 o una tautologa. En particular, los axiomas
son siempre tautologas.
De manera ms general, denamos una deduccin de F a partir de un
conjunto de frmulas T como una secuencia nita de frmulas F1 ; : : : ; Fn
en la cual la ltima frmula es F , y en donde cada Fk es un axioma, o una
frmula de T; o bien existen frmulas Fi y Fj que anteceden a Fi (esto es,
i; j < k), donde Fj es precisamente la frmula Fi =) Fk . A las frmulas de
T se les llama hiptesis auxiliares en la demostracin de F:
Notemos que en la denicin anterior, una tautologa es una frmula
F que se deriva exclusivamente de los axiomas, sin hiptesis auxiliares, es
decir, se deriva de T , cuando T es el conjunto vaco. Esto lo indicaremos
mediante el smbolo ` F . Cuando F se deduce de un conjunto de hiptesis
T , escribiremos T ` F .
Observacin 2.1.2 Notemos que si T ` F1 ; : : : ; T ` Fn y T ` A1 ; : : : ; T `
Am son textos demostrativos, entonces obviamente la unin de ambas listas
T ` F1 ; : : : ; T ` Fn , T ` A1 ; : : : ; T ` Am es as mismo un texto demostrativo.

14

CHAPTER 2. TEORAS DE PRIMER ORDEN

Veamos algunos ejemplos de demostraciones. La primera de las proposiciones arma la transitividad de la implicacin:
Proposicin 2.1.3 (Transitividad de la implicacin) I Si T es un conjunto arbitrario de hiptesis y T ` A =) B y T ` B =) C, entonces
T ` A =) C.
Prueba. El siguiente texto demostrativo es una deduccin de A =) C a
partir de T :
T ` B =) C Hiptesis (Hip)
T ` (B =) C) =) (:A _ B =) :A _ C) (Esquema 4) E4
T ` :A _ B =) :A _ C, Modus Ponens (MP)
T ` (A =) B) =) (A =) C) (reescritura de la frmula anterior)
T ` A =) B (Hip)
T ` A =) C (Hip)
Proposicin 2.1.4 II Si A; B son frmulas, entonces B =) (A =) B) es
una tautologa.
Prueba. ` B =) B _ :A E2
` B _ :A =) :A _ B E3
` B =) :A _ B (transitividad de la implicacin TI)
` B =) (A =) B) (reescritura)
Proposicin 2.1.5 III Si A es una frmula, entonces A =) A es una
tautologa.
Prueba. ` A =) A _ A, E2
` A _ A =) A, E1
` A =) A transitividad de la implicacin.
Proposicin 2.1.6 IV Si A es una frmula, entonces A =) ::A y ::A =)
A son tautologas.
Prueba. ` :A =) :A es una tautologa (Proposicin anterior)
` ::A _ :A (reescritura)
` ::A _ :A =) :A _ ::A E3
` :A _ ::A MP
` A =) ::A reescritura.
La demostracin de que ::A =) A es una tautologa se deja como
ejercicio.

2.1. CLCULO PROPOSICIONAL

15

Proposicin 2.1.7 (Contrarrecproco) V Si A; B son frmulas, entonces


(A =) B) =) (:B =) :A) es una tautologa
Prueba. ` (B =) ::B) =) ((:A _ B) =) (:A _ ::B)) E4
` (B =) ::B) (Proposicin anterior)
` (:A _ B) =) (:A _ ::B) MP
` (:A _ ::B) =) (::B _ :A) E3
` (:A _ B) =) (::B _ :A) Transitividad
` (A =) B) =) (:B =) :A) (reescritura de la frmula anterior)
Proposicin 2.1.8 VI Si T ` A =) B entonces T ` (B =) C) =)
(A =) C)
Prueba. T ` (A =) B) =) (:B =) :A), proposicin anterior
T ` A =) B
T ` :B =) :A MP
T ` C _ :B =) C _ :A E4
T ` :B_C =) :A_C E3 (aplicado dos veces, junto con la transitividad
de la implicacin)
T ` (B =) C) =) (A =) C) reescritura.
Proposicin 2.1.9 Si T ` A =) B y T ` A =) (B =) C), entonces
T ` A =) C
Prueba. 1 T ` A =) B Hip
2 T ` A =) (B =) C) Hip
3 T ` (B =) C) =) (A =) C) Proposicion VI
4 T ` A =) (A =) C) Transitividad
5 T ` :A =) :A _ C E2
6 T ` :A =) (A =) C) reescritura
7 T ` A =) C, de la frmula 4 y la 6, despus de aplicar el Ejercicio
2.1.11, numeral 7.
Theorem 2.1.10 (Deduccin) Supongamos que T [ fAg ` B. Entonces
T ` A =) B
Prueba. Sea T [ fAg ` F1 ; : : : ; T [ fAg ` Fn = B una deduccin de B a
partir de T [ fAg. Mostremos por induccin completa sobre 1 i n que
T ` A =) Fi .
Para i = 1, la frmula F1 solo puede ser un axioma, un elemento de T o
la misma frmula A: En los primeros dos casos T ` F1 =) (A =) F1 ); de

16

CHAPTER 2. TEORAS DE PRIMER ORDEN

acuerdo con la Proposicin II. Del MP se sigue entonces que T ` (A =) F1 ).


Si F1 = A, entonces T ` A =) A, de acuerdo con la Proposicin III.
Paso inductivo: Veamos que T ` A =) Fk . Como en el caso anterior,
Fk puede ser un axioma, un elemento de T o la misma frmula A, o existen
frmulas Fi y Fi =) Fk que anteceden a Fk . En los primeros tres casos,
como en el caso i = 1, ya sabemos que T ` A =) Fk .
Finalmente, si Fk se sigue por MP de Fi y Fi =) Fk , entonces por la
hiptesis de induccin T ` A =) Fi y T ` A =) (Fi =) Fk ). De la
proposicin anterior se sigue que T ` A =) Fk , lo cual completa el paso
inductivo.
Ejercicio 2.1.11 Demuestre que las siguientes frmulas son tautologas:
1. B =) (C =) B)
2. B =) (C =) D) =) ((B =) C) =) (B =) D))
3. (:C =) :B) =) ((:C =) B) =) C))
4. Demuestre que si T ` A; T ` B, entonces T ` A ^ B
5. Demuestre que si T ` A =) B y T ` C =) D, entonces T ` A_C =)
B_D
6. ::A () A
7. Demuestre que si A; B; C son frmulas, entonces si T ` A =) C y
T ` :A =) C, entonces T ` C:
8. T ` A ^ :A =) B
9. Si T ` A =) C y T ` B =) C demuestre que T ` A ^ B =) C
10. Si T ` A ^ B entonces T ` A ^ B () :(:A _ :B)
11. T ` A () B y T ` C () D, entonces T ` A _ C () B _ D y
T ` A ^ C () B ^ D

2.2

Tablas de verdad

Una de las preguntas fundamentales acerca de todo lenguaje formal L es determinar si dicho lenguaje es consistente, lo cual signica que es imposible,

2.2. TABLAS DE VERDAD

17

usando las reglas de inferencia, demostrar a partir de los axiomas una determinada frmula y su negacin. Ello hara que el sistema formal resulte intil,
pues en este caso, como se establece en el ejercicio anterior, de una contradiccin se inere la validez de cualquier otra frmula: T ` A ^ :A =) B
No es claro en absoluto que en L0 no pueda existir una frmula F con la
propiedad de que F y :F sean ambas tautologas. Como veremos en esta
seccin, dicha posibilidad nunca ocurre en L0 . En otras palabras L0 es un
ejemplo de un sistema formal consistente. De hecho, demostraremos algo
ms fuerte: mostraremos que existe un algoritmo o procedimiento computacional (nocin que deniremos con precisin en el prximo captulo) que
nos permite decidir en un nmero nto de pasos si una determinada frmula
F de L0 es una tautologa. Dicho procedimiento involucra las denominas
tablas de verdad que se estudian desde la secundaria.
Recordemos que las tablas de verdad de la disyuncin y la negacin estn
dadas por (1 = verdadero, 0 = falso)
A B A_B
0 0
0
0 1
1
;
1 0
1
1 1
1

A :A
1 0 ;
0 0

A partir de estas tablas se construyen las tablas de verdad de cualquier


proposicin. Por ejemplo, :A _ B (es decir, A =) B) tendra como tabla
de verdad
A B A =) B
0 0
1
0 1
1
1 0
0
1 1
1
que se obtiene combinando las tablas de verdad de _ y : :
A B :A :A _ B
0 0
1
1
0 1
1
1
1 0
0
0
1 1
0
1

18

CHAPTER 2. TEORAS DE PRIMER ORDEN

De manera similar
A B A^B
0 0
0
0 1
0
1 0
0
1 1
1
A manera de ejemplo, calculemos la tabla de verdad de una instancia
cualquiera esquema axiomtico E4
A B C A =) B A _ C
0 0 0
1
0 1 0
1
1 0 0
0
1 1 1
1
0 0 1
1
0 1 1
1
1 0 1
1
1 1 1
1

=) B _ C (A =) B) =) (A _ C =) B _ C)
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
(2.1)
Vemos que su valor de verdad es siempre 1 para cualquier combinacin de
valores de verdad de las frmulas A; B; C.
Denicin 2.2.1 Una frmula F (A1 ; : : : ; An ) se llamar verdadera si para
cualquiera de las 2n posibles asignaciones de los valores "i = 0; 1 para las
letras Ai , el valor resultante de F al hacer su tabla de verdad, F ("1 ; : : : ; "n )
es siempre 1. Esto lo indicaremos escribiendo F ("1 ; : : : ; "n ) = 1:
Proposicin 2.2.2 Toda tautologa de L0 es una frmula verdadera.
Prueba. De manera similar a como se hizo en (2.1) se comprueba que cada
uno de los esquemas axiomticos E1 ; E2 ; E3 es una frmula verdadera.
De otro lado, si A y A =) B son verdaderas, entonces de la tabla de
verdad de la implicacin deducimos que B es tambin verdadera. Luego al
usar el MP en un texto demostrativo, vemos que de frmulas verdaderas se
desprenden frmulas tambin verdaderas. Esto muestra que toda tautologa
ha de ser una frmula verdadera.
Corolario 2.2.3 El Clculo Proposicional es consistente.
Prueba. Si F : A ^ :A fuera una tautologa entonces sera una frmula
verdadera. Pero ello no puede suceder, pues su tabla de verdad muestra que
el valor de verdad de F es siempre 0:

2.2. TABLAS DE VERDAD

19

El recproco de la proposicin 2.2.2 tambin es cierto. Es decir, toda


formula verdadera es una tautologa. Para demostrarlo utilizaremos el siguiente lema debido al lgico hngaro Lszl Kalmr.
Introduzcamos primero la siguiente notacin: sea F (A1 ; A2 ; : : : ; An ) una
frmula de L0 , y sea "1 ; : : : "n una escogencia particular de valores de verdad,
0 y 1 para las variables A1 ; : : : ; An . Supongamos que "0 es el valor de
verdad resultante para F cuando las Ai toman el valor "i . Con respecto a
la secuencia f"i : i = 1; : : : ng construimos nuevas frmulas: Ai = Ai , si
"i = 1 y Ai = :Ai , si "i = 0. De forma similar, denimos F = F , si
"0 = 1 y F = :F , si "0 = 0: Por ejemplo, si F (A; B; C) es la frmula
F : :(A =) (:B _ C)) , y si a A; B; C le asignamos los valores 0; 0; 1
entonces: A = :A; B = :B y C = C: De otro lado, como F (0; 0; 1) = 0,
entonces F = :F .
Lema 2.2.4 Sea F (A1 ; : : : ; An ) una frmula de L0 y sea "i una asignacin
de valores para las letras Ai . Entonces, si T = fA1 ; : : : ; An g; se sigue que
T `F :
Prueba. La demostracin procede por induccin completa sobre el nmero
k de componentes lgicas :; _ que aparecen en F .
Si k = 0, entonces F deber tener la forma F (A1 ) = A1 , con una sola
letra. En este caso el lema armara que fA1 g ` A1 ; si "1 = 1 o que
f:A1 g ` :A1 , si "1 = 0, y el lema resulta evidente.
Supongamos ahora que F tiene la forma F = G(A1 ; : : : ; An )_H(A1 ; : : : ; An ).
Si F ("1 ; : : : ; "n ) = 0, entonces F = :(G_H) y esto ocurre cuando G("1 ; : : : ; "n )
y H("1 ; : : : ; "n ) = 0. Por la hiptesis de induccin aplicada a G y H se sigue
que T ` :G y T ` :H; y por consiguiente T ` :G ^ :H: Pero esto signica
que T ` :(G _ H): Luego T ` F :
Si ocurre que G("1 ; : : : ; "n ) = 1 o H("1 ; : : : ; "n ) = 1; o ambos casos,
(digamos, por ejemplo, que G("1 ; : : : ; "n ) = 1), entonces F ("1 ; : : : ; "n ) = 1
y F = F: De nuevo, por la hiptesis de induccin T ` G; de donde se sigue
que T ` F = G _ H , como se deseaba probar.
Finalmente supongamos que F tiene la forma F = :G(A1 ; : : : ; An ). Si
G("1 ; : : : ; "n ) = 1, entonces F ("1 ; : : : ; "n ) = 0 y por consiguiente F = ::G.
Por induccin sabemos que T ` G de donde se desprende T ` F . De manera
anloga, si G("1 ; : : : ; "n ) = 0, entonces, por induccin, T ` :G. Luego
F ("1 ; : : : ; "n ) = 1 y por consiguiente F = :G, y es evidente entonces que
T `F :
Theorem 2.2.5 Toda frmula verdadera es una tautologa.

20

CHAPTER 2. TEORAS DE PRIMER ORDEN

Prueba. Sea F (A1 ; : : : ; An ) una frmula verdadera. Ello signica que


F = F , para cualquier asignacin "i de valores de verdad para las variables
Ai . Del lema anterior se sigue que T ` F = F , donde T = fA1 ; : : : ; An g.
Si hacemos "n = 1; y tomamos "i ; i < n de forma arbitraria, entonces
An = An y Tn 1 [ fAn g ` F , donde Tn 1 = fA1 ; : : : ; An 1 g. De igual
forma, si hacemos "n = 0, entonces Tn 1 [ f:An g ` F . Del Teorema de
la Deduccin se sigue que Tn 1 ` An =) F y Tn 1 ` :An =) F . Luego
6 Tn 1 ` F . Si denimos Tk = fA1 ; : : : ; Ak g, y T0 = ?, entonces, el mismo razonamiento anterior puede continuarse inductivamente para demostrar que
Tn 2 ` F ,: : : ; T1 ` F; T0 ` F . Es decir, F es una tautologa.
Ejercicio 2.2.6
1. Muestre que si P (A1 ; : : : ; An ) es una frmula del clculo proposicional,
entonces existe una frmula Q(A1 ; : : : ; An ) de la forma _r1 ;:::;rs Br1 ^
^Brs , donde cada Bij es igual a Aij ; o igual a :Aij ; tal que P () Q
es una tautologa.
2. Muestre que T ` P ^ :P =) :Q: Deduzca de aqu que si T ` P ^ :P
entonces T ` Q, para cualquier frmula Q:

2.3

Funciones booleanas y circuitos lgicos

El clculo proposicional (de manera ms general, la teora de lgebras de


Boole) puede aplicarse al diseo de circuitos lgicos. Una tabla de verdad
puede interpretarse de manera abstracta como una funcin booleana, concepto que denimos a continuacin.
Denicin 2.3.1 Denotemos por S el conjunto que consta de los elementos
0 y 1. Una funcin booleana de n argumentos es una funcin f : S n ! S
cuyo dominio es el producto cartesiano de n copias de S.
Las tablas de verdad de _, ^ y :, por ejemplo, pueden verse como
funciones booleanas, que denotaremos de la siguiente manera:
x1 x2 f (x1 ; x2 ) = x1 _ x2
0 0
0
0 1
1
;
1 0
1
1 1
1

x1 x2 f (x1 ; x2 ) = x1 ^ x2
0 0
0
0 1
0
1 0
0
1 1
1

2.3. FUNCIONES BOOLEANAS Y CIRCUITOS LGICOS

21

x f (x) = :x
1
0
0
0
De manera similar, la tabla de verdad toda frmula F (A1 ; : : : ; An ) es expresable como un funcin de las variables proposicionales que en este caso
denotaremos por xi en lugar de Ai . Es claro que si F y G son frmulas
equivalentes, es decir, si F (x1 ; : : : ; xn ) () G(x1 ; : : : ; xn ) es una tautologa,
entonces F y G computan las misma funcin booleana.
La siguiente proposicin nos dice que toda funcin booleana puede computarse a partir de las funciones elementales d(x1 ; x2 ) = x1 _x2 y n(x) = :x.
En lo que sigue, la disyuncin (o conjuncin) de funciones hi , con i 2 I,
se denotar por _i2I hi ; y por ^i2I hi , respectivamente.
Proposicin 2.3.2 Sea f : S
S ! S una funcin booleana arbitraria.
Entonces f se puede escribir como composicin de las funciones d(x1 ; x2 ) =
x1 _ x2 y n(x) = :x.
Prueba. Notemos en primer lugar que c(x1 ; x2 ) = x1 ^ x2 es claramente
expresable como c(x1 ; x2 ) = :(:x1 _:x2 ); que corresponde a la composicin
de funciones n(d(n(x1 ); n(x2 ))). De manera anloga se dene las funcin
c(x1 ; : : : ; xn ) = x1 ^
^ xn :
Partamos el dominio de f en dos conjuntos disjuntos: U0 , el conjunto
de todas las tuplas (a) = (a1 ; : : : ; an ) para las cuales f (a) = 0; y U1 , el
conjunto de todas las tuplas para las cuales f (a) = 1. Para cada tupla ja
(a) 2 U1 construyamos su funcin caracterstica, g(a) (x1 ; : : : ; xn ) = "1 (x1 ) ^
^ "n (xn ), donde "i es la funcin denida como "i (xi ) = xi , si ai = 1
y "i (xi ) = :xi , si ai = 0. (Por ejemplo, si (a) = (1; 0; 0; 1), entonces
g(a) (x1 ; x2 ; x3 ; x4 ) = x1 ^ :x2 ^ :x3 ^ x4 ).
Notemos que g(a) est denida de tal forma que g(a) (b) = 1 si y solo si
(b) = (a):
Veamos que f (x1 ; : : : ; xn ) = _(a)2U1 g(a) (x1 ; : : : ; xn ). Distingamos dos
casos:
1. Si (b) 2 U0 , entonces g(a) (b) = 0 para todas las tuplas (a) 2 U1 y por
tanto _(a)2U1 g(a) (b) = 0 = f (b):
2. Si (b) 2 U1 , entonces g(b) (b) = 1 y _(a)2U1 g(a) (b) = f (b) = 1:
De (1) y (2) se sigue la validez de la proposicin.

22

CHAPTER 2. TEORAS DE PRIMER ORDEN

Ejemplo 2.3.3 Sea f la funcin booleana denida mediante la tabla siguiente:


x1 x2 f (x1 ; x2 )
0 0
0
0 1
1
:
1 0
1
1 1
0
Expresemos f como composicin de funciones elementales. Para cada pareja
(a1 ; a2 ) con la propiedad de que f (a1 ; a2 ) = 1 construimos su correspondiente funcin caracterstica, de acuerdo con el procedimiento explicado en la
demostracin de la proposicin anterior:
g(0;1) (x1 ; x2 ) = :x1 ^ x2

g(1;0) (x1 ; x2 ) = x1 ^ :x2 :

De aqu que f (x1 ; x2 ) = (:x1 ^ x2 ) _ (x1 ^ :x2 ):


Los circuitos electrnicos pueden modelar las funciones elementales n(x);
la funcin d(x1 ; : : : ; xn ) y la funcin c(x1 ; : : : ; xn ), en donde cada entrada 1
o 0 se simula con un pulso de corriente, o su ausencia. Es costumbre denotar
estos circuitos mediante los siguientes smbolos:

Un circuito electrnico podra utilizarse para determinar si una determinada


frmula es o no una tautologa. Por ejemplo, sea F (A; B; C) la frmula
A ^ B =) A ^ C. Construyamos la funcin booleana que la representa
f (x1 ; x2 ; x3 ) = :(x1 ^x2 )_(x1 ^x3 ): Un circuito para computar esta funcin

2.4. LENGUAJES DE PRIMER ORDEN

23

sera el siguiente:

f (x1 ; x2 ; x3 ) = x1 ^ x2 =) x1 ^ x3
Vemos que si x1 = 1, x2 = 1 (posiciones iluminadas) ty x3 = 0 (oscura), el resultado es f (1; 1; 0) = 0 (oscura). De aqu que la frmula no
sea una tautologa. El programa "Logisim", disponible gratis en internet
(http://logisim.uptodown.com/) proporciona una herramienta para el diseo de circuitos electrnicos, muy fcil de usar.
Ejemplo 2.3.4 Represente mediante circuitos electrnicos las proposiciones
A ^ B =) (A ^ C) _ B y A _ B () B _ (C _ A)
Encuentre una representacin de la funcin
f (x1 ; x2 ; x3 ) =

1, si x1 = 1 y x2 = 0
0 en otro caso

Sea p = (ai ) un punto del conjunto X = S


S (n factores). Muestre
cmo construir una funcin f:X ! S que se anule solamente en p. Es decir,
tal que f (q) = 0 sii q = p. Si A = fp1 ; : : : ; pm g, muestre cmo construir una
funcin f : X ! S con la propiedad de que f (p) = 0 si y solo si p 2 A:
Utilizando el numeral anterior d una prueba de la Proposicin 2.3.2.

2.4

Lenguajes de primer orden

En esta seccin introducimos uno de los conceptos fundamentales del curso.


Un lenguaje de primer orden L consiste en los siguientes datos:
1. Contables smbolos funcionales f1 ; : : : ; fn ; : : :
2. Contables smbolos para relaciones R1 ; : : : ; Rn ; : : :

24

CHAPTER 2. TEORAS DE PRIMER ORDEN


3. Constantes del lenguaje c1 ; : : : ; cn ; : : :
Cada smbolo fi o Ri de L viene especicado con un nmero determinado de argumentos, n, que llamaremos su grado.
4. Variables: x1 ; : : : ; xn ; : : : ; y1 ; : : : ; yn ; : : :(un nmero contable innito)
5. Smbolos lgicos _,:; a partir de los cuales se denen =); ^ y (),
como en la seccin anterior. Adicionalmente, introducimos un smbolo
para el cuanticador universal, 8, "para todo".
6. El smbolo de igualdad "=":
7. Denamos a continuacin los trminos de L. Un trmino en L se
dene inductivamente como una variable x, o una constante c, o una
expresin que se obtiene de manera recursiva de la siguiente forma: si
t1 ; : : : ; tn son trminos ya construidos, y f es un smbolo funcional de
grado n, entonces f (t1 ; : : : ; tn ) es un trmino.
8. Las frmulas de L son expresiones construidas de la siguiente manera:
i Si t1 ; : : : ; tm son trminos, y R es un smbolo de relacin de grado m,
entonces R(t1 ; : : : ; tm ) es una frmula. Si t1 y t2 son trminos,
entonces t1 = t2 es una frmula. A estas frmulas se les llama frmulas
atmicas.
ii De manera inductiva, si F , G y H son frmulas ya construidas,
entonces :F , F _ G y 8xH son frmulas. A la frmula :(8x):H
se le denota (9x)H. El smbolo 9 se lee "existe", y es llamado el
cuanticador existencial.
9. Las variables libres de una frmula A se denen inductivamente como
sigue: si F es atmica, toda variable que aparece en F es libre. Si A
es de la forma :F o de la forma F _ G; entonces las variables libres
de A son precisamente las variables libres de F , en el primer caso, y
las variables libres de F y G, en el segundo caso. Si A es de la forma
8xF , entonces sus variables libres son todas las variables libres de F;
excepto la variable x. En este caso decimos que x est bajo el alcance
del respectivo cuanticador, y se dice que x es una variable ligada o
acotada.

10. Cuando x1 ; : : : ; xn sean variables libres en F escribiremos F (x1 ; : : : ; xn ):


Una frmula sin variables libres se denomina una sentencia de L:

2.4. LENGUAJES DE PRIMER ORDEN

25

11. Si x es libre en A(x) y t es un trmino; decimos que t es reemplazable


por x en A si las variables que aparecen en t quedan libres en A(t), la
frmula que se obtiene de A reemplazando todas las ocurrencias libres
de x por t.
Por ejemplo, si A(x1 ) es la frmula 9x2 (x2 6= x1 ) y t = x3 + c entonces
t es reemplazable en A(x1 ) y A(t) = 9x2 (x2 6= x3 + c):

Si t = x2 , entonces t no es reemplazable en A(x1 ). En este caso


A(x2 ) sera la frmula 9x2 (x2 6= x2 ), cuyo signicado es diferente del
signicado original de A(x1 ):

12. Si F (x1 ; : : : ; xs ) es una frmula cuyas variables libres son x1 ; : : : ; xs


entonces a la frmula 8x1
8xs F (x1 ; : : : ; xs ) se le llama la clausura
de F:
13. Usaremos parntesis (; )y corchetes [; ] para abreviar ciertas frmulas
o para resolver ambigedades en la escritura de las frmulas y los
trminos de L.
14. Los axiomas de L se dividen en dos clases:
Axiomas lgicos: son las clausuras de cualquier frmula de una de las
formas siguientes:
T1 P (F1 ; : : : ; Fn ); donde P (A1 ; : : : ; An ) es una tautologa y Fi son
frmulas de L:
C1 8xF (x) =) F (t), donde t es un trmino reemplazable por x en
F.
C2 8x(F =) G) =) (8xF =) 8xG), donde F y G son frmulas.
C3 F =) 8xF , si x no ocurre libre en F .

I1 t1 = t01 ^
^ tn = t0n =) f (t1 ;
; tn ) = f (t01 ; : : : ; t0n ), donde ti ; t0i
son trminos de L y f es cualquier smbolo funcional de grado n:
I2 t1 = t01 ^
^ tn = t0n =) R(t1 ;
; tn ) () R(t01 ; : : : ; t0n ), donde
R es cualquier smbolo de relacin de grado n en L:
I3 t = t, para todo trmino t de L.
AP Los axiomas propios de L: estas son sentencias que dependen de
cada teora especca.
15. Como en el Clculo Proposicional, los teoremas de L son aquellas frmulas que se obtienen de los axiomas utilizando el modus ponens. De

26

CHAPTER 2. TEORAS DE PRIMER ORDEN


manera ms general, si T es un conjunto de frmulas de L, escribiremos T ` F cuando exista una secuencia F1 ; : : : ; Fn de frmulas de L
en la cual Fn = F; y en donde cada Fi es un axioma (lgico o propio), o
Fi 2 T , o existen frmulas Fj , Fk en esta secuencia que anteceden a Fi
(es decir, j; k < i), donde Fk tiene la forma Fj =) Fi (deduccin por
MP). Escribiremos simplemente ` F; si F se deduce exclusivamente
a partir de los axiomas (el conjunto de hiptesis T es vaco).

Observacin 2.4.1 El primer axioma T1 merece una aclaracin: supongamos que P (A1 ; : : : ; An ) es una tautologa del clculo proposicional. Entonces
el axioma nos dice que al reemplazar las letras proposicionales de P por frmulas de L, la frmula resultante es un axioma. Por ejemplo, sea P la tautologa P (A1 ; A2 ) : (A1 =) A2 ) =) (:A2 =) :A1 ). Si hacemos A1 (x1 ; x2 )
la frmula x1 = x2 ; y A2 (x1 ; x 2 ; x 3 ) la frmula R(x1 ; x2 ; x3 ), donde R es
un determinado smbolo de relacin de grado 3, entonces F (x1 ; x2 ; x3 ) es un
axioma, donde F (x1 ; x2 ; x3 ) denota la frmula
[x1 = x2 =) R(x1 ; x2 ; x3 )] =) [:R(x1 ; x2 ; x3 ) =) :(x1 = x2 )]:
De manera similar,
8x1 (x1 = x1 _ x1 = x2 + c)) _ :8x1 (x1 = x1 _ x1 = x2 + c))
es un axioma, pues resulta de reemplazar la frmula
8x1 (x1 = x1 _ x1 = x2 + c))
en la tautologa A1 _ :A1 .
Veamos algunos ejemplos de lenguajes de primer orden:
Ejemplo 2.4.2 Un Clculo de Predicados L0 : su lenguaje consiste de una
coleccin contable especca smbolos de funciones y de relaciones
L = ff1 ; : : : ; fn ; : : : ; R1 ; : : : ; Rm ; : : : ; c1 ; : : : ; cs ; : : :g.
Sus axiomas son los axiomas lgicos exclusivamente (no hay axiomas propios).
Ejemplo 2.4.3 Grupos: G = ff; 1g. Aqu f denota un smbolo funcional
de grado dos que representa la multiplicacin en el grupo, y la constante 1
denota el elemento identidad: Como es costumbre, denotamos f (x; y) por
x y. Los siguientes son trminos de G: (x y), (x y) z: ((x y) z) 1, etc.
Ejemplos de relaciones en G son los siguientes: x y = x 1, (x y) z = (x y) z,
etc. Los axiomas propios de G son:

2.4. LENGUAJES DE PRIMER ORDEN

27

G1 8x(x 1 = 1 x)
G2 8x8y8z((x y) z = (x y) z)
G3 8x9y(x y = y x = 1)
G4 Si aadimos el axioma 8x8y(x y = y x) se obtiene la teora de grupos
de abelianos.
Ejemplo 2.4.4 Aritmtica de Peano (AP): LAP = f0; ; +; sg. Sus axiomas
propios son (el smbolo 6= es una abreviacin de : =):
N1 8x(s(x) 6= 0)
N2 8x(x 6= 0 =) 9y(s(y) = x)
N3 8x(x + 0 = x)
N4 8x8y(x + s(y) = s(x + y))
N5 8x(x 0 = 0)
N6 8x8y(x s(y) = (x y) + x))
N7 Induccin: 8z[A(0; z) ^ 8y(A(y; z) =) A(s(y); z)) =) 8xA(x; z)]:
Ejemplo 2.4.5 Anillos R = f+; ; ; 1; 0g
R1 Los axiomas G1 a G3
R2 8x8y8z(x

y = z () x = y + z)

R3 8x(x + 0 = x)
R4 8x(x 1 = 1 x = x)
R5 8x8y8z(x (y z) = (x y) z)
R6 8x8y8z(x (y + z) = x y + x z)
R7 8x8y8z((x + y) z = x z + y z)
Ejemplo 2.4.6 Campos F = f1; 0; +; ; g
F0 Los axiomas R0-R6 y G4

28

CHAPTER 2. TEORAS DE PRIMER ORDEN

F1 8x[x 6= 0 =) 9y(x y = 1)]:


Ejemplo 2.4.7 Teora de campos algebraicamente cerrados F = f1; 0; +; ; g.
A los axiomas de la teora anterior se le aade la siguiente coleccin contables
de axiomas:
1. 8a1 9x(x + a1 = 0)
2. 8a1 8a2 9x(x2 + a1 x + a2 = 0)
3. 8a1

8an 9x(xn + a1 xn

+ an

1x

+ an = 0):

Ejemplo 2.4.8 Grafos: G = fRg, donde R es un smbolo de relacin de


grado dos. Sus axiomas propios son:
1. 8x:R(x; x)
2. 8x8y(R(x; y) =) R(y; x)):

2.5

Teoremas del clculo de predicados

A manera de ejemplo, veamos cmo demostrar algunos teoremas de un clculo de predicados L0 .


Proposicin 2.5.1 (Generalizacin) Sea T un conjunto de frmulas de
un clculo de predicados L0 y supongamos que x no aparece libre en ninguna
frmula de T . Sea A una frmula de L0 (en la cual x puede o no estar
libre). Si se da que T ` A se cumple entonces que T ` 8xA.
Prueba. Supongamos que F1 ; : : : ; Fn = A es una demostracin de A bajo
las hiptesis T . Veamos por induccin sobre i 1 que T ` 8xFi .
Si i = 1, F1 puede ser solo un axioma lgico o una frmula de T . En el
primer caso su cerradura es por denicin un axioma lgico; luego T ` 8xF1 .
En el segundo caso, si F1 2 T , como x no aparece en F1 (hiptesis), entonces
el axioma lgico C3 implica que T ` F1 =) 8xF1 de donde vemos que
T ` 8xF1 , por MP.
Paso inductivo: si Fi es axioma lgico o una frmula de T estamos en el
mismo caso anterior. Supongamos entonces que Fj y Fj =) Fi anteceden a
Fi . Por la hiptesis de induccin T ` 8xFj y T ` 8x(Fj =) Fi ). De C2 y
del MP deducimos T ` 8xFj .

2.6. INTERPRETACIONES DE L

29

Proposicin 2.5.2 Sea T un conjunto de frmulas de un lenguaje L. Supongamos que para una frmula F (x) se da que T ` F (c), donde c es una
constante que no aparecen en ninguna frmula de T . Sea F1 ; : : : ; Fn = F (c)
una demostracin de F (c). Escojamos una variable z que no aparezca en
ninguna frmula de T y en ninguna frmula Fi . Entonces deber darse que
T ` 8zF (z).
Prueba. Denotemos por Fi0 las frmulas que resultan de sustituir en Fi cada
ocurrencia de c por la variable z: Veamos por induccin sobre i que T ` Fi0 .
Si F1 es un axioma lgico, es fcil ver que F10 tambin es un axioma lgico. Si
F1 est en T , entonces F10 = F1 , puesto que c no aparece en ninguna frmula
de T . De otro lado, si Fj y Fj =) Fi anteceden Fi , entonces por induccin
T ` Fj0 y T ` Fj0 =) Fi0 y en consecuencia T ` Fj0 . Luego T ` F (z), y como
z no aparece en ninguna frmula de T , de la proposicin anterior se sigue
T ` 8zF (z):
Ejercicio 2.5.3 Demuestre que en cualquier clculo de predicados es cierto
que:
1. ` 8x8yP =) 8y8xP , donde P es una frmula de L
2. ` 8xP =) 9xP
3. Si F (x) es una frmula con variable libre x entonces ` 8xF (x) si y
solo si ` 8zF (z):
4. Si ` B(t), para algn trmino t de L, entonces ` 9xB(x).

2.6

Interpretaciones de L

Una interpretacin de un lenguaje de primer orden


L = ff1 ; : : : ; fn ; R1 ; : : : ; Rm ; c1 ; : : : ; cs ; : : :g;
consiste de los siguientes datos:
1. Un conjunto M no vaco llamado el universo de la interpretacin.
2. Para cada smbolo fi 2 L de grado d una funcin fi : M d ! M
3. Para cada smbolo Ri 2 L de grado d una relacin Ri
4. Para cada constante ci 2 L un elemento ci 2 M:

Md

30

CHAPTER 2. TEORAS DE PRIMER ORDEN


5. Asociada a cada tupla (a) = (a1 ; : : : ; an ; : : :) de elementos en M , que
algunas veces denotaremos simplemente como a, denimos la evaluacin de un trmino t de L en (a), que denotaremos por t(a); de la
siguiente manera:
i xi (a) = ai
ii ci (a) = ci
iii Inductivamente: si t1 (a); : : : ; tn (a) estn ya denidos, y
si t = f (t1 ; : : : ; tn ); denimos t(a) = f (t1 (a); : : : ; tn (a)):
6. Sea F una frmula de L. Denamos cundo F se satisface en (a), lo
cual denotaremos como M j= F (a); de la siguiente manera:
i Si F es atmica de la forma t1 = t2 , entonces
M j= F (a) si t1 (a) = t2 (a) en M:
ii Si F es atmica de la forma Ri (t1 ; : : : ; tn ) entonces
M j= F (a) si (t1 (a); : : : ; tn (a)) 2 Ri :
iii Si F = :A, entonces M j= F (a) si no se da que M j= A(a):

iv Si F = A _ B, entonces M j= F (a) si M j= A(a) o se da que


M j= B(a):

v Si F : 8xA(x; y1 ; : : : ; yn ); entonces M j= F (a) si para todos los


elementos b 2 M se cumple M j= A(b; a):

Notemos que de acuerdo con la denicin anterior se debe cumplir que:


i Si F : A ^ B; entonces M j= F (a) si M j= A(a) y tambin se cumple que
M j= B(a):
ii Si F : A =) B; entonces M j= F (a) si cada vez que se cumpla M j= A(a)
tambin se cumple M j= B(a):
iii Si F : A () B; entonces M j= F (a) si M j= A(a) se cumple si y solo
si se da que M j= B(a):
iv Si F : 9xA(x; y1 ; : : : ; yn ) entonces M j= F (a) si existe un elemento b 2 M
para el cual se cumple M j= A(b; a):

2.6. INTERPRETACIONES DE L

31

Veamos, por ejemplo, que este ltimo numeral tiene en efecto esa interpretacin. La frmula F es una abreviacin de
F (y1 ; : : : ; yn ) = :8x:A(x; y1 ; : : : ; yn ):
Si (a) es una tupla de elementos de M , entonces, si existe b0 en M tal
que M j= A(b0 ; a1 ; : : : ; an ), claramente M j= :A(b0 ; a1 ; : : : ; an ) no es cierto:
Luego no se cumple que M j= 8x:A(x; a1 ; : : : ; an ): Por tanto se cumple que
M j= :8x:A(x; a1 ; : : : ; an ): De manera recproca: si M j= F (a), entonces
no se cumple M j= 8x:A(x; a1 ; : : : ; an ). Se sigue entonces que debe existir
b0 en M; de tal manera que M j= :A(b0 ; a1 ; : : : ; an ) no se satisface. Luego
deber darse que M j= A(b0 ; a1 ; : : : ; an ).
Ejercicio 2.6.1 Sean P (A1 ; : : : ; An ) y Q(A1 ; : : : ; An ) dos frmulas equivalentes del clculo proposicional (es decir, P () Q es una tautologa).
Muestre que:
M j= 8x1

8xn P (x1 ; : : : ; xn ) si y solo si M j= 8x1

8xn Q(x1 ; : : : ; xn );

donde P (x1 ; : : : ; xn ), respectivamente Q(x1 ; : : : ; xn ); son frmulas del clculo de predicados que se obtienen de reemplazar cada variable proposicional
Ai en P , respectivamente en Q, por una frmula Fi (x1 ; : : : ; xn ).
Denicin 2.6.2
1. Una frmula F de L se dice que es vlida o cierta en una interpretacin
M si M j= F (a); para toda tupla (a): Si todos los axiomas propios de
L son ciertos en M decimos que M es un modelo de L:
2. En general se llama teora a un subconjunto T de sentencias de L: Un
modelo para T es una interpretacin en la cual todas las frmulas de
T son vlidas.
3. La teora T se llama inconsistente si existe una frmula P de L tal que
T ` P ^ :P . La teora T se llama consistente si no es inconsistente.
4. Decimos que la sentencia F se sigue lgicamente de T , y escribiremos T j= F; si en toda interpretacin M donde sean vlidas todas las
frmulas de T tambin es vlida F:
Observacin 2.6.3

32

CHAPTER 2. TEORAS DE PRIMER ORDEN


1. En la denicin anterior no se hace ninguna referencia a la validez
de los axiomas lgicos. La razn es que, como mostraremos a continuacin, estos axiomas son siempre vlidos en cualquier interpretacin
de L.
2. Notemos adems que si F (y1 ; : : : ; ym ) entonces M j= F (a) solo depende de las entradas a1 ; : : : ; am en (a). En particular, si F es un sentencia (no posee variables libres) entonces el hecho de que se cumpla o
no M j= F (a) no depender de la tupla (a). De aqu que sea razonable
escribir simplemente M j= F para indicar que F es vlida en M .

Proposicin 2.6.4 Sea M una interpretacin cualquiera de un clculo de


predicados L0 : Entonces los axiomas lgicos son todos vlidos en M .
Prueba.
1. Veriquemos la armacin para los axiomas del primer grupo T1 . Sea
P (A1 ; : : : ; An ) una tautologa del clculo proposicional. El Ejercicio
2.2.6 muestra que existe una frmula equivalente Q(A1 ; : : : ; An ) de
la forma _(r1 ;:::;rs ) Br1 ^
^ Brs ; donde cada Bij es igual a Aij o
a su negacin :Aij : Luego, del Ejercicio 2.6.1 vemos que demostrar
M j= 8x1
8xn P (x1 ; : : : ; xn ) es equivalente a demostrar
M j= 8x1

8xn Q(x1 ; : : : ; xn )

(Q(x1 ; : : : ; xn ) denota la frmula de L0 que se obtienen despus de


reemplazar cada Aij por una determinada frmula Fij (x1 ; : : : ; xn ).
Supondremos que las variables libres de cada Fij estn incluidas dentro
del conjunto x1 ; : : : ; xn ). Veamos entonces que para cualquier tupla
(a) = (a1 ; : : : ; an ) se cumple M j= Q(a). Asignmosle a cada Bji un
valor de verdad, igual a 1; si M j= Fji (a); e igual a 0 en caso contrario.
Como Q(A1 ; : : : ; An ) es una tautologa, para esta asignacin de valores
de verdad se deber tener que alguna de las frmulas Br1 ^
^ Brs
resulta tener un valor de verdad igual a 1; y por tanto el valor de
verdad de cada Bri en dicha conjuncin deber ser tambin 1. Esto
signica entonces que M j= Fri (a), para todos los ndices r1 ; : : : ; rs y
en consecuencia que M j= Fr1 (a) ^
^ Frs (a): De aqu que Q(a) se
satisfaga en M .
2. Veriquemos la validez de la clausura de C1 . Denotemos por P (x0 ; x)
una frmula cuyas variables libres son precisamente las que aparecen
en la tupla de variables x. Como t se puede sustituir por x0 en P ,

2.6. INTERPRETACIONES DE L

33

entonces t no puede involucrar la variable x0 : Sea (a) = (a1 ; : : :) una


tupla arbitraria de elementos de M: Debemos vericar entonces que
M j= F (a), donde F denota la frmula 8x0 P (x0 ; x1 ; : : : ; xn ) =) P (t):
Queremos entonces ver que si para todo elemento b de M se da que
M j= P (b; a), entonces deber darse M j= P (t(a); a). Pero esto es
obviamente cierto cuando b es precisamente t(a):
3. Veriquemos la validez de cualquier clausura de C2
8x0 [(P (x0 ; x) =) Q(x0 ; x)] =) [8x0 P (x0 ; x) =) 8x0 Q(x0 ; x)];
lo que equivale a vericar esta frmula para cualquier tupla (a). Sea
(a) una tupla de elementos de M . Debemos vericar que si se cumple
(H) M j= 8x0 [(P (x0 ; a) =) Q(x0 ; a)] entonces se cumple (T) M j=
8x0 P (x0 ; a) =) 8x0 Q(x0 ; a): Esto timo, a su vez, signica que si si se
cumple M j= 8x0 P (x0 ; a) entonces se debe cumplir M j= 8x0 Q(x0 ; a):
Y esta armacin quiere decir:
(T): si se da que M j= P (b; a), para todos los b 2 M entonces deber
darse que M j= P (b0 ; a), para todos los b0 2 M:

Nuestra hiptesis (H), de otro lado, consiste en el hecho de que en


M se satisface la frmula 8x0 F (x0 ; a), donde F (x0 ; x) : P (x0 ; x) =)
Q(x0 ; x): Ello quiere decir que para todo b0 2 M se cumple M j=
F (b0 ; a); o en otras palabras, que se da M j= P (b0 ; a) =) Q(b0 ; a); lo
cual ocurre si:
(H): cada vez que se de M j= P (b0 ; a), debe darse M j= Q(b0 ; a), sin
importar cul sea el elemento b0 .
Veriquemos entonces (T): si se cumple M j= P (b; a), para todos los
b 2 M , entonces para un b0 particular es cierto que:
M j= P (b0 ; a); y por nuestra hiptesis (H), tambin sera cierto que
M j= Q(b0 ; a); y esto es verdad para cualquier b0 , luego
M j= Q(b0 ; a)) para todo b0 2 M , como se quera probar.

4. La validez de la clausura de C3 es fcil de comprobar, y se deja como


ejercicio.
5. Veriquemos la validez de I1 en una tupla arbitraria (a). Sean ti ; t0i
trminos de L. Supongamos
M j= t1 (a) = t01 (a) ^

^ tn (a) = t0n (a):

34

CHAPTER 2. TEORAS DE PRIMER ORDEN


Debemos vericar que
M j= f (t1 ; : : : ; tn )(a) = f (t01 ; : : : ; t0n )(a) (#):
Pero esto quiere decir que
f (t1 ; : : : ; tn )(a) = f (t1 (a);

; tn (a));

respectivamente, f (t01 ; : : : ; t0n )(a) = f (t01 (a);


; t0n (a)); y obviamente
0
0
M j= ti (a) = ti (a) signica que ti (a) = ti (a) en M; de donde se sigue
de inmediato la validez de (#).
6. Veriquemos la validez de I2. En este caso debemos vericar que
M j= R(t1 ; : : : ; tn )(a) () R(t01 ; : : : ; t0n )(a);
lo cual signica que M j= R(t1 (a); : : : ; tn (a)) se da si y solo si M j=
R(t01 (a); : : : ; t0n (a)). Pero esto es obvio en virtud de que ti (a) = t0i (a).
7. La validez de I3 es obvia.

Ejercicio 2.6.5 Determine si las siguientes frmulas de L0 son vlidas en


cualquier interpretacin.
1. (8xP =) 8xQ) =) 8x(P =) Q) ( Recproco del axioma C2).
2. Si x no aparece libre en P entonces M j= (P =) Q) =) (P =) 8xQ):
3. 8x[P (x) =) 9xP (x)]
4. 8xP (x) =) 9xP (x)
5. 9x8yP () 8x9yP
6. Determine si en la Aritmtica de Peano la siguiente frmula es vlida:
[8x(x = 0) =) 8x9y((1+1) y = x)] =) 8x[x = 0 =) 9y((1+1) y = x)]:
7. Sea F una frmula en L. Muestre que existe una frmula H con la
siguientes dos propiedades:

2.6. INTERPRETACIONES DE L

35

i H tiene forma normal H = U1 x1


Un xr G(x1 ; : : : ; xr; y1 ; : : : ; ys );
donde x1 ; : : : ; xr ;r; y1 ; : : : ; ys son las variables libres de G, cada
Ui es uno de los dos cuanticadores 8 o 9 y G no contiene cuanticadores.
ii Si M es cualquier interpretacin de L entonces M j= F si y solo si
M j= H.
8. Sea F una frmula de L de la forma U1 x1
Un xr G(x1 ; : : : ; xr; y1 ; : : : ; ys );
donde x1 ; : : : ; xr ;r; y1 ; : : : ; ys son las variables libres de G; y G no con0
tiene cuanticadores. Sea F la frmula
U1 x01

Un x0r G(x01 ; : : : ; x0r; y10 ; : : : ; ys0 ):


0

Muestre entonces que M j= F si y solo si M j= F .


9. Muestre que si L0 es el lenguaje que contiene la igualdad como nico
smbolo de relacin, y que no contiene constantes ni smbolos funcionales, entonces existe una interpretacin de M donde todos los axiomas lgicos se satisfacen, excepto el axioma I3 :
10. Deduzca de los anterior que no es posible demostrar x = x a partir de
los axiomas lgicos, cuando la clausura de I3 se excluye de la lista de
axiomas lgicos.
11. Exhiba una demostracin de la sentencia 8x8y(x = y =) y = x) a
partir de los axiomas lgicos.
12. Exhiba una demostracin de la sentencia 8x8y8z((x = y ^ y = z) =)
x = z)).
Nuestro propsito es demostrar el siguiente teorema, debido a Kurt
Gdel, una de las piedras angulares de la lgica matemtica moderna. Este
teorema, conocido como Teorema de completez, arma que las nociones de
validez y demostrabilidad coinciden. Es decir, las frmulas cuya validez se
sigue de T son precisamente aquellas frmulas que se pueden demostrar a
partir de T .
Theorem 2.6.6 (Completez) Sea L un lenguaje de primer orden y sea
T un conjunto de sentencias en L. Entonces, para toda frmula F de L se
cumple que T ` F si y solo si T j= F .

36

CHAPTER 2. TEORAS DE PRIMER ORDEN

Este teorema se sigue fcilmente de la existencia de un modelo para


cualquier teora consistente. La prueba de esta armacin, que daremos a
continuacin, se debe al lgico norteamericano Leon Henkin.
Theorem 2.6.7 Sea T una teora. Entonces T es consistente si y solo si
tiene un modelo.
Supongamos la validez de este ltimo teorema y demostremos en primer
lugar el Teorema de Completez.
Prueba. (Teorema de Completez) Una direccin del teorema de completez
es fcilmente vericable: si T ` F veamos por induccin en la longitud de
una demostracin de F , F1 ; : : : ; Fn = F que T j= Fi (#). Sea 1
i
n.
Si Fi es un axioma lgico, entonces la Proposicin 2.6.4 garantiza que Fi es
cierta en cualquier interpretacin, en particular en una donde se satisfagan
todas frmulas de T . Si Fi 2 T , entonces T j= Fi se satisface trivialmente.
Si Fi se sigue del MP, si por ejemplo Fj y Fj =) Fi anteceden Fi , entonces
por la hiptesis de induccin T j= Fj y T j= Fj =) Fi de donde se sigue de
inmediato que T j= Fi .
Pasemos ahora a demostrar la armacin recproca: si M j= F entonces
M ` F . Distingamosdos casos:
1. Si T no es consistente, entonces T ` P ^:P y como T ` P ^:P =) F ,
(para cualquier frmula F ) entonces T ` F .
2. Si T es consistente, y T j= F , pero si F no fuera demostrable a partir
de T , entonces la teora T [ f:F g sera consistente, pues de no serlo
T [ f:F g ` P ^ :P , y por el Teorema de la Deduccin (2.1.10),
se tendra T ` :F =) P ^ :P , que en forma contrarrecproca es
la armacin T ` P _ :P =) ::F , de donde T ` ::F . Como
T ` ::F =) F se sigue entonces que T ` F , pero ello es un absurdo,
pues supusimos precisamente que F no era demostrable a partir de T .
Ahora, si T [f:F g es consistente, el Teorema 2.6.7 garantiza la existencia
de una interpretacin M en donde M j= Ti ; para toda sentencia Ti 2 T; y
en donde M j= :F . Pero esto ltimo signica que M j= F no es cierto, lo
cual contradice la hiptesis del teorema.
Pasemos ahora a demostrar el Teorema (2.6.7).
Prueba. Una direccin se verica sin mayor dicultad: si T posee un
modelo M no es posible que T ` P ^ :P; pues ello implicara M j= P ^ :P
Pero ello dira que M j= P y M j= :P . De nuevo, esto ltimo signica a su
vez que no es cierto T j= P , lo cual es obviamente una contradiccin.

2.6. INTERPRETACIONES DE L

37

Demostremos la implicacin en la direccin contraria. Supongamos que


T es consistente y veamos que tiene un modelo.
Armacin I: Si a L aadimos nuevas constantes c1 ; c2 ; : : : ; cn ; : : :, el
conjunto de frmulas T sigue siendo consistente cuando se considera como un
subconjunto de frmulas del lenguaje ampliado L0 = L [ fcn : n = 1; 2 : : :g.
Si no lo fuera, existira una demostracin de una contradiccin a partir de
T , digamos, F10 ; : : : ; Fn0 = P 0 ^ :P 0 , donde cada Fi0 es una frmula de L0 . La
Proposicin 2.5.2 nos dice que podemos reemplazar cada ci que aparezca en
la lista F10 ; : : : ; Fn0 por variables convenientes zi de tal manera que las nuevas
frmulas (de L) F100 ; ; Fn00 , seran una demostracin en Fn00 a partir de T . Esto
ltimo contradira la consistencia de T , lo cual prueba la armacin.
Sea T0 = T en L0 y numeremos todas las frmulas de L0 en algn orden
especco: F1 ; F2 ; : : : ; Fn ; : : : Denamos inductivamente la teora Tn , donde
Tn 1 ya ha sido denida, de la siguiente manera:
1. Si Tn

[ fFn g es consistente, entonces:

i Si Fn es de la forma 9xB(x; y), hacemos Tn = Tn 1 [ fFn ; B(cn ; y)g,


donde cn es una constante que no aparece en Fn ni en ninguna
frmula de Tn 1 .
ii Si Fn no es de la forma anterior, hacemos Tn = Tn
2. Si Tn

[ fFn g.

[ fFn g es inconsistente, entonces:

i Si Fn es de la forma 8xB(x; y), hacemos Tn = Tn 1 [f:Fn ; :B(cn ; y)g,


donde cn es una constante que no aparece en :Fn ni en ninguna
frmula de Tn 1 .
ii Si Fn no es de la forma anterior; hacemos Tn = Tn

[ f:Fn g.

Armacin II: T 0 es consistente.


Si no lo fuera, la demostracin de una contradiccin P ^ :P involucra
nitas frmulas A1 ; : : : ; Am = P ^ :P , las cuales debern estar contenidas
en algn Tn . Luego basta demostrar que Tn es consistente, para todo n.
Razonemos por induccin sobre n. Para n = 0, T0 es, por hiptesis, consistente. Supongamos que Tn 1 es consistente y analicemos cada uno de los
casos 1(i); 1(ii) ; 2(i) y 2(ii):
* Caso 1 (i): si Tn no fuera consistente se tendra que
fTn

1 ; Fn g

[ fB(cn ; y)g ` P ^ :P:

38

CHAPTER 2. TEORAS DE PRIMER ORDEN


Del Teorema de la deduccin se seguira fTn 1 , Fn g ` B(cn ; y) =)
P ^ :P . De aqu que fTn 1 , Fn g ` (P _ :P ) =) :B(cn ; y) (contrarrecproco), y por consiguiente fTn 1 , Fn g ` :B(cn ; y). Como
cn no aparece en ninguna frmula de fTn 1 , Fn g; de la Proposicin
2.5.2 vemos que fTn 1 , Fn g ` 8zn :B(cn ; y), para una variable zn convenientemente escogida. Pero como Fn es de la forma 9xB(x; y); y
claramente fTn 1 , Fn g ` Fn = 9xB(x; y), del Ejercicio 2.5.3, (3) se
sigue: fTn 1 , Fn g ` 9zn B(zn ; y). Esta ltima frmula es precisamente
:8zn B(zn ; y). En consecuencia fTn 1 , Fn g no sera consistente, lo
cual es una contradiccin con la hiptesis.

* Caso 1 (ii): en este caso la teora Tn = Tn


consistente.

[ fFn g es, por hiptesis,

* Caso 2: Notemos primero un hecho general: si Tn 1 [ fFn g es inconsistente, entonces Tn 1 ` :Fn . La razn es la siguiente: como Tn 1 [
fFn g ` P ^:P , por el Teorema de la Deduccin Tn 1 ` Fn =) P ^:P
sera un teorema. Su contrarrecproco arma que Tn 1 ` :Fn .
* Caso 2 (i): Si Tn fuera inconsistente, usando de nuevo el teorema de la
Deduccin, vemos que
Tn

[ f:B(cn ; y)g ` :Fn =) P ^ :P;

de donde se sigue Tn 1 [ f:B(cn ; y)g ` Fn . Pero como observamos,


Tn 1 ` :Fn (puesto que por hiptesis Tn 1 [ fFn g es inconsistente).
Luego, de Tn 1 [ f:B(cn ; y)g podran demostrarse Fn y :Fn , lo
cual muestra que Tn 1 [ f:B(cn ; y)g es inconsistente. De aqu se
sigue entonces que Tn 1 ` B(cn ; y). De la Proposicin 2.5.2 se deduce entonces que Tn 1 ` 8zn B(zn ; y), para una variable zn convenientemente escogida. De nuevo, el Ejercicio 2.5.3, (3) muestra que
Tn 1 ` 8xB(x; y) = Fn , y como ya se tena Tn 1 ` :Fn , concluimos
que Tn 1 sera inconsistente, lo cual contradira la hiptesis de induccin.
* Caso 2 (ii): Como ya observamos, si Tn 1 [ fFn g fuera inconsistente
entonces Tn 1 ` :Fn . De aqu que la consistencia de Tn 1 y de Tn 1 [
f:Fn g sea equivalente, y por la hiptesis de induccin sabemos que
Tn 1 es consistente. Luego Tn tambin lo es, como se quera demostrar.
Armacin III: Si G es una sentencia cualquiera de L0 se cumple que
G 2 T 0 o que :G 2 T 0 . En efecto, en la lista que mencionamos ms arriba

2.6. INTERPRETACIONES DE L

39

de frmulas de L0 ; G deber ser igual a alguna frmula Fn . Si Tn 1 [fFn g es


consistente, por la manera como fue denida Tn ; vemos que Fn 2 Tn T 0 .
De otro lado, si Tn 1 [ fFn g es inconsistente, vemos entonces que :G =
:Fn 2 Tn T 0 , lo cual demuestra la armacin.
Armacin IV: Denamos una relacin entre los trminos de L0 : diremos que t1
t2 si T 0 ` t1 = t2 . Es un ejercicio sencillo demostrar que en
efecto esta relacin es de equivalencia. A la clase de t la denotaremos por
[t].
Denamos ahora una interpretacin para T 0 . Como universo tomaremos
M el conjunto de clases de equivalencias de trminos de L0 . Si R es un
smbolo de relacin de grado n, denimos R como la relacin en M
M
que consiste de la n-tuplas ([t1 ]; : : : ; [tn ]) para las cuales T 0 ` R(t1 ; : : : ; tn ).
El hecho de que esta denicin no dependa del representante escogido para
cada ti se sigue del axioma lgico I2. Vericar este hecho se deja como
ejercicio. De manera similar se dene para cada smbolo funcional f de grado
n una funcin f : M n ! M , denida como f ([t1 ]; : : : ; [tn ]) = [f (t1 ; : : : ; tn )].
Del axioma lgico I1 se sigue que si [ti ] = [t0i ], entonces [f (t1 ; : : : ; tn )] =
[f (t01 ; : : : ; t0n )] (ejercicio). Finalmente, cada constante c en L0 se interpreta
en M como [c]:
Armacin V: Si s(x1 ; : : : ; xr ) es un trmino de L0 , entonces se sigue
que s([t1 ]; : : : ; [tr ]) = [s(t1 ; : : : ; tr )]:
Razonemos por induccin sobre la complejidad de s : si s = xi o s = c, la
armacin es evidente. Si s = f (s1 (x1 ; : : : ; xr ); : : : ; sn (x1 ; : : : ; xr )) entonces
s([t1 ]; : : : ; [tr ]) = f (s1 ([t1 ]; : : : ; [tr ]); : : : ; sn ([t1 ]; : : : ; [tr ]))
= f ([s1 (t1 ; : : : ; tr )]; : : : ; [sn (t1 ; : : : ; tr )])
= [f (s1 (t1 ; : : : ; tr ); : : : ; sn (t1 ; : : : ; tr ))]
= [s(t1 ; : : : ; tr )]:
Armacin VI: La interpretacin M es un modelo para T 0 ; y en consecuencia un modelo para T: Basta ver que en M se satisfacen todas las
frmulas en forma normal: F = U x1
U xr A(x1 ; : : : ; xr; ; y1 : : : ys )); donde
Ui es uno cualquiera de los dos cuanticadores 8; 9, la frmula A(x; y) no
posee cuanticadores y (x; y) son exactamente sus variables libres. Pues si
F es una frmula de T 0 , entonces F siempre es equivalente a una frmula
en forma normal (Ejercicio 2.6.5, 7).
Razonemos por induccin sobre el nmero de cuanticadores 0 r k
de F .
1. Veamos en primer lugar que si r = 0, esto es, F no posee cuanticadores Ui ; y por tanto F = A(x; y), entonces M j= A(x; y). Para

40

CHAPTER 2. TEORAS DE PRIMER ORDEN


ello basta demostrar el siguiente hecho: si ti ; t0j son p + q trminos
arbitrarios de L0 entonces M j= A([ti ]; [e
tj ]) si y solo si T 0 ` A(ti ; e
tj ).
Razonemos ahora por induccin sobre la complejidad de A:

a Si A es de la forma s1 (x; y) = s2 (x; y), donde s1 y s2 son trminos


de L0 , entonces, por denicin, M j= A([ti ]; [t0j ]) si y solo si M j=
s1 ([ti ]; [e
tj ]) = s2 ([ti ]; [e
tj ]): De acuerdo con la Armacin VI, ello
equivale a demostrar que M j= [s1 (ti ; e
tj )] = [s2 (ti ; tej )]: Y esto
ltimo se da, si y solo si T 0 ` s1 (ti ; e
tj ) = s2 (ti ; e
tj ); que es igual a
0
e
armar que T ` A(ti ; tj ), como se quera probar.

b Si A es de la forma R(s1 (x; y); : : : ; sm (x; y)), donde s1 ; : : : ; sm son


trminos de L0 entonces (s1 ([ti ]; [e
tj ]); : : : ; sm ([ti ]; [e
tj ])) 2 R; y esto
e
ltimo ocurre si y solo si ([s1 (ti ; tj )]; : : : ; [sm (ti ; e
tj )]) 2 R. Por
la manera como fue denida la relacin R; esta tupla est contenida en esta relacin si y solo si T 0 ` R(s1 (ti ; e
tj ); : : : ; sm (ti ; e
tj )):
0
tj ), como queramos
Esto signica precisamente que T ` A(ti ; e
demostrar.
c Los casos A = :B y A = B _ C se siguen fcilmente, y se dejan
como ejercicio.

2. Supongamos ahora que F tiene la forma normal y posee r > 0 cuanticadores. La hiptesis de induccin nos garantiza entonces que M j= G,
donde G es cualquier frmula en forma normal, y que posea un nmero
de cuanticadores < r.
i Consideremos primero el caso donde U x1 es el cuanticador 8x1 . En
este caso F se escribe en la forma 8x1 B(x1 ; y), donde B(x1 ; y)
posee un nmero de cuanticadores < r, y sus variables libres
son precisamente x1 ; y: Del Ejercicio 2.6.5, (8) se desprende que
demostrar la validez de F en M es equivalente a demostrar la
validez de F 0 = 8x01 B 0 (x01 ; y 0 ), la frmula que se obtiene de F
reemplazando cada una de sus variables (x; y) por nuevas variables x0 ; y 0 escogidas de manera arbitraria.
Para ver que F 0 es vlida en M debemos ver que para un trmino
cualquiera s1 de L0 ; y trminos arbitrarios sj de L0 ; se cumple M j=
B([s1 ]; [sj ]):

2.6. INTERPRETACIONES DE L

41

Escojamos (x ; y ) de tal manera que ninguna de estas variables est


contenida dentro del conjunto de variables de s1 , y por ende s1 se
pueda sustituir por x1 en B 0 (x1 ; y ). El axioma lgico C1 nos dice que
T 0 ` 8x1 B (x1 ; y ) =) B (s1 ; y ). De otro lado, de acuerdo con la
0
0
Armacin III, o bien F 2 T 0 o bien :F 2 T 0 . Pero como F 2 T 0 , y
F es equivalente a F 0 entonces no puede ocurrir que :F 0 est en T 0 ,
0
pues en este caso T 0 sera inconsistente. Por consiguiente F 2 T 0 . De
igual forma, como F = 8x1 B (x1 ; y ) es equivalente a F 0 , entonces
F 2 T 0 y en consecuencia B(s1 ; y ). Como B (s1 ; y ) tiene forma
normal, y posee menos cuanticadores que F 0 , la hiptesis de induccin
garantiza que B (s1 ; y ) se satisface en M . Denotemos por i a las
variables de s1 , la Armacin V nos dice que [s1 ( i )] = s1 ([ i ]). Luego,
M j= B (s1 ([ i ]); [sj ]), y en consecuencia M j= B ([s1 ( i )]; [sj ]). Esto
muestra la validez de F 0 en M y en consecuencia la validez de F .
ii Supongamos ahora que F 0 tiene la forma F 0 = 9x1 B(x1 ; y), donde
B(x1 ; y) tiene forma normal. Esta frmula pudo haber sido aadida a T 0 en el paso N -simo en dos posibles situaciones:
a Primero, en el caso en el que TN = TN 1 [ fF 0 g haya resultado consistente. Pero en ese mismo paso tambin debi haberse aadido
B(cN ; y). Luego B(cN ; y) 2 T 0 : Pero esta frmula tiene un cuanticador menos que F 0 ; y por la hiptesis de induccin es vlida
en M . De aqu que M j= B([cN ]; [sj ]), para trminos cualesquiera
sj de L0 , y en consecuencia se sigue M j= 9x1 B(x1 ; y).
b El segundo caso donde F 0 se pudo haber aadido corresponde a la
situacin en la que F 0 es igual a 8x1 B(x1 ; y), donde B(x1 ; y) tiene
forma normal, y TN 1 [ fF 0 g es inconsistente. En este caso, :F 0
es equivalente a 9x1 :B(x1 ; y) y
TN = TN

[ f:F 0 ; :B(cN ; y)g:

Luego :B(cN ; y) 2 T 0 . Pero esta ltima frmula tiene un cuanticador menos que F 0 ; y por la hiptesis de induccin, debe satisfacerse en M: Luego M j= :B([cN ]; [sj ]), para trminos cualesquiera
sj de L0 , y en consecuencia se la validez en M de 9x1 :B(x1 ; y).

Ejercicio 2.6.8

42

CHAPTER 2. TEORAS DE PRIMER ORDEN


1. Demuestre que en la demostracin del teorema anterior (Armacin
IV) la relacin t1
t2 ; si T 0 ` t1 = t2 ; es en efecto una relacin de
equivalencia.
2. Demuestre la armacin IV en la prueba del teorema anterior con
respecto a la buena denicin de la relacin R.
3. Demuestre la armacin IV en la prueba del teorema anterior con
respecto a la buena denicin de la funcin f :
4. Demuestre la armacin VI en la prueba del teorema anterior con
respecto a los casos A = :B y A = B _ C:

Corolario 2.6.9 (Teorema de compacidad) Sea L un lenguaje de primer


orden y T una teora en L. Si para cada subconjunto nito TI de T existe
un modelo, entonces tambin existe un modelo para T .
Prueba. El Teorema 2.6.7 nos dice que T tiene un modelo si es consistente.
Pero si no lo fuera, una contradiccin en T podra derivarse de un conjunto
de nitas formulas TI , y en consecuencia algn TI tambin sera inconsistente. Pero ello implicara que no posee ningn modelo, lo cual contradice
la hiptesis.
Corolario 2.6.10 Existe modelos de la Aritmtica de Peano (Ejemplo 2.4.4)
diferentes al modelo estndar N de los nmeros naturales.
Prueba. Sea N 0 el lenguaje que se obtiene de N = f0; 1; ; +; sg adjuntando
una constante nueva c. Sea T 0 la teora que resulta de aadir a los axiomas
propios N1 -N7 , los axiomas A0 : c 6= 0; junto con la coleccin contable de
axiomas An : c 6= n, donde el smbolo n es una abreviacin de 1 +
+ 1;
n
1 veces. Claramente N es un modelo donde se satisface nitas de
estas sentencias A0 ; : : :AN . El Teorema de Compacidad garantiza entonces
la existencia de un modelo N para T . En este modelo deber existir un
elemento ! (la correspondiente interpretacin de c en N ) distinto de todas
las interpretaciones de todos los trminos 0; 1; : : : ; n; : : : y en consecuencia
no podr ser el modelo estndar N.
El Teorema de Completez puede generalizarse a lenguajes no necesariamente contables. Utilizando el Axioma de Eleccin es posible dar una
demostracin del teorema anterior en este caso.
Theorem 2.6.11 Sea L un lenguaje cuyos smbolos de relacin, smbolos
funcionales y constantes pueden ser indizados con un conjunto no necesariamente contable: Esto es, el conjunto de dichos smbolos puede escribirse

2.6. INTERPRETACIONES DE L

43

en la forma fR ; f ; c : 2 g. Sea T una teora en L. Entonces, si T


es consistente T posee un modelo de cardinalidad a lo sumo la cardinalidad
de .
Prueba. La prueba es muy similar a la demostracin del Teorema 2.6.6. La
nica diferencia reside en el hecho de que en este caso general no es posible
numerar las extensiones sucesivas de T0 , como se hizo en la Armacin I. No
obstante, el Axioma de Eleccin nos permite darle un buen orden a , y en
consecuencia traducir cada paso de a prueba en el caso contable. De manera
precisa: escojamos "<" un buen orden para , es decir, "<" es una relacin
de orden total con la propiedad de que cualquier subconjunto no vaco de
tiene un elemento minimal. Denotemos por 0 el elemento minimal de . De
igual forma que en la prueba del Teorema 2.6.6.
1. Aadimos a L un conjunto de nuevas constantes: es decir, denimos
L0 = L [ fc : 2 g.

Armacin I: T0 ; visto en L0 es consistente. Si no lo fuera existira una demostracin de una contradiccin a partir de frmulas de
T , digamos, F10 ; : : : ; Fn0 = P 0 ^ :P 0 , donde cada Fi0 es una frmula de
L0 . La Proposicin 2.5.2 nos dice que podemos reemplazar cada ci que
aparezca en la lista F10 ; : : : ; Fn0 por variables convenientes zi de tal manera que las nuevas frmulas (de L) F100 ; ; Fn00 , seran una demostracin
en Fn00 a partir de T . Esto ltimo contradira la consistencia de T0 , lo
cual prueba la armacin.

2. Numeramos con subndices F , 2 , y de manera ordenada (acorde


con <), todas las frmulas en L0 : Denimos inductivamente: T0 = T ,
y, una vez denidos T , para todo < , denimos T = ([ < T ) [
W , donde el conjunto W est denido como:
Si ([

<

T ) [ fF g es consistente, entonces:

1. i Si F es de la forma 9xB(x; y), hacemos W = fF ; B(c ; y)g, donde


c es una constante que no aparece en F ni en ninguna frmula
de [ < T .
ii Si F no es de la forma anterior, hacemos W = fF g.
Si T = ([

<

T ) [ fF g es inconsistente, denimos:

i Si F es de la forma 8xB(x; y), hacemos W = f:F ; :B(c ; y)g,


donde c es una constante que no aparece en :F ni en ninguna
frmula de [ < T .

44

CHAPTER 2. TEORAS DE PRIMER ORDEN


ii Si F no es de la forma anterior; hacemos W = f:F g.

Armaciones II-VII: La demostracin de estas armaciones son


una traduccin palabra por palabra de lo hecho en la demostracin
del teorema anterior.

El modelo as construido estar conformado por clases de equivalencias


de trminos en L0 . Luego M tendr a lo sumo la cardinalidad de L0 ;
que es igual a la cardinalidad de .

Corolario 2.6.12 Sea T una teora consistente en un lenguaje de primer


orden L. Si T posee al menos un modelo innito, entonces T posee modelos
innitos de cardinalidad tan grande como se desee.
Prueba. Sea un conjunto innito de una cierta cardinalidad ja. Denamos L0 como el lenguaje que se obtiene de L aadiendo nuevas constantes
c , con 2 . Para cada subconjunto nito I
Sea TI la teora que
se obtiene de T adjuntando los axiomas c 6= c , con ; 2 I. Si M0 es
un modelo innito de T , entonces claramente M0 es un modelo de TI , para
cualquier subconjunto innito I. El Teorema de Compacidad garantiza la
existencia de un modelo para T 0 = [I TI , donde la unin se toma sobre
todos los posibles subconjuntos nitos de . Este modelo tiene cardinalidad
mayor o igual a la cardinalidad de . como se quera probar.
Del Corolario anterior se deriva la existencia de modelos de la Aritmtica
de Peano de Cardinalidad tan grande como se desee. Sin embargo, se podra
objetar que la exisatencia de semejantes modelos quiz obedezca al hecho
de que se necesiten ms axiomas para capturar la nocin de nmero entero.
Pero ello no es as, como veremos a continuacin.
Denicin 2.6.13 Denamos la Aritmtica, T (N); como el conjunto de
todas las sentencias en el lenguaje LAP = f0; 1; ; +; sg que son vlidas en el
modelo estndar N:
Claramente T (N) es una teora consistente (y completa) pues posee un
modelo: N. El Corolario 2.6.12 garantiza la existencia de modelos para T (N)
de cualquier cardinalidad. Estos modelos son llamados modelos no estandar
de la aritmtica.
Otra aplicacin interesante del Teorema de Compacidad es la siguiente.
Una grafo G se dice coloreable si es posible asignar a cada vrtice v nmeros
enteros n( ) 2 f1; 2; 3; 4g de tal manera que si v y v estn conectados

2.6. INTERPRETACIONES DE L

45

mediante una arista los enteros n( ) y n( ) son diferentes. La pregunta


tiene su origen en un clebre Teorema, el cual arma que todo mapa nito
es coloreable (ver [8]). El Teorema de Compacidad nos dice que todo grafo
innito es coloreable si cada uno de sus subgrafos nitos lo es.
Theorem 2.6.14 Sea G un grafo que posea la propiedad de que todo subgrafo nito es coloreable. Entonces G tambin es coloreable.
Prueba. Fijemos G; un cierto grafo, que sin prdida de generalidad podemos
suponer innito. La Teora de Primer orden en el Ejemplo 2.4.8 posee un
smbolo de relacin R el cual es interpretado en cualquier grafo G (un modelo de la teora) como el hecho de que G j= R(v ; v ) si y solo si los vrtices
v y v estn conectados mediante una arista. Sea L0 el lenguaje que se obtiene de aadir nuevos smbolos de relacin C1 ; C2 ; C2 ; C4 . Por cada vrtice
vr de G introducimos una nueva constante pr y nuevos axiomas:
C1 8x(C1 (x) _ C2 (x) _ C3 (x) _ C4 (x))
C2 8x:(Ci (x) ^ Cj (x)), (un axioma para cada para de enteros distintos
1 i; j 4).
C3 8x8y(Ci (x) ^ Ci (y) =) :R(x; y)) (un axioma para cada para entero
1 i 4).
Cada Ci deber interpretarse de la siguiente manera: si a la variable x
le corresponde un determinado vrtice v en una interpretacin G, entonces
Ci (v) es el conjunto de G de aquellos vrtices que reciben el color n(v) = i.
El primero de estos axiomas arma que cada vrtice recibira alguno de los
cuatro colores. El segundo conjunto de axiomas, que cada vrtice recibir
uno solo de los colores y el tercer conjunto de axiomas arma que dos vrtices
conectados por una arista no recibirn el mismo color.
Adicional a estos axiomas, aadimos los siguientes axiomas (la cardinalidad de este conjunto de axiomas es la cardinalidad de G):
P1 pr 6= ps (un axioma para cada par de enteros distintos 1

r; s).

P2 R(pr ; ps ) (un axioma para cada par de enteros distintos 1


r; s para
los cuales se cumpla que vr y vs estn conectados por una arista en G.
Denotemos por T 0 a la teora resultante. Finitos axiomas de T 0 involucran nitas constantes p1 ; : : : ; pN . Un modelo para esta teora es el subgrafo
de G determinado por los vrtices v1 ; : : : ; vN , el cual ha sido coloreado con

46

CHAPTER 2. TEORAS DE PRIMER ORDEN

cuatro colores de tal manera que dos vrtices conectados por una arista no
reciban el mismo color. Por el Teorema de Compacidad, existe un modelo
M para esta teora, el cual es, por tanto, un grafo innito, contable y coloreable. Pero este grafo, por ser modelo de T 0 , contiene un subgrafo que es
una interpretacin el de G, el cual deber entonces ser coloreable.

Chapter 3

Teorema de incompletez de
Gdel

3.1

Introduccin

En el mes de enero de 1978, el peridico El Tiempo public un obituario de


escasas tres lneas en el que se informaba sobre la muerte de un oscuro lgico
de origen alemn, profesor del Instituto de Estudios Avanzados de Princeton. El difunto, un desconocido aun para la comunidad de matemticos, era
Kurt Gdel (1906-1978), el ms grande lgico de la historia, un pensador
cuyas contribuciones a la cultura humana fueron tan trascendentales y revolucionarias como las de Albert Einstein a la fsica. No obstante su estatura
de gigante intelectual y la trascendencia de su obra, su gura luce opacada
y disminuida al lado del creador de la relatividad. Su personalidad, tmida
e hipocondraca, lo mantuvieron alejado de los asuntos polticos y de las
47

48

CHAPTER 3. TEOREMA DE INCOMPLETEZ DE GDEL

vanalidades de la vida social. Su vida, al igual que la de Newton, estuvo


dedicada de lleno a la investigacin de lo que l mismo llamaba las preguntas fundamentales de la ciencia y la losofa. Fuera de la enseanza, a la
que dedic poco tiempo, Gdel jams desempeo ninguna otra actividad.
Kurt Gdel naci en Brnn, Moravia, ciudad que en aquella poca haca
parte del imperio Austro Hngaro. Despus de completar sus estudios de
secundaria, en 1924, se enrol en el programa de fsica terica, en la Universidad de Viena. Sin embargo, atrado por la precisin y el rigor de las
matemticas decidi cambiar de carrera, y comenz a estudiar matemticas en esa misma universidad. Es all donde casualmente hace contacto
con M. Schlick y el crculo de los positivistas vieneses, a travs de los cuales
conoci la primera edicin del Grundzuge der Theoretische Logik, de HilbertAckermann, libro que despiert en Gdel un enorme inters por lo que sera
la pasin de su vida: la lgica matemtica. En ese libro se planteaba el
problema no resuelto de la completez del calculo de predicados, desafo que
Gdel acometi con dedicacin, un reto que en poco tiempo logr solventar.
Su trabajo, el clebre Teorema de Completez, apareci publicado en 1929
como parte de su disertacin doctoral.
Al ao siguiente Gdel se embarca en el estudio del problema de la consistencia del anlisis por medio de mtodos nitistas. Su ataque es directo y
sistemtico: comienza por reducir el problema a uno ms simple: demostrar
la consistencia de la teora de nmeros (la Aritmtica de Peano). A los
pocos meses de estar enfrascado en el problema, Gdel descubre que ste es
insoluble, a no ser que se recurra a una peticin de principio y se suponga la
consistencia de algn otro sistema ms amplio que incorpore la teora de los
nmeros. De manera laxa, puede decirse que Gdel demostr que es imposible demostrar que la teora de los nmeros, y en particular las matemticas,
estn exentas de contradicciones. ste trabajo, quiz el ms famoso en la
historia de la lgica, lleva por ttulo Sobre las proposiciones formalmente
indecidibles de Los Principia Mathematica y sistemas relacionados. El trabajo fue presentado como tesis doctoral (Habilitationsschrift) para optar al
ttulo de Doctor en Matemticas y Filosofa en la universidad de Viena, en
junio de 1932.
Al ao siguiente desarrolla sus ideas sobre computabilidad, e introduce
la nocin de funcin recursiva. Pude decirse, sin exageracin, que con este
trabajo Gdel inagura la moderna teora de la computacin y allana el
camino para que Alan Turing y otros lgicos conciban el diseo terico de
los primeros computadores. En 1935, Gdel descubre el universo de los conjuntos construibles y demuestra que stos proporcionan un modelo posible
para los axiomas de la teora de conjuntos, dentro de los cuales se incluye

3.2. DEMOSTRACIN DEL TEOREMA DE GDEL

49

el axioma de eleccin. Dos aos ms tarde demuestra la independencia de


la hiptesis del continuo. La independencia de su negacin es un problema
elusivo al que Gdel dedica aos de continuo esfuerzo, sin conseguir ningn
xito. El problema fue resuelto nalmente por Paul Cohen, creador de la
tcnica conocida como forcing, en 1964). En 1942, Gdel prueba la independencia del axioma de eleccin. Cabe armar que con estos trabajos Gdel
desarroll lo que se conocera ms tarde como la Teora de Modelos, uno de
los grandes pilares de la lgica moderna.
Una vez pasados sus aos ms frtiles, dedicados exclusivamente a los
problemas de la lgica, Gdel entra en su poca de madurez y se concentra
en temas de carcter estrictamente losco. Aprovecha su tiempo libre en
Princeton para estudiar la losofa de Kant, especialmente aquellos asuntos
relacionados con el espacio y el tiempo, lo cual lo lleva a interesarse por
la Teora de la Relatividad. En 1950 encuentra los universos rotatorios,
novedosas soluciones a las ecuaciones de campo formuladas por Einstein.
En las dos dcadas siguientes publica una serie de trabajos sobre Cantor y
Bernays, y estudia con detalle la obra de Husserl. Como recompensa a su
gran obra recibe ttulos honorarios de Harvard, de la Academia Nacional
de Ciencias de Estados Unidos, de la Sociedad Filosca Americana, y se
le ofrece el cargo de profesor honorario de la universidad de Viena, el cual
rechaza por la complicidad de esta institucin con el Tercer Reich durante
la Segunda Guerra Mundial. De esta poca son sus Artculos loscos, an
inditos, y que ocupan ms de mil pginas manuscritas.
Tras la muerte de su esposa, una bailarina de cabaret, la salud mental de
Gdel se deteriora a tal punto que sus temores de ser envenenado lo llevan
a seguir una dieta extrema, que termina por dejarlo en un estado de grave
malnutricin. El 14 de enero de 1978, Kurt Gdel muri de inanicin en un
hospital de Princeton, a la edad de 71 aos.

3.2

Demostracin del teorema de Gdel

La demostracin del teorema de Gdel [9], no obstante ser algo tcnica, est
apoyada en una idea muy simple, susceptible de ser comprendida a grandes
rasgos sin tener que ahondar en detalles. La idea bsica es conocida desde
la poca griega como la paradoja del mentiroso, y puede resumirse de la
siguiente manera. Si alguien arma: yo miento, ser cierta o falsa la
armacin? Si fuese cierta, la persona estara mintiendo y, por tanto, lo que
dice sera falso, es decir, la armacin sera falsa. Por otro lado, si fuera
falsa, la persona no estara mintiendo, por lo que la armacin sera cierta.

50

CHAPTER 3. TEOREMA DE INCOMPLETEZ DE GDEL

Se sigue de aqu que en ningn caso puede decirse que lo que se arma sea
cierto o falso.
La paradoja anterior pertenece a una familia de armaciones conocidas
con el nombre de autorreexivas, por armar algo de s mismas, fuente de
paradojas y de dolores de cabeza para los lgicos, quienes han tratado en
vano de eliminarlas desde las pocas de los primeros lsofos griegos. Con
este propsito Bertrand Russell ide la llamada Teora de Tipos, un formalismo en el cual se establece una especie de jerarqua que prohbe hacer
armaciones acerca de los objetos del lenguaje cuando estas armaciones
pertenecen a la misma jerarqua sintctica de lo armado. Restricciones
gramaticales de esta clase obligan a que las armaciones autorreexivas
tengan que ser elaboradas en un metalenguaje de jerarqua superior, y a
que las armaciones sobre este metalenguaje deban hacerse en otro metametalenguaje, y as sucesivamente. De esta manera puede eliminarse la posibilidad de construir sentencias autoreexivas, y se evita as las paradojas que
estas generan. Por el contrario, la idea fundamental de Gdel consisti en
burlar esas restricciones a n de incorporar dentro del lenguaje mismo armaciones metalingusticas de tipo autoreexivo. El articio fundamental se
conoce con el nombre de numeracin gdeliana de las frmulas del lenguaje,
y es la idea clave en la argumentacin de Gdel.
Para comenzar, jemos un lenguaje formal L. Si se desea, puede pensarse que este lenguaje es el lenguaje de la Aritmtica de Peano (AP) o la
teora de conjuntos, ZF. A cada agregado W de smbolos del lenguaje formal
L le asignamos un nmero entero positivo, especie de cdigo numrico asociado a W , el cual permita identicar W en forma mecnica e inequvoca.
En particular, cada sentencia bien formada del lenguaje, S tendr un entero
asociado, llamado nmero de Gdel de S, y denotado por jSj. Por otro lado,
a cada conjunto fS1 ; S2 ; :::; Sn g de sentencias de L asociamos tambin un
nmero gdeliano distinto de los anteriores, y que inequvocamente identique dicho conjunto. En particular, una demostracin de una determinada
sentencia tendr asociado el nmero de Gdel correspondiente al conjunto
de todas las sentencias que aparecen en la demostracin. Si suponemos que
nuestro lenguaje formal permite formalizar enunciados elementales de la aritmtica, entonces, usando nuestra numeracin podremos hacer armaciones
metalingusticas en forma indirecta.
Aclaremos la idea con un ejemplo. Supongamos que nuestra intencin
es armar que un determinado agregado de smbolos, W; es una frmula de
L, lo cual es claramente una armacin que hace referencia a sentencias y
agregados de smbolos de L, y por consiguiente es de tipo metalingustico.
Gdel prob que es posible construir una frmula de L, que llamaremos

3.2. DEMOSTRACIN DEL TEOREMA DE GDEL

51

formula(x), que involucra una nica variable x, y que goza de la siguiente


propiedad: N j= formula(k) (la frmula es vlida en el modelo estndar de la
aritmtica) si y slo si k es un nmero positivo asociado a una cierta frmula
del lenguaje L.
Otra frmula que aparece en la demostracin del teorema de Gdel, y
que juega un papel central en la prueba del mismo, es la siguiente. Denotemos esta frmula por U(x; y), cuya existencia es posible demostrar, y que
posee la siguiente propiedad: N j= U(m; n) si se satisfacen las siguientes dos
condiciones:
1. El entero m deber ser el nmero de Gdel de una frmula A(z) de L
que posee la variable z.
2. El entero n deber ser el nmero de Gdel de una demostracin de
A(m), donde m denota el elemento s s(0) (el smbolo sucesor aparece
m-veces). El nmero n deber ser entonces el nmero de Gdel asociado a un determinado texto demostrativo fS1 ; S2 ; :::; Sl = A(m)g en
el cual aparece la frmula A(m).
Por ejemplo, supongamos que nuestro sistema formal es AP, que A(z) es
la sentencia z = z, y, digamos, que 100 es el nmero asociado a la frmula
A(m) y que 21 es el nmero asociado a un texto demostrativo cuya nica
frmula es A(21). De aqu que formula(100) y U(100; 21) se satisfagan en
N:
Una vez en poder de esta idea clave, Gdel procedi a construir una
frmula, anloga a la armacin del mentiroso, que arma de s misma ser
indemostrable en AP. Esta frmula debidamente interpretada arma de s
misma ser indemostrable en AP! Para comenzar, consideremos la frmula
P (x) denida como P (x) = :9yU(x; y): La frmula anterior debe tener un
cierto nmero de Gdel asociado, el cual denotaremos por N . Interpretemos
ahora la frmula P (N ), que se obtiene al remplazar en P (x) la variable x
por N . Esto es, P (N ) = :9yU(y; N ). La frmula P (N ) arma que no
existe un nmero asociado a una demostracin de la frmula que se obtiene
de P (x), al remplazar x por N , es decir, P (N ) arma que no existe una
demostracin de P (N )!
Mostremos ahora que si AP es consistente, entonces P (N ) es indemostrable en AP. La consistencia de AP se asume de manera indirecta en el
supuesto de que N es un modelo.
Si P (N ) fuera demostrable en AP existira una demostracin cuya ltima frmula es P (N ). Denotemos por n el nmero de Gdel de este texto
demostrativo. La propiedad que caracteriza U(x; y) muestra entonces que

52

CHAPTER 3. TEOREMA DE INCOMPLETEZ DE GDEL

N j= U(n; N ). Luego N j= 9yU(y; N ). Pero como AP` P (N ); entonces


tambin se da que N j= P (N ) = :9yU(y; N ) (pues N es un modelo de AP),
lo cual es una contradiccin. Luego P (N ) no puede demostrarse en PA.
Veamos ahora que la negacin de P (N ) tampoco es un teorema de AP.
Supongamos que lo fuera. Entonces, AP` :P (N ) y en consecuencia AP`
9yU(y; N ). De aqu que N j= 9yU(y; N ) y en consecuencia deber existir un
entero n0 tal que N j= U(n0 ; N ). La propiedad que caracteriza U(x; y) nos
dice entonces que n0 deber ser el nmero de Gdel asociado a una cierta
demostracin en AP de la frmula P (N ) = :9yU(y; N ). Luego deber ser
que AP` P (N ), lo cual ya vimos es imposible.
Hemos demostrado as que P (N ) es indecidible en AP. Es decir, ni esta
frmula ni su negacin son teoremas de AP. Pero !P (N ) es vlida en N! En
efecto, para ver que N j= :9yU(y; N ) basta ver que 9yU(y; N ) no se satisface
en N, que es precisamente lo que acabamos de vericar. Resumiendo nuestra
discusin:
Theorem 3.2.1 Denotemos por L el lenguaje de la aritmtica de Peano
(AP).
1. Existe una frmula U(x; y) tal que N j= U(m; n) si y solo si:
i El entero m es nmero de Gdel de una frmula A(z) de L que posee
una variable z.
ii El entero n es nmero de Gdel de una demostracin de A(m).
2. Sea P (x) la frmula :9yU(x; y) y denotemos por God a la sentencia :9yU(N ; y). Entonces, si AP es consistente God y su negacin,
:God; no son teoremas de AP no obstante God es vlida en N:
Acto seguido, Gdel deduce de este teorema su an ms famoso Teorema
de incompletez : la consistencia de AP no puede demostrarse dentro de AP,
lo cual signica lo siguiente. Denotemos por Consis la sentencia que arma
que AP es consistente. En primer lugar, sea democontra(x; y) una frmula
con la siguiente propiedad: N j=democontra(m; n) si y solo si m es el nmero
de Gdel de una sentencia de la forma P ^:P y n el nmero de Gdel de una
demostracin de F . Sea Consis la sentencia (8x)(8y)(:democontra(x; y)).
Theorem 3.2.2 Si AP es consistente entonces Consis no es teorema de
AP.

3.3. NUMERACIN GDELIANA

53

Prueba. El teorema anterior (2) arma que si AP es consistente entonces


existe una sentencia, God, que es indecidible en AP, y en particular no
demostrable en AP. La prueba informal que discutimos en el prrafo previo
a este teorema puede de hecho formalizarse dentro de AP como la sentencia:
Consis =) God es indemostrable en AP
Pero God arma de s misma ser indemostrable, es decir, God = "God es
indemostrable en AP". Como God no es teorema de AP tampoco lo puede
ser Consis.
El sueo de Hilbert, Wir msen wissen. Wir werden wissen(debemos
conocer y conoceremos) no podr jams realizarse. Nuestra conanza en la
solidez del gran edicio matemtico es, despus de Gdel, y ser por siempre,
un mero acto de fe.

3.3

Numeracin gdeliana

En esta seccin estableceremos cdigos para las frmulas de la Aritmtica de


Peano (AP). Recordemos primero que este lenguaje de primer orden consiste
los smbolos LAP = f0; ; +; sg: Sus axiomas propios son (el smbolo 6= es
una abreviacin de : =):
N1 8x(s(x) 6= 0)
N2 8x(x 6= 0 =) 9y(s(y) = x)
N3 8x(x + 0 = x)
N4 8x8y(x + s(y) = s(x + y))
N5 8x(x 0 = 0)
N6 8x8y(x s(y) = (x y) + x))
N7 Induccin: 8z[A(0; z) ^ 8y(A(y; z) =) A(s(y); z)) =) 8xA(x; z)]:
los trminos s0; ss0; : : : ; s
s0,: : : (donde s aparece n-vces) sern denotados por 1; 2; : : : ; n; : : : La relacin "x divide a y", x jy , se dene como
9z(xz = y). La relacin x < y se dene como 9z(x + z = y) y x y
se dene como x < y _ x = y:

54

CHAPTER 3. TEOREMA DE INCOMPLETEZ DE GDEL

Asignemos a cada smbolo lgico sb y a cada smbolo en LAP un nmero


entero, que denotaremos por jsbj, de la manera siguiente:
sb
0
s
=
+
8
_
:
xn

jsbj
2
4
6
8
10
12
14
16
2n + 1

En general, a secuencias nitas de smbolos de AP, c = (sb1 ; : : : ; sbn ); le


jsb j
asignaremos un entero, c = 2jsb1 j 3jsb2 j
pn n , donde p1 = 2; p2 = 3; : : : ; pn ;
denota la secuencia de nmeros primos: pn denota el n-simo nmero primo.
El entero positivo c es llamado el nmero o cdigo de Gdel de la secuencia.
Comencemos por asignarle nmeros de Gdel a los trminos de AP:
1. Si t es un smbolo en LAP , su correspondiente nmero de Gdel es el
dado por la tabla anterior.
0

2. Si t = st0 , (t = t0 + 1) entonces jtj = 2jsj 3jt j


3. Si t = +t1 t2 , (t = t1 + t2 ) entonces jtj = 2j+j 3jt1 j 5jt2 j
4. Si t = t1 t2 , (t = t1 t2 ), entonces jtj = 2j j 3jt1 j 5jt2 j
De manera similar, a las frmulas de AP les asignamos los nmeros de
Gdel de la siguiente manera:
1. Si la frmula es = t1 t2 (t1 = t2 ) entonces jf j = 2j=j 3jt1 j 5jt2 j
2. Si la frmula es :P , entonces jP j = 2j:j 3jP j
3. Si la frmula es _P Q, es decir (P _ Q), entonces jP _ Qj = 2j_j 3jP j 5jQj
4. Si la frmula es 8xn R, entonces j8xn Rj = 2j8j 3jxn j 5jRj

3.3. NUMERACIN GDELIANA

55

1. A cada secuencia nita de frmulas F1 ; : : : ; Fk le asociamos el nmero


jF j
jF j
c = p1 1
pk n .
Ejemplo 3.3.1 Supongamos que deseamos encontrar el nmero o cdigo de
Gdel asociado a la instancia siguinete del primer axioma 8x1 (s(x1 ) 6= 0).
jsj = 4, j0j = 2; jx1 j = 3; j=j = 6; j:j = 16, j8j = 12. Luego:
i jsx1 j = 24 33 :
ii jsx1 = 0j = 26 32

4 33

iii jsx1 6= 0j = 216 32

52

6 3 24 33 5 2

iv j8x1 (sx1 6= 0)j = 212 33 52

4 3
16 326 32 3 52

Proposicin 3.3.2 Trminos, frmulas y secuencias de frmulas en AP


tienen asignados nmeros de Gdel nicos. Esta numeracin es adems
inyectiva. Mas an, dado un entero positivo, siempre es posible "decodicarlo" para hallar el trmino, la frmula o la secuencia de frmulas del cual
proviene, si es que en efecto proviene de alguna.
Prueba. La factorizacin de un entero en nmeros primos es nica. Luego
dado un n, siempre es posible reconstruir de manera mecnica la secuencia
de la cual proviene (si existe una). Pero la manera recusrsiva para construir trminos y frmulas est unvocamente especicada, de tal suerte que
trminos y frmulas dan origen a cdigos diferentes.
Los detalles se dejan como ejercicio para el lector.
Nuestro prximo objetivo ser construir frmulas en AP, tales como
formula(x) o trmino(x), con la siguiente propiedad: N j=formula(n) sii n
es el cdigo correspondiente a una frmula de AP; N j=trmino(n) sii n es
el nmero de Gdel de un trmino de AP. El objetivo nal ser construir
la frmula U(x; y) que se mencion ms arriba, con la cual se construye
la clebre frmula goedeliana. Lo que sigue, aunque algo prolijo y tedioso,
no obstante elemental. La vericacin de cada armacin es un ejercicio
sencillo. Seguiremos de manera muy cercana lo expuesto en [10], Captulo
4. Con el objetivo de hacer ms fcil la comprensin del signicado de las
frmulas que siguen, usaremos nombre para las variables que hagan referencia a la clase de objeto que dicha variable denota en la correspondiente
frmula. Por ejemplo, si x ha de cambiarse por un nmero primo, entonces
preferiremos escribir p en lugar de x o de xk . Tambin usaremos variables

56

CHAPTER 3. TEOREMA DE INCOMPLETEZ DE GDEL

como f; g; e, cuando sea conveniente. El siguiente es el diccionario bsico


necesario para la construccin de la frmula goedeliana:
1. F1: primo(p) : p > 1 ^ :9y9z(zy = p ^ x > 1 ^ z > 1). Entonces,
N j=primo(n) sii n es un nmero primo.
2. F2: primos-juntos(p; q) : primo(p)^primo(q)^p < q^8z(primo(z) =)
z p _ z q). Entonces N j=primos-juntos(m; n) sii m; n son primos
m < n y n es el primo en la lista de primos que estrictamente le sigue
a m.
3. Sea sec = fN : N = pe11
penn ; ei > 0g. Este conjunto puede capturarse mediante una frmula:
F3: sec(c) : 8p8q(primo(p)^primo(q) ^ p < q ^ q jc =) p jc ): Entonces
N j=sec(n) sii n 2 sec.
4. F4: Sea prod = fN : N = 21 o N = 21 32 o N = 21 32 53 o N =
21 32 53
pkk ; : : :g Este conjunto puede capturarse mediante una frmula: prod(c) : 2 jc ^ :4 jc ^Sec(c) ^ 8p8q8e(primos-juntos(p; q) ^
q jc =) (pe jc () qe+1 jc ). Entonces N j=prod(c) sii c 2 prod:
5. F5: k-esimo-primo(p; k) : primo(p) ^ 9w(prod(w) ^ pk jw ^:pk+1 jw ).
Entonces, N j=k-esimo-primo(p; k) sii p es el k-simo primo en la secuencia de primos.
6. F6: exp-pk(c; k; e) : sec(c) ^ k > 0 ^ e > 0 ^ 8p( primo(p)^ k-esimoprimo(p; k) =) pe jc ^:pe jc ). Entonces N j=exp-pk(c; k; e) si el entero
c es divisible por la potencia e del k-simo primo, pek , y e es la mxima
potencia de pk que divide c.
7. F7: var(x) : 9y(x = 2y + 1). Entonces N j= var(n) si y solo si n es el
nmero de Gdel de una variable de AP.
8. F8: cero(x) : x = j0j : Entonces N j=cero(n) sii n es el nmero de Gdel
de la constante 0.
9. F9: da-trmino(t1 ; t2 ; b; t) : [(b = j+j _ b = j j) ^ t = 2jbj 3jt1 j 5jt2 j ] _
[b = jsj ^ t =2jsj 3jt1 j ]. Entonces N j= da-trmino(n1 ; n2 ; m; n) sii n es el
nmero de Gdel de un trmino de la forma t = sbt1 t2 o de la forma t =
sbt1 , n1 ; n2 son los nmeros de Gdel de t1 y de t2 , respectivamente, y
b es el nmero de Gdel del smbolo sb ( sb denota uno de los smbolos
+, o s).

3.3. NUMERACIN GDELIANA

57

10. F10: obtener(c; k; l; b; n) : 9e9f9g(exp-pk(c; k; e)^ exp-pk(c; l; f)^ exppk(c; n; g)^ da-trmino(e; f; b; g)): Entonces, N j= obtener(c; k; l; b; n)
sii c es un entero divisible por los primos pk , pl , y pn , donde e; f; g
son las mximas potencias de pk , pl y pn , respectivamente, y donde g
corresponde al nmero de Gdel de una secuencia de smbolos de AP
de la forma t = sbt1 t2 o de la forma t = sbt1 , con e; f los nmeros
de Gdel de t1 y de t2 , respectivamente. Finalmente, b deber ser el
nmero de Gdel del smbolo sb ( donde sb denota uno de los smbolos
+, o s).
11. F11: t-atmico(c; n) : 9e(exp-pk(c; n; e) ^ (cero(e)_var(e)). N j= tatmico(c; n) si el primo pn divide c; y la mxima potencia de pn que
divide c es e. Adems, e deber ser el nmero de Gdel de 0 o de una
variable xk .
12. F12: construye-termino(c; t) : sec(c) ^ 9k(exp-pk(c; k; t)) ^ 8r8e(exppk(c; r; e) =) t-atmico(c; r) _ 9i < r 9j < r 9b(obtener(c; i; j; b; r).
Esta ltima frmula requiere una explicacin: si t es un trmino, su
construccin recursiva a partir de trminos atmicos (constantes o
variables) puede especicarse mediante una lista en la cual t aparece
en la posicin k-sima, y en donde no exigimos que t est en el ltimo
lugar de dicha secuencia: t1 ; : : : ; tk = t; : : : ; tn . Estamos permitiendo
que, una vez construido t; se sigan construyendo recursivamente otros
posibles trminos tk+1 ; : : : ; tn . La secuencia t1 ; : : : ; tn deber entonces
cumplir la coindicin siguiente: cada tr es un trmino atmico o existen
i; j. Luego N j= construye-termino(c; t) sii c es un nmero de Gdel
jt j
jt j
jt j
de la forma c = p1 1
pk k
pnn donde cada tr se ha obtenido como
tr = sbti tj o tr = sbti , con i; j < r; y donde sb es el smbolo 0 o sb es
el smbolo sucesor, s.
13. F13: termino(t) : 9c(construye-termino(c; t)):
Un prodecimiento similar permite construir la frmula:
F14: formula(x) tal que N j= formula(n) sii n es el nmero de Gdel de
una frmula de AP ([10], 4.5.8-4.5.13).
A continuacin necesitamos una frmula implica(f1 ; f 2 ; f) que expresa el
hecho de que f sea el nmero de Gdel de una implicacin P =) Q, donde
f1 = jP j y f2 = jQj. La frmula es simplemente:

58

CHAPTER 3. TEOREMA DE INCOMPLETEZ DE GDEL


1. F15: implica(f1 ; f 2 ; f) : formula(f1 )^formula(f2 )^ f = 214 316 5f1 7f2 )
2. Es algo tedioso, pero elemental ver que existe una fmula:
F16: axioma(x), tal que N j= axioma(n) sii n es el nmero de Gdel
de un axioma. Para ello hay que codicar pacientemente cada grupo
de axiomas, los lgicos y los axiomas propios de AP ([10], 4.5.164.5.19). El punto central, sin embargo, es que los axiomas de AP,
aunque no son nitos, pueden ser descritos de manera mecnica y
explcita (recursivamente enumerables, en lenguaje profesional). Como
veremos, ello signica que existe una maquina de Turing que los genera.
3. Una secuencia de frmulas F1 ; : : : ; Fn es un texto demostrativo si cada
frmula es un axioma o si cada Fr satisface que existen Fi ; Fj , con
i; j < r tales que Fj : Fi =) Fr . Si c es el nmero asociado a dicha
secuencia, entonces la frmula siguiente armara que c es el nmero
de Gdel asociado a un texto demostrativo:
F:17: textodemo(c) : sec(c)^8r8e(exp-pk(c; r; e) =) (axioma(e)_9i <
r 9j < r 9f 9g(exp-pk(c; i; f)^exp-pk(c; j; g)^implica(f; e; g))):
4. F18: demo(f; c) : formula(f)^textodemo(c) ^ 9k(exp-pk(c; k; f)). Esta
frmula se satisface en (f; c) cuando f sea el nmero de Gdel de
una frmula F y c el nmero de Gdel de un texto demostrativo
F1 ; : : : ; Fk = F; : : : ; Fn en el cual F aparece en la posicin k-sima,
1 k < n (no exigimos que la frmula F aparezca de ltima en dicha
secuencia).
5. F19: teorema(f) : 9c demo(f; c): Esta frmula expresa el hecho de que
la frmula con nmero de Gdel f sea un teorema de AP.

En la Seccin 4.6 de [10] se explica en detalle la construccin de la


siguiente frmula:
1. F20: diagonal(m; k); la cual expresa el hecho de que m sea el nmero
de Gdel de una frmula A(x1 ) de AP y k el nmero de Gdel de
su diagonalizacin, denida como la frmula A(m) que se obtiene de
reemplazar la variable x1 (en caso de que aparezca) por m. La
construccin de esta frmula requiere discutir en detalle la manerqa
como se goedeliza el proceso de substitucin ([10], Sec. 4.6).

3.3. NUMERACIN GDELIANA

59

2. Finalmente, la frmula U(m; n), la cual expresa el hecho de que m sea


el nmero de Gdel de una frmula A(x1 ) y n el nmero de Gdel de
una demostracin de A(m), puede expresarse como:
F21: U(m; n) = 9k(diagonal(m; k)^demo(k; n)):
Ejercicio 3.3.3 Construya las frmulas democontra(x; y) y Consis mencionadas ms arriba.

60

CHAPTER 3. TEOREMA DE INCOMPLETEZ DE GDEL

Chapter 4

Mquinas de Turing
4.1

Introduccin

Una mquina de Turing es un objeto matemtico que puede ser visualizado


como un mecanismo que manipula smbolos escritos sobre una cinta innita
dividida en celdas, y en donde hay solo un smbolo por celda. Una cabeza
lectora escanea una celda a la vez, y luego toma una nica accin, la cual
depender de un conjunto jo de instrucciones, como se explicar en esta
seccin. Dichas acciones modican el contenido de la cinta, las cuales dejan
un registro nal escrito en ella, que se interpretar como el resultado del
cmputo de la mquina. A pesar de su enorme simplicidad, una mquina de
Turing puede simular las operaciones de cualquier computador concebible,
sin importar su eciencia o tamao. La denominada Tesis de Church es el
principio losco que identica las operaciones de una mquina de Turing con todo aquello que razonablemente pueda llamarse un procedimiento
algortmico o una funcin computable.
La idea original se debe al matemtico ingls Alan Turing, quien introdujo el concepto en 1936. En sus propias palabras, una mquina de
computacin lgica, consiste de los siguientes elementos " ...una ilimitada
capacidad de memoria obtenida en la forma de una cinta innita marcada
con cuadrados, en cada uno de los cuales podra imprimirse un smbolo.
En cualquier momento hay un smbolo en la mquina; llamado el smbolo
ledo. La mquina puede alterar el smbolo ledo y su comportamiento est
en parte determinado por ese smbolo, pero los smbolos en otros lugares
de la cinta no afectan el comportamiento de la mquina. Sin embargo, la
cinta se puede mover hacia adelante y hacia atrs a travs de la mquina,
siendo esto una de las operaciones elementales de la mquina. Por lo tanto
61

62

CHAPTER 4. MQUINAS DE TURING

cualquier smbolo en la cinta puede tener nalmente una oportunidad".


Demos una denicin precisa.
Denicin 4.1.1 Una mquina de Turing consiste de una lista nita de
ttradas qi si qj a, donde si es uno de los smbolos 0; 1; donde qi es un elemento
de un conjunto nito fqq ; : : : ; qr g y donde a, "la accin", es uno de los
posibles cuatro smbolos d; i; s; p. Pedimos adems que no haya instrucciones
ambiguas, es decir, que no existan dos instrucciones diferentes qi si
que
comiencen con la misma pareja qi si :
La mquina puede pensarse como una cinta innita dividida en celdas.
Cada celda contiene uno y solo uno de los dos smbolos 0 o 1. El smbolo 0
puede interpretarse como el espacio en blanco. Una cabeza lectora escudria
en cada momento una nica celda, y se encontrar en un determinado estado
interno qi . La instruccin qi si qj a se interpreta de la siguiente manera: si la
cabeza se encuentra en el estado qi ; y en dicho instante est escudriando una
celda en la cual est escrita el smbolo si , entonces la cabeza pasar al estado
qj y tomar la accin dada por a: si a denota el smbolo d, entonces la cabeza
se mover a la derecha. Si a es i, entonces se mover a la izquierda. Si a es
igual a s, entonces borrar el smbolo ledo, y lo reemplazar por el smbolo
s. Finalmente, si a es p, entonces se detendr, y no seguir ejecutando
ninguna otra accin. La mquina tambin parar si no encuentra ninguna
posible instruccin que pueda ejecutar.
Por ejemplo, veamos qu hace la mquina dada por el conjunto de instrucciones siguiente: M = fq1 1q1 d; q1 0q2 1; q2 0q3 pg; cuando en la cinta hay
inicialmente tres celdas consecutivas, en las cuales hay escritos en cada una
un smbolo 1. La cabeza lectora se encuentra escudriando el primer 1; de
izquierda a derecha, y en el estado interno q1 . Esto se denotar mediante el
siguiente diagrama:
0

q1

La cabeza lectora est inicialmente en el estado q1 escudriando el primer 1


que se encuentra en la cinta (de izquierda a derecha). La instruccin q1 1q1 d
le ordena a la cabeza lectora cambiar del estado q1 al estado q1 (en esta caso
permanece en el mismo estado) y luego moverse una casilla a la derecha. El
resultado de ejecutar esa operacin es el siguiente:
0

q1

4.1. INTRODUCCIN

63

En esta nueva posicin, la cabeza deber repetir la misma instruccin, y se


desplazar una casilla ms a la derecha:
0

q1

La instruccin se repite una vez ms, y el resultado es el siguiente:


0

q1

En este punto se ejecuta la instruccin q1 0q2 1: la cabeza lectora pasa al


estado q2 , y reemplaza el smbolo escudriado, el 0 en este caso, por un 1:
0

q2

En este instante, como no encuentra ninguna instruccin que comience por


q2 1; entonces la mquina no podr ejecutar ninguna accin y se detendr
all.
Para efectos de computar funciones : Nk ! Nr es conveniente establecer algunos convenios sobre la manera como debern entrarse los datos en
la cinta, y de cmo deber leerse el resultado. Diremos que una mquina M
computa una funcin de k-argumentos, con resultado una r-tupla (y1 ; : : : ; yr )
de nmeros naturales, lo cual denotaremos por (y1 ; : : : ; yr ) = M (x1 ; : : : ; xk );
si:
1. En la cinta aparecen inicialmente x1 +1 smbolos 1 consecutivos, luego,
separado por un smbolo 0; aparecen x2 + 1 smbolos 1 consecutivos, y
as sucesivamente hasta completar una ltima ristra de xk +1 smbolos
1. Exigiremos que la cabeza lectora se encuentre inicialmente en el
estado q1 y escaneando el primer smbolo 1 que aparezca en la cinta,
cuando sta se revisa de izquierda a derecha.
2. La mquina deber detenerse en algn momento. En este instante en
la cinta debern aparecer ristras de y1 + 1; y2 + 1; : : : ; yr + 1 smbolos
1, cada ristra separada de la siguiente por un smbolo 0; de manera
igual a lo convenido para la entrada de datos. Exigimos adems que la
cabeza lectora termine localizada justo en el primer smbolo 1 cuando
la cinta se revisa de izquierda a derecha.
Por ejemplo, una mquina "sumadora" de tres argumentos, es decir, una
mquina que compute M (x1 ; x2 ; x3 ) = x1 + x2 + x3 , si toma como entrada

64

CHAPTER 4. MQUINAS DE TURING

(0; 3; 1), est deber estar escrita como sigue, y la cabeza lectora deber
comenzar en la posicin que se muestra a continuacin:
0

q1

Una vez la mquina pare, el resultado del cmputo (igual a 4) deber


mostrase como sigue:
0

q10

Exhibamos una mquina que sume dos nmeros naturales M (x1 ; x2 ) =


x1 +x2 . Veamos que M puede ser dada por la siguiente lista de instrucciones:
q1 1q2 0; q2 0q3 0; q3 0q4 d, q4 1q4 d, q4 0q5 1, q5 1q5 d;
q5 0q6 i, q6 1q7 0, q7 0q8 i, q8 1q8 i, q8 0q9 d; q9 1q10 p:
La siguiente lista de acciones consecutivas de la mquina mostrara como
sumar 2 + 3 :
0
0
0

q1
q2
q3

q8

q4

q9

q10

q4

q4
q5

q5

q6
q7

q8

PARA!

4.1. INTRODUCCIN

65

El convenio establecido para codicar cada entrada (y cada salida) xk como


una ristra consecutiva de xk + 1 smbolos 1 obedece al hecho de poder distinguir la entrada 0 de los espacios en blanco, representados como ceros, que
ocupaban previamente las casillas de la cinta.
Adems, el resultado de un cmputo particular debe escribirse de tal
forma que pueda ser utilizado por otra mquina en un futuro. De ah que
establezcamos el convenio de que el resultado denitivo quede escrito de
tal manera que coincida con la posicin de los datos iniciales ya convenida.
En particular, ello nos permite concatenar varias mquinas en secuencia, si
deseamos, por ejemplo, computar la compuesta de varias funciones.
Ejemplo 4.1.2 Veamos que existe una mquina D (duplicadora) que toma
una entrada que consiste de una ristra de n unos consecutivos y deja escrita
sobre la cinta una ristra de 2n unos. La cabeza lectora se detiene en el
estado q30 , justo en el primer uno (de izquierda a derecha) de la ristra de
longitud 2n que corresponde a dicho cmputo.
La mquina se compone de tres partes. El primer conjunto de instrucciones:
q1 1q2 i; q2 0q3 i; q3 0q4 i; q4 0q5 1; q5 1q6 d;
q6 0q7 d; q7 0q8 d; q8 1q9 d, q9 0q20 0:
realiza la siguiente operacin:
Parte 1 Si la posicin inicial de la mquina es la siguiente:
0

q1

(aqu s denota uno de los dos smbolos 1 o 0) este primer conjunto de


instrucciones produce el resultado:
0

q9

Es decir, con este conjunto de instrucciones se copia el primer uno de


la ristra entrada, dejando de por medio dos espacios a la izquierda. .
Parte 2 El segundo conjunto de instrucciones comienza en el estado q9 ;
cuando la cabeza se encuentra inspeccionando el k-simo uno (si k > 1)
(ledo de izquierda a derecha) que se encuentra originalmente en la
cinta. Este smbolo 1 lo escribe en la casilla que est justo a la izquierda
de la copia (ya realizada) del k 1-simo uno de la cinta original.

66

CHAPTER 4. MQUINAS DE TURING


Luego, la cabeza se desplaza hacia la derecha hasta situarse en la
casilla que sigue justo a la derecha del k-simo uno. La operacin
termina con la cabeza en el estado interno q9 .
0

1| {z 1}

k 1 unos

copia

1| {z 1}

1| {z 1}

q9

k 1 unos

k 1 unos

1| {z 1}

k 1 unos

k-simo

q9

El procedimiento puede llevarse a cabo de la siguiente manera: primero


se reemplaza el k-simo uno por un cero (para que ste sirva de marca).
Luego la cabeza lectora se desplaza hacia la izquierda hasta encontrar
el ltimo de los unos ya copiados; se mueve luego una casilla ms a la
izquierda, escribe un 1, y a continuacin se desplaza hacia la derecha
hasta alcanzar la casilla donde el k-simo uno fue reemplazado por
cero. A continuacin, reemplaza este cero por 1 (y as se recupera
el uno que haba sido cambiado por cero), y luego se desplaza a la
prxima casilla situada a la derecha, y termina all en el estado interno
q9 . Estas son las instrucciones:
q9 1q11 0; q11 0q12 i; q12 1q12 i; q12 0q13 i; q13 0q14 i; q14 1q14 i
q14 0q15 1; q15 1q15 d; q15 0q16 d; q16 0q17 d; q17 1q17 d;
q17 01q18 ; q18 1q9 d:
Parte 3 En este ltimo conjunto de instrucciones la cabeza comienza en el
estado q9 escudriando el primer cero a la derecha de la ristra original
de n-unos que se deseaba copiar. La mquina elimina el doble cero que
separa a la ristra original de su copia, y se detiene de manera denitiva
con la cabeza posicionada en el primer uno (de izquierda a derecha),
y en el estado interno q30 :
0

1| {z 1}
n unos

1| {z 1}
n unos

q9

:::0
!

1
1
| {z }
q1

2n unos

q20 0q21 i; q21 1q22 0; q22 0q23 i; q23 1q23 i; q23 0q24 1; q24 1q25 i;
q25 0q26 1; q26 1q26 i; q26 0q27 d; q27 1q28 0; q28 0q29 d; q29 1q30 p:
Siempre es posible concatenar Mquinas de Turing M0 ; : : : ; Mr de tal
modo que la mquina resultante ejecute las operaciones de M0 , luego las

4.2. PROBLEMA DE LA PARADA

67

operaciones de M1 ; de M2 ; : : : ; y as hasta nalmente hasta ejecutar las


operaciones de Mr . Para ello, suponemos que cada una de estas mquinas
Mk siempre para.
La manera de concatenar estas mquinas es la siguiente: si los estados
(k)
(k)
internos de cada Mk (0
k
r) se denotan por q1 ; : : : ; qnk , entonces
(k)
(k)
cambiamos cada instruccin de Mk reemplazando qi por qi+sk ; donde s0 =
0 y sk = (n0 1) +
+ (nk 1 1), de tal suerte que M1 comienza ahora a
operar en el estado qn0 +1 , y para en el estado en qn1 +n0 luego M2 comienza a
operar en el estado q Por ejemplo, la mquina D concatenada consigo misma
tomara una entrada consecutiva de n unos y dejara una ristra consecutiva
de 4n unos:
0

q1
n unos

q30
2n unos

y a continuacin se ejecuta:
0

q30
2n unos

q59
4n unos

A la concatenacin de r mquinas M1 ,: : : Mr la podemos denotar como el


producto Mr
M1 . A la concatenacin de n mquinas duplicadoras la
denotaremos por D(n) . Claramente esta mquina tomar una cinta en la
cual haya escrito solo un smbolo 1 y parar dejando en la cinta una ristra
de 2n unos.

4.2

Problema de la parada

En esta seccin discutiremos de dos formas diferentes el denominado "problema de la parada", el cual arma que no es posible en general determinar
de manera algortmica cundo una mquina de Turing se detiene en algn
momento, o si por el contrario sigue ejecutando instrucciones de manera
indenida.
Observacin 4.2.1 A primera vista pareciera que el problema de la parada
se pudiera resolver simplemente examinando aquellas instrucciones de la
forma qi si qj p. Es claro que la mquina se detiene solo si eventualmente
encuentra una de estas instrucciones o se encuentra en un estado interno qi ,
y examinando el smbolo si , pero no encuentra ninguna instruccin de la
forma qi si
, es decir, que comience por qi si . El problema se encuentra
en la imposibilidad de determinar (en general) si la mquina alcanzar en

68

CHAPTER 4. MQUINAS DE TURING

algn momento a estar en una de esas situaciones, o si ocurre lo contrario,


en cuyo caso jams se detendr. Consideremos, por ejemplo, la mquina
denida por las siguientes instrucciones:
q1 1q2 0; q2 0q3 0; q3 0q4 d, q4 1q4 d, q4 0q5 1, q5 1q5 d;
q5 0q6 i, q6 1q7 0, q7 0q8 i, q8 1q8 i, q8 0q9 d; q9 1q10 p:
Si en la cinta hay inicialmente una secuencia de cinco smbolos 1, seguidos de un 0 y luego de un 1; estar la mquina en algn momento en
el estado interno q9 y escudriando un smbolo 1; de tal suerte que la instruccin q9 1q10 p pueda ejecutarse? O, alcanzar a estar en el estado q6 ; y
escudriando un 0, de tal modo que no tenga ninguna otra instruccin qu
ejecutar, y por ende se detendr? En esta caso particular, como sabemos a
priori que esta mquina es la mquina del Ejemplo 4.1, entonces podremos
predecir que en esta situacin inicial la mquina se detendr, dejando en la
cinta cinco smbolos 1 consecutivos (M (4; 0) = 4 + 0). No obstante, jado
un entero k > 0, siempre es posible saber si una determinada mquina con
una entrada especca inicial se detendr en un nmero de pasos k, pues
siempre podramos seguir el cmputo, paso por paso, y jarnos si en algno
de estos pasos la mquina alcanza una de las dos situaciones mencionadas
en el prrafo anterior. Esto es posible, pues solo existen a lo sumo k estados
que deban analizarse. Sin embargo, determinar en general si ello ocurrir
para todo los valores de k es un problema insoluble de manera algortmica,
al menos si nos acogemos a la Tesis de Church.
Histricamente, el descubrimiento de problemas incomputables se debe
a Alan Turing [12], y data de 1937. Una versin diferente del problema de
la parada fue publicada en 1967 por Tibor Rad [11]. Comenzaremos por
discutir esta ltima versin.
Denicin 4.2.2 Diremos que la productividad de una determinada mquina
de Turing es n si al comenzar con una cinta en la cual haya escrito un solo
smbolo 1; la mquina se detiene, dejando en la cinta n unos: Si la mquina
no se detiene diremos que su productividad es cero.
Entre todas las mquinas con mximo k estados debern existir algunas
con la mayor productividad posible. Denotemos por P (k) la funcin de
productividad. Es decir, P (k) = m sii existe una mquina M de r
k
estados que toma una cinta con un solo uno, y produce otra con m unos, y
de tal modo que cualquier otra mquina con mximo k estados dejar en la

4.2. PROBLEMA DE LA PARADA


cinta un nmero de unos
0

m.

q1

69

qr
m unos

Por ejemplo, P (30)


2, puesto que la mquina duplicadora D posee 30
estados y deja dos unos en la cinta cuando inicialmente hay solo uno originalmente. De otro lado, P (30n) 2n , pues la mquina D(n) , la cual posee
30n estados, deja al detenerse 2n unos escritos en la cinta donde haba solo
uno inicialmente.
Observacin 4.2.3 P (k + 1) > P (k), pues a las instrucciones de una
mquina R con estados q1 ; : : : ; qr , con r
k cuya productividad sea P (k)
siempre podemos aadirle las instrucciones qr 1qr+1 i, qr+1 0qr+1 1; qr+1 1qr+1 p,
de tal suerte que con un solo estado ms, qr+1 ; y estas tres nuevas instrucciones, la nueva mquina R0 dejar en la cinta P (k) + 1 unos cuando parte
de una cinta que solo contiene solo un uno. De aqu se sigue de inmediato
que P es una funcin estrictamente creciente: P (l2 ) > P (l1 ) si l2 > l1 .
Theorem 4.2.4 No existe ninguna mquina que compute la funcin P .
Prueba. Supongamos por el absurdo que dicha mquina existiera. Con
esta mquina podramos construir de inmediato otra mquina, llammosla
B, con, digamos, b estados, la cual toma una cinta con k unos consecutivos
y se detiene dejando en la cinta P (k) unos:
B

q1 k unos

qb
P (k) unos

Fijemos cualquier entero positivo n que satisfaga la desigualdad 2n > 30n +


30b. Consideremos la mquina I que resulta de concatenar D(n) con B (2) :
Esta mquina tendr entonces 30n + 2b estados, y, tomar una cinta en la
cual hay solo un 1 inicialmente y retornar, escritos en la cinta, P (P (2n ))
unos consecutivos:
0

q30n+b

q1

D(n)

P (2n ) unos

0
B

2n unos

q30n

q30n+2b

P (P (2n )) unos

70

CHAPTER 4. MQUINAS DE TURING

Luego la productividad de I es P (P (2n )). Obviamente, de acuerdo con la


manera como est denida la funcin P vemos que P (30n+2b) P (P (2n )).
Como P es creciente (Observacin 4.2.3) se sigue que
30n + 2b

P (2n ):

(4.1)

Como 2n > 30n + 30b, y P es creciente, se sigue que:


P (2n ) > P (30n + 30b) > P (30n)

2n :

(4.2)

De (4.1) y (4.2) se sigue que 30n + 2b > 2n . Pero habamos escogido n


tal que 2n > 30n + 30b; lo cual implicara que 30n + 2b > 30n + 30b, una
contradiccin. Se sigue entonces que B no existe y en consecuencia no existe
ninguna mquina capaz de calcular la funcin P .
Ejercicio 4.2.5 Encuentre mquinas de Turing para computar las siguientes funciones:
1. s(x) = x + 1
2. c(x1 ; : : : ; xk ) = c, donde c 2 N es una constante.
3. pi (x1 ; : : : ; xk ) = xi
4. Muestre que si y1 = '1 (x1 ; : : : ; xk ); : : : yr = 'r (x1 ; : : : ; xk ) y z =
(y1 ; : : : ; yr ) son funciones computadas por mquinas de Turing, entonces existe una mquina M que computa
M (x1 ; : : : ; xk ) = ('1 (x1 ; : : : ; xk ); : : : ; 'r (x1 ; : : : ; xk )):

(4.3)

5. Muestre que si z = '1 (x1 ; : : : ; xk ) y w = (x1 ; : : : ; xk ; y; z) son funciones computadas por mquinas de Turing, entonces la funcin M
denida de manera recursiva como
M (x1 ; : : : ; xk ; 0) = '1 (x1 ; : : : ; xk )
M (x1 ; : : : ; xk ; y + 1) = (x1 ; : : : ; xk ; y; M (x1 ; : : : ; xk ; y));
tambin es computable con una mquina de Turing.

(4.4)

4.3. MQUINAS UNIVERSALES

4.3

71

Mquinas Universales

La solucin de Alan Turing al problema de la parada depende de la existencia


de una mquina universal. El lector interesado en conocer los detalles de
esta construccin puede consultar [13], Captulo 4. Dejando de lado los
asuntos tcnicos, la idea puede explicarse sin mayores dicultades.
En primer lugar, las mquinas de Turing pueden gdelizarse siguiendo un
procedimiento similar al del captulo anterior. Ello permite, no solo numerar
todas las posibles mquinas de Turing en una lista M1 ; M2 ; : : : ; Mr ; : : : ; sino
tambin disponer de un mecanismo efectivo, es decir, de otra mquina, que
nos permite, dado un entero n, determinar si n corresponde al nmero de
Gdel de alguna mquina, y, en caso armativo, reconstruir su programa.
De aqu que pueda implementarse una mquina universal U; la cual computa
una funcin de dos argumentos U (x; y), y de tal manera que U (k; n) es precisamente el cmputo de la mquina Mk ; cuando sta encuentra inicialmente
en su cinta una secuencia de n+1 unos consecutivos. En otras palabras, si interpretamos Mk como funcin de un argumento, entonces U (k; n) = Mk (n),
si Mk para en dicha situacin, o de lo contrario U (k; n) no estara denido.
La mquina U simula entonces cualquiera otra mquina, y parar con una
entrada especca cuando la mquina simulada M lo haga, dejando en la
cinta el mismo cmputo que dejara M:
Sin prdida de generalidad, en la numeracin gdeliana M1 ; M2 ; : : : ; Mr ; : : :
siempre podemos incluir a gusto una primera mquina, M0 ; la cual computa
la funcin identidad: M0 (n) = n, y por tanto siempre para.
Supongamos por el absurdo que existiera una mquina, que llamaremos
P , capaz de computar la funcin:
P (n) =

n, si Mn (n) est denido.


0, si Mn (n) no est denido.

Sea I la mquina denida como aquella que computa la funcin I(n) =


U (P (n); n) + 1. Esta mquina tendr un cierto nmero de Gdel, digamos
N . Veamos qu ocurre cuando tratamos de computar I(N ) : si la mquina
MN ; computando con entrada inicial N; para, es decir, si el valor MN (N )
est denido, entonces P (N ) = N y por consiguiente I(N ) = U (N; N )+1 =
MN (N )+1. Pero la mquina N -sima es precisamente I, lo cual querra decir
que IN (N ) = MN (N ), y deduciramos entonces que MN (N ) = MN (N ) + 1,
una contradiccin.
Luego MN (N ) no podr estar denido, en cuyo caso P (N ) = 0. De aqu
que:
I(N ) = U (0; N ) + 1 = M0 (N ) + 1 = N + 1;

72

CHAPTER 4. MQUINAS DE TURING

lo cual nos dice que el entero I(N ) = MN (N ) s estara denido, de nuevo


un absurdo. Luego P no existe. Resumiendo esta discusin:
Theorem 4.3.1 (Alan Turing) No existe ninguna mquina de Turing que
compute la funcin P denida como:
P (n) =

4.4

n, si Mn (n) est denido.


0,si Mn (n) no est denido.

Problemas indecidibles de la Aritmtica de Peano

En (2.6.13) denimos T (N) como el conjunto de todas las sentencias en el


lenguaje de la Aritmtica de Peano, AP, LAP = f0; 1; ; +; sg que son vlidas
en N; el modelo estndar de AP: Veamos que no existe ninguna mquina de
Turing capaz de decidir si una sentencia cualquiera de AP pertenece a T (N).
Para ello usaremos el siguiente resultado: existe una frmula T (x; y; z) de
AP con la propiedad de que N j= T (m; n; k) si y solo si la mquina Mm ; con
la entrada inicial que consiste de n + 1 unos consecutivos, se detiene en a lo
sumo k pasos ([14]).
Como vimos en la Observacin 4.2.1, jado un entero positivo k, el problema de saber si la mquina Mm se detiene en un nmero de pasos k es
siempre soluble de manera algortmica. De aqu la funcin (m; n; k) cuyos
valores son 1 o 0, dependiendo de si el valor Mm (n) est o no denido,
sea computable (recursiva primitiva) lo cual implica la existencia de una
frmula T con estas propiedades ([14]). El problema insoluble radica en
determinar para cualquier par de enteros no negativos m0 ; n0 si la frmula
9sT (m0 ; n0 ; s) se satisface o no en N, lo cual es equivalente a determinar si
la mquina Mm0 , computando con entrada n0 eventualmente para, lo cual
exige determinar si N j= T (m0 ; n0 ; k) para innitos valores de k!
Theorem 4.4.1 No existe ningn algoritmo para determinar si para cualquier
sentencia particular F de AP se da que N j= F .
Prueba. Si dicho mecanismo algortmico existiera podramos determinar
para cualquier par de enteros m; n la validez de N j= 9sT (m; n; s); y por
consiguiente podramos saber si Mm (n) est denido, lo cual proporcionara
una solucin algortmica para el problema de la parada, en contradiccin
con el teorema de Turing.

4.5. EL ENTSCHEIDUNGSPROBLEM

4.5

73

El Entscheidungsproblem

El Entscheidungsproblem, o problema de la decisin, en espaol, pregunta


por la existencia de un algoritmo capaz de decidir el problema de la validez
en el Clculo de Predicados. La pregunta, conocida como " el sueo de
Leibniz", se refera originalmente a la posibilidad de construir una mquina
capaz de manipular smbolos para determinar si una sentencia particular de
las matemticas es o no un teorema.
El planteamiento preciso de esta pregunta se debe a David Hilbert y a
Wilhelm Ackermann, y data de 1928. Una respuesta negativa al Entscheidungsproblem fue dada por Alonzo Church, en 1936, y de manera independiente por Alan Turing, en ese mismo ao. Church, apoyndose en el trabajo
previo de Stephen Kleene, demostr que no existe ninguna funcin recursiva
que decida para dos expresiones del llamado -Clculo de Church si estas
son equivalentes o no. De otro lado, Turing redujo el problema a uno equivalente a la parada de una mquina de Turing, modelo de computacin que
a diferencia del -Clculo es mucho ms fcil de imaginar.
Recordemos que una sentencia de un Clculo de Predicados es lgicamente vlida, es decir, vlida en todos los modelos, si y solo si se deduce
de los axiomas lgicos. Fijemos un clculo de predicados cuyo lenguaje LE
consistir de contables smbolos binarios de relacin Qi ( ; ), un smbolo
de relacin de grado dos R( ; ); el smbolo de la relacin <, la constante
0 y el smbolo unario de funcin, sucesor, S( ): Cada mquina de Turing T
proporcionar una interpretacin para LE , que denotaremos por T ; la cual
se construye de la siguiente manera:
1. En primer lugar, el dominio de

sern los nmeros enteros Z.

2. Las interpretaciones de < y de la funcin sucesor S sern las interpretaciones estndar: m < n si el entero m es menor que n; y S(n) = n + 1.
La interpretacin de la constante 0 sera, por supuesto, el entero cero.
3. Imaginaremos que la cinta de T ha sido numerada con los nmeros
enteros. La casilla numerada con 0 ser la casilla donde la mquina
se encuentra en su posicin inicial. Las casillas a la izquierda estarn
numeradas con nmeros negativos, y a la derecha con enteros positivos:

74

CHAPTER 4. MQUINAS DE TURING


Supondremos que las instrucciones de T se ejecutan de manera discreta, en instantes de tiempo t = 0; 1; 2; : : :. Por supuesto, el instante
t = 0 corresponder a momento cuando se ejecuta la primera instruccin q1 1
: Cada uno de los predicados Qi y Ei se interpretarn
como sigue: diremos que T j= Qi (t; x) si en el instante t la cabeza
lectora de la mquina se encuentra en el estado qi ; y escudriando la
casilla x. Diremos que T j= R(t; x; ") si en el instante t; y en la casilla
x; aparece escrito el smbolo ", donde " = 0 o 1:

Para cada n > 0 construiremos una sentencia In , un conjunto nito de


sentencias (que dependen de T ) T = fA1;T ; : : : ; AN;T g y una sentencia PT
con las siguientes propiedades:
1.

T j= In si en la cinta de T hay escritos inicialmente n unos consecutivos:


0 1
1 0
(4.5)
q1

2.

^ AN;T ^ In =) PT si y solo si la mquina T para


T j= A1;T ^
cuando comienza a computar con dicha entrada.

Unha vez construidas estas frmulas queda claro que el problema de


determinar en un Clculo de Predicados (en este caso particular en LE ) si
una frmula cualquiera es lgicamente (vlida en cualquier interpretacin)
es imposible de resolver, pues con ello se estara resolviendo el problema de
la parada. De manera precisa:
Theorem 4.5.1 Sea LE el clculo de predicados cuyo lenguaje est dado
por LE = f0; S; <; R; Q1 ; : : : ; Qn ; : : :g. Denotemos por A el conjunto de
axiomas lgicos dado en la Seccin 2.4. Entonces no existe ningn algoritmo
que permita decidir para cualquier sentencia F en LE si P es un teorema,
es decir, si A ` F:
Prueba. El Teorema de Completez de Gdel nos dice que A ` F si y solo
si F es vlida en cualquier interpretacin de LE . Luego, si existiera una
algoritmo para determinar si A ` F entonces existira un algoritmo para
determinar si F es vlida en cualquier interpretacin de LE . En particular,
para cada mquina T podramos saber si A1;T ^
^ AN;T ^ In =) PT
es universalmente vlida, es decir, vlida en cualquier interpretacin. En
particular, podramos saber de manera algortmica si T j= A1;T ^
^
AN;T ^ In =) PT , que, como ya observamos, resolvera el problema de la
parada, lo cual es imposible.
Una vez jada la mquina T , las sentencias de T sern de tres tipos:

4.5. EL ENTSCHEIDUNGSPROBLEM

75

1. Tipo General
G1 8x9z(x = Sz)

G2 8x8y8z(z = Sx ^ z = Sy =) x = y)
G3 8x8y8z(x < y ^ y < z =) x < z)
G4 8x8y(y = Sx =) x < y)
G5 8x8y(x < y =) x 6= y)

Estas frmulas cerradas describen las propiedades bsicas que esperamos tengan la funcin sucesor y la relacin <, una vez las
interpretemos en Z:

2. Especcas de la mquina T
T1 Para cada instruccin qi sj qm sk de T introducimos la siguiente
sentencia:
8t8x8y[Qi (t; x)^R(t; x; sj ) =) Qm (St; x)^R(St; x; sk )^W (t; y)];
con W (t; x) : (y 6= x) =) V (t; y), donde
V (t; x) : [R(t; y; 0) =) R(St; y; 0)] ^ [R(t; y; 1) =) R(St; y; 1)]:
Esta sentencia arma lo siguiente: si en el instante t la mquina
se encuentra en estado interno qi , examinando la casilla numerada por el entero x, y escaneando el smbolo sj , entonces, en el
instante St (instante t + 1) estar en el estado interno qm escudriando la casilla numerada por x, la cual estar ocupada ahora
por el smbolo sk . Adems, cualquiera otra casilla (numerada con
y 6= x) permanecer inalterada.

T2 Para cada instruccin de la forma qi sj qm d, introducimos la sentencia:


8t8x8y[Qi (t; x) ^ R(t; x; sj ) =) Qm (St; Sx) ^ V (t; y)]:

Esta frmula nos dice que si en el instante t la mquina se encuentra en el estado interno qi , examinando la casilla numerada por
x, en la cual aparece el smbolo sj , entonces en el instante t + 1 la
mquina se encontrar en la casilla x + 1; y en el estado interno
qm . Adems, los smbolos de todas las casillas permanecern inalterados.

76

CHAPTER 4. MQUINAS DE TURING


T3 De manera similar, para cada instruccin qi sj qm i introducimos la
frmula
8t8x8y[Qi (t; Sx) ^ R(t; Sx; sj ) =) Qm (St; x) ^ V (t; y)];
cuya interpretacin ser la anloga a aquella de la frmula anterior, pero para un movimiento de la cabeza lectora, esta vez hacia
la izquierda.
3. La sentencia In :
Para cada n > 0 denotemos tambin por n al trmino de LE S
donde la funcin sucesor ha sido iterada n veces. Denamos
In = Q1 (0; 0) ^ R(0; 0; 1) ^
donde

S0,

^ R(0; n; 1) ^ ;

es la sentencia:
: (8y)[(y 6= 0 ^ y 6= 1

y 6= n) =) R(0; y; 0)]:

La frmula In nos dice que en el instante t = 0 la cabeza lectora


se encuentra en el estado interno q1 , escudriando la casilla 0-sima,
en la cual aparece escrito el smbolo 1. En la primera casilla (x = 1)
deber estar escrito el smbolo 1, e igualmente para las casillas segunda,
tercera, hasta llegar as a la n-sima casilla. La sentencia arma que
para en toda casilla diferente de las n primeras (y 6= 0 ^ y 6= 1 y 6=
n) deber estar escrito el smbolo 0. En conclusin, la sentencia In
describe el estado inicial de la mquina T .
4. La sentencia de parada, PT :
En la observacin 4.2.1 vimos que la mquina T se detendr cuando
en algn momento t, escaneando la casilla numerada por el entero
x, donde aparezca escrito sj su instruccin correspondiente sea de la
forma qi sj qm p. Tambin se detendr cuando no exista ninguna instruccin de T que comience por la pareja qi sj . Listemos entonces todas
las posibles (nitas) parejas (qi ; sj ) para las cuales una instruccin de
la forma qi sj p sea una de las instrucciones de T , o tales que no
exista ninguna instruccin de T de la forma qi sj
: Denotemos este
conjunto de, digamos r parejas, por H : H = f(qi1 ; sj1 ); : : : ; (qir sjr )g:
Es claro entonces que T se detendr si y solo si en alguna momento t
la mquina se encuentra en uno de los estados qiv ; y si el smbolo sjv
aparece escrito en alguna casilla x, para alguna parejas (qiv ; sjv ) 2 H.

4.5. EL ENTSCHEIDUNGSPROBLEM

77

Es decir, la mquina T se detendr sii la siguiente frmula se satisface


en T :
PT : 9t9x[_rv=1 Qqiv (t; x) ^ R(t; x; sjv )]:
Es solo cuestin de paciencia vericar que, dada una mquina cualquiera
T , si T denota la interpretacin de LE asociada a T , entonces T j=
T . Las sentencias de tipo general se satisfacen de hecho en cualquiera
de estas interpretaciones (es decir, en cualquier interpretacin T ; sin
importar de cul maquina provenga). Las sentencias T1 ; T2 T3 son
vlidas en T precisamente porque corresponden a la descripcin particular de T . Para un entero dado n, T j= In ser cierta sii la conguracin inicial de T corresponde a una ristra de n unos consecutivos
(4.5). Debemos ver que:
Proposicin 4.5.2 La mquina T para con una entrada inicial dada por
(4.5) si y solo si se cumple que si T [ fIn g se satisface en T ; entonces
tambin se satisface PT :
Prueba. Supongamos que cada vez que se satisfaga T y In en T tambin se satisface PT . Ello quiere decir que existen enteros t y x con T j=
Qqiv (t; x) ^ R(t; x; sjv ), para una pareja (qiv ; sjv ) en H. Pero esto signica
que en el instante t, y escudriando la casilla numerada por x, la mquina
T , la cual comenz a computar inicialmente en el estado (4.5), se encuentra
ahora en el estado interno qiv escudriando el smbolo sjv . Como (qiv ; sjv ) en
H, es porque, o bien una de las instrucciones de T es de la forma qiv sjv p;
o bien no existe ninguna instruccin de T que comience por qiv sjv . Es claro
que en ambos casos T se detendr en este preciso instante t:
Recprocamente, supongamos que T se detiene, y veamos que si T y
In se satisfacen en T entonces T j= PT . Si suponemos que T se detiene,
al seguir paso a paso su cmputo podremos encontrar un instante t y un
entero x tales que: la mquina T estar escudriando la casilla numerada
por x. Como para en este instante, su entado interno ql , as como el smbolo
que aparece en dicha casilla sl debern corresponder a una pareja (ql ; sl ) en
H. De aqu se sigue que T j= Qql (t; x) ^ R(t; x; sl ) y en consecuencia que
T j= 9t9x[Qql (t; x) ^ R(t; x; sl ). Es decir, T j= PT . Los detalles de este
ltimo paso de la demostracin se pueden consultar en [3].

78

CHAPTER 4. MQUINAS DE TURING

Chapter 5

Dcimo problema de Hilbert


XXXXX

79

80

CHAPTER 5. DCIMO PROBLEMA DE HILBERT

Chapter 6

Introduccin a la Teora de
Modelos
XXXXX

81

82

CHAPTER 6. INTRODUCCIN A LA TEORA DE MODELOS

Chapter 7

Algunas aplicaciones de la
Teora de Modelos al Algebra
y a la Geometra Algebraica.
XXXXX

83

84CHAPTER 7. ALGUNAS APLICACIONES DE LA TEORA DE MODELOS AL ALGEBRA Y

Chapter 8

Principios de Transfer y
ultraproductos

85

86CHAPTER 8. PRINCIPIOS DE TRANSFER Y ULTRAPRODUCTOS

Bibliography
[1] Mendelson, E. (2009). Introduction to mathematical logic. CRC press.
[2] Enderton, H., & Enderton, H. B. (2001). A mathematical introduction
to logic. Academic press.
[3] Boolos, G., Burgess, J. P., & Jerey, R. C. (2002). Computability and
logic. Cambridge university press.
[4] Wolf, R. S. (2005). A tour through mathematical logic (Vol. 30). MAA.
[5] Marker, D. (2002). Model theory: an introduction. Springer Science &
Business Media.
[6] Mati iasevich, I. V. (1993). Hilberts tenth problem. MIT press.
[7] Schoutens, H. (2010). The use of ultraproducts in commutative algebra
(Vol. 1999). Springer Science & Business Media.
[8] A computer-checked proof of the Four Colour
https://en.wikipedia.org/wiki/Four_color_theorem.

Theorem,

[9] Gdel K., ber formal unentscheidbare Stze der Principia mathematica und verwandter Systeme , I, Monatsh. Math. Phys. 38, 173-198,
1931.
[10] Goldstern, M., & Judah, H. (2000). The incompleteness phenomenon:
a new course in mathematical logic.
[11] Rad, T., 1962, On Non-computable functions,Bell System Technical
Journal, 41 (May): 877884.
[12] Turing, A.M., 1937a, On Computable Numbers, With an Application to the Entscheidungsproblem, Proceedings of the London Mathematical Society, s2-42 (1): 230265; correction ibid., (1938) s2-43 (1):
87

88

BIBLIOGRAPHY
544546. [Note: This paper was received May 28, 1936 and read to
the Society on November 12, 1936, but wasnt actually published until
1937.]

[13] Martin Davis, Computability and Unsolvability.


[14] Shoeneld, J. R. (1967). Mathematical logic (Vol. 21). Reading:
Addison-Wesley.

También podría gustarte