Escolar Documentos
Profissional Documentos
Cultura Documentos
LENGUAJE FORMAL
Las reglas de derivacin que se han introducido en el captulo precedente, son vli-
das para cualquier frmula que podamos formar con el lenguaje de la proposicional.
Aunque claro, lo nico que sabemos sobre las posibles frmulas del lenguaje es que,
a partir de los tomos proposicionales podemos usar conectivos lgicos para crear
frmulas lgicas ms complejas. Eso ha sido intencional, pues el objetivo del captulo
anterior era entender la mecnica de las reglas de la deduccin natural. Es importan-
te recordar la validez de estos patrones de razonamiento, antes de abordar la lgica
proposicional como un lenguaje formal.
Consideren este caso, una aplicacin de la regla de prueba ( ! e):
1. p ! q premisa
2. p premisa
3. q ( ! e) 1, 2
1. p _ r ! (r ! p) premisa
2. p _ r premisa
3. r ! p
Esta es la razn por la cual escribimos las reglas de prueba como esquemas de
razonamiento que usan smbolos griegos que pueden ser substituidos por frmulas
genricas.
Sin embargo, ahora debemos precisar lo que queremos decir por cualquier frmu-
la. Lo primero que necesitamos es una fuente no acotada de tomos proposicionales:
p, q, r, . . . o p 1 , p 2 , p 3 , . . . . La cuestin del si tal conjunto es infinito no debera
preocuparnos. El carcter no acotado de la fuente es una forma de confrontar que
si bien, normalmente necesitaremos una gran cantidad finita de proposiciones para
describir un programa de computadora, no sabemos de antemano cuantos vamos a
necesitar. Lo mismo sucede con los lenguajes naturales, como el espaol. La cantidad
de frases que puedo expresar en espaol es potencialmente infinita. Basta escuchar
a los presentadores de noticias de la televisin para saber que usamos una cantidad
potencialmente finita de ellas.
Que las frmulas de nuestra lgica proposicional deben ser por tanto cadenas de ca-
racteres formadas a partir del alfabeto {p, q, r, . . . } [ {p 1 , p 2 , p 3 , . . . } [ {, ^ , _ , !
45
46
Definicin 4.1. Las frmulas bien formadas (fbf) de la lgica proposicional son aquellas, y
solo aquelas, que se obtienen aplicando finitamente las reglas de construccin siguientes:
Este es el tipo de reglas que le gusta a las computadoras. Una frmula es bien for-
mada si es posible deducir tal cosa con las reglas anteriores. De hecho, las definiciones
inductivas de las frmulas bien formadas de un lenguaje son tan comunes que sue-
len expresarse en un formalismo diseado ad hoc para este propsito, las gramticas
en notacin Backus-Naur1 (BNF). La definicin anterior se expresa de manera ms
compacta como una gramtica BNF:
Los parntesis en estas expresiones suelen confundirnos un poco, aunque son nece-
sarios pues reflejan el hecho de que las frmulas tienen una estructura de rbol, somo
se muestra en la figura 4.1. Observen que los parntesis se vuelven innecesarios en esa
estructura, pero son necesarios sin linearizamos el rbol en un cadena de caracteres.
Probablemente la forma ms fcil de saber si una expresin es una frmula bien
formada sea analizando su rbol sintctico. En la figura 4.1 podemos observar que
la raz del rbol es una implicacin, de manera que la expresin en cuestin es, a
1 John Backus nos dio otros regalitos: Fortran, Algol y los principios de la programacin funcional expre-
sados en su lenguaje FP.
47
34 1 Propositional logic
q p
p q
Figure 1.3.
Figura 4.1: A parse
El rbol treederepresenting
sintctico a formada
la frmula bien well-formed formula.
del ejemplo 4.1.
principle to the
su nivel ms alto conclusion (p Ahora
una implicacin. (q (r))), inferring
basta probar that it is que
recursivamente indeed well-
los sub-
rboles izquierdo y derecho son tambin frmulas
formed. In summary, the formula in (1.4) is well-formed. bien formadas. Observen que las
frmulas bien formadas en el rbol o bien tienen como
For us humans, dealing with brackets is a tedious task. The reason raz un tomo proposicional;
o un operador con el nmero adecuado de operandos. Otro ejemplo de definicin
we need them is that formulas really have a tree-like structure, although
inductiva.
we Pensar
prefer en
to trminos
represent dethem
rboles insintcticos
a linear way.
ayudaIn Figure 1.3
a visualizar you can
algunos see the
conceptos
parse 7
treede of the well-formed formula in el(1.4). Note
estndar la lgica proposicional, por ejemplo, concepto dehow bracketsDada
sub-frmula. become
la
expresin del in
unnecessary ejemplo 4.1, sustree
this parse sub-frmulas
since theson aquellas
paths andquethecorresponden
branching astructure
los sub-
ofrboles de laremove
this tree figura 4.1.
anyEsto incluyeambiguity
possible las hojas p yinqinterpreting
que ocurren dos. veces; as como
In representing
r.asLuego
a linear string, the branching structure of the tree is retained como
(p) y ((p) ^ q) en el sub-rbol izquierdo de la implicacin. As by the
(r), (p _ (r)) y ((p ^ (q _ (p)))) en el sub-rbol derecho de la implicacin.
insertion of brackets as done in the definition of well-formed formulas.
El rbol entero es un sub-rbol de si mismo. As que las nueve sub-frmulas de la
So how would you go about showing that a string of symbols is not well-
expresin son:
formed? At first sight, this is a bit trickier since we somehow have to make
surethatp could not have been obtained by any sequence of construction
rules. Let us look at the formula ()() pq ! from above. We can decide
q
this matter
r
by being very observant. The string ()() pq ! contains )
and cannot be the rightmost symbol of a well-formed formula (check all
(p)
the rules to verify this claim!); but the only time we can put a ) to the right
of something
((p) ^isq)if that something is a well-formed formula (again, check all
the rules to see that this is so). Thus, ()() pq ! is not well-formed.
(r)
Probably the easiest way to verify whether some formula is well-formed
is by trying
(p _ (r))to draw its parse tree. In this way, you can verify that the
((p ^ (q _ (p))))
7 We will use this name without explaining it any further and are confident that you will under-
stand its meaning through the examples.
48
Ejemplo 4.2. Consideren el rbol de la figura 4.2 Porqu representa una frmula bien for-
mada? Todas sus hojas son tomos proposicionales: p dos veces; q y r una. Todos sus nodos
internos son operadores lgicos ( dos veces, ^ , _ y ! ) y el nmero de sus sub-rboles es
el correcto en todos los casos (un sub-rbol para la negacin, dos para los dems operadores).
La expresin linearizada del rbol puede obtenerse recorriendo el rbol de manera en orden2 :
(((p _ (q ! (p)))) _ r).
36 1 Propositional logic
Ejemplo 4.3. El rbol de la figura 4.3 no representa una frmula bien formada. Hay dos
The tree in Figure 1.21 on page 82, however, does not represent a well-
razones para ello: primero, las hojas ^ y , lo cual puede arreglarse diciendo que el rbol est
formed formula
parcialmente for two
construdo; reasons.
segundo, First, the
y definitivo, leafpara(and
el nodo a similar
el tomo argument
proposicional p no es
applies to the leaf ), the
una hoja, es un nodo interno. left subtree of the node !, is not a propositional
atom. This could be fixed by saying that we decided to leave the left and
right subtree of that node unspecified and that we are willing to provide
those now. However, the second reason is fatal. The p node is not a leaf
. it
since has a subtree, the node . This cannot make sense if we think of
the entire tree as some logical formula. So this tree does not represent a
En el captulo anterior desarrollamos un clculo del razonamiento que nos permite
well-formed logical formula.
verificar si las inferencias de la forma 1, 2, . . . , n ` son vlidas, lo cual quiere
decir que a partir de las premisas 1 , 2, . . . , n podemos concluir . En esta sec-
cin daremos cuenta de otra faceta de la relacin entre las premisas y la consecuencia
* 5. For the parse tree in Figure 1.22 find the logical formula it represents.
de las inferencias. Para contrastar, denotaremos esta relacin como:
6. For the trees below, find their linear representations and check whether they
correspond 1 , to
2 , . well-formed
. . , n |= formulas:
(a) Esta
the tree in Figure
relacin se basa en los1.10 onvalores
page 44
de verdad de las proposiciones atmicas que
ocurren
(b) the treeen las
inpremisas
Figure 1.23. y la conclusin; as como la forma en que los operadores lgi-
cos manipulan
* 7. Draw a parse tree estosthatvalores de verdad.
represents anPero Qu esformula
ill-formed un valorsuch
de verdad?
that Recuerden
(a) one can extend it by adding one or several subtrees to obtain ase tree
que los enunciados declarativos que representan las proposiciones atmicas corres-
that
ponden con la realidad, decimos que son verdaderos; mientras que cuando este no es
represents a well-formed formula;
el caso decimos que son falsos.
(b) Si
it combinamos
is inherently ill-formed; i.e. any extension of it could not correspond to a
los enunciados declarativos p y q con un conectivo lgico como ^ ,
well-formed formula.
entonces el valor de verdad de p ^ q est determinado por tres aspectos: el valor
8. Determine,
de verdad de byp,trying
el valortodedraw
verdadparse
de qtrees, which of de
y el significado the^following formulas
. El significado de la are
conjuncin captura la observacin de que p ^ q es verdadera ssi p y q son ambas
well-formed:
verdaderas;
(a) p (p deq) otra!forma(r !ps)^ q es falsa. De forma que, desde la perspectiva de ^
todo lo que
(b) p (p q s) ! debemos saber
(r !es s)
si p y q son verdaderos. No es necesario saber que es
lo que dicen p y q acerca del mundo. Esto tambin es el caso para el resto de los
(c) p (p s) ! (r ! s).
operadores lgicos y es la razn por la cual podemos computar el valor de verdad
Among the ill-formed
de una expresin con solo formulas
saber elabove
valor dewhich ones,
verdad and
de las in how many
proposiciones ways,que
atmicas could
you fix en
ocurren by ella.
the Formalicemos
insertion of brackets only?
estos conceptos:
Definicin 4.2. El conjunto de valores de verdad contiene dos elementos T y F donde T
representa verdadero, y F falso.
Definicin 4.3. Un modelo o valuacin de una frmula es una asignacin de valores de
verdad a1.4
Exercises las proposiciones atmicas que ocurren en .
* 1. Construct theLatruth
Ejemplo 4.4. table
funcin for pT 7 !
que asigna q and
q y Fverify
7 ! p esthat it coincides
un modelo with pthe
de la frmula _ one
q. for
p ! q. (By coincide we mean that the respective columns of T and F values are
Podemos pensar que el significado de la conjuncin es una funcin de dos argumen-
the
tos.same.)
Cada argumento es un valor de verdad y el resultado de la funcin es tambin
2. Compute the complete truth table of the formula
* (a) ((p ! q) ! p) ! p
(b) represented by the parse tree in Figure 1.3 on page 34
50
un valor de verdad. Podemos especificar esto en una tabla, llamada tabla de verdad
de la conjuncin (Ver cuadro 3).
^
T T T
T F F
F T F
F F F
Cuadro 3: La tabla de verdad de la conjuncin ( ^ ).
_
T T T
T F T
F T T
F F F
Cuadro 4: La tabla de verdad de la disyuncin ( _ ).
!
T T T
T F F
F T T
F F T
Cuadro 5: La tabla de verdad de la implicacin ( ! ).
Observen que, como cada argumento puede tener dos valores de verdad, el nmero
de combinaciones posibles es 2n donde n es el nmero de argumentos del operador.
Por ejemplo, ^ tiene 22 = 4 casos a considerar, los que se listan en la tabla de
verdad del cuadro 3. Pero ^ ^ tendra 23 = 8 casos a considerar.
La semntica de la implicacin (Cuadro 5) es poco intuitiva. Piensen en ella como
una relacin que preserva la verdad. Es evidente que T ! F no preserva la verdad
puesto que inferimos algo que es falso a partir de algo que es verdadero. Por ello,
la entrada correspondiente en la tabla de verdad de la implicacin da como salida
falso. Tambin es evidente que T ! T preserva la verdad; pero los casos donde el
primer argumento tiene valor de verdad F tambin lo hacen, porque no tienen verdad
a preservar dado que el supuesto de la implicacin es falso.
Si la semntica de la implicacin sigue siendo incomoda, consideren que, al menos
en cuanto a los valores de verdad se refiere, la expresin ! es una abreviatura
de _ . Las tablas de verdad pueden usarse para probar que cuando la primer
expresin mapea a verdadero, tambin lo hace la segunda. Esto quiere decir que
ambas expresiones son semnticamente equivalentes. Aunque claro, las reglas de la
deduccin natural tratan a ambas frmulas de manera muy diferente, dado que su
sintaxis es bien diferente.
. 51
T F
F T
Cuadro 6: La tabla de verdad de la negacin ().
F F
q F p F
F T
p T q F
r T
Figure
Figura 1.7.
4.4: La The evaluation
evaluacin of a logical
de una frmula lgica a formula
partir de under
su rbola sintctico,
given valuation.
dado un mo-
delo inicial.
p q p q p ! q q p (p ! q) ! (q
Ejemplo 4.6. Construya la tabla de verdad de la expresin (p ! q) ! (q _ p):
p)
T T F F F T T
T F F T T F F
F T T F T T T
F F T T T T T
Figure 1.8. An example of a truth table for a more complex logical formula.
p q p q p ! q q _ p (p ! q) ! (q _ p)
T T F F F T T
T F F T T F F
F T T F T T T
F F T T T T T
.
A la edad de ocho aos, Gauss se aburra en clase y no prestaba la atencin debida a
su profesor. Como es de imaginarse, al pequeo se le impuso un castigo que consista
en sumar los nmeros del uno al cien. El rumor dice que Gauss respondi 5050 a los
pocos segundos de haber sido castigado, para sorpresa de su profesor Cmo logr
Gauss librarse tan fcilmente del castigo? Quiz saba que:
n(n + 1)
1+2+3+4++n = (4.2)
2
de forma que:
100(101)
1 + 2 + 3 + 4 + + 100 =
2
= 5050
La induccin matemtica nos permite probar que la ecuacin 4.2 se sostiene para
valores arbitrarios de n. De manera ms general, podemos decir que nos permite
probar que todo nmero natural satisface cierta propiedad. Supongamos que tenemos
una propiedad M que creemos es verdadera para todo nmero natural. Escribimos
M(5) para denotar que la propiedad es verdadera para 5. Supongamos ahora que
sabemos lo siguiente de M:
Definicin 4.4. El principio de induccin matemtica dice que, basados en estas dos piezas de
informacin, todo nmero natural n tiene la propiedad M(n). Al hecho de suponer M(n) en
el paso inductivo, se le conoce como hiptesis de la induccin.
Porqu tiene sentido este principio? Tomemos cualquier nmero natural k. Si k
es igual a 1, entonces usando el caso base podemos probar que k tienen la propie-
dad M(1). En cualquier otro caso, podemos usar el paso inductivo aplicado a n = 1
para inferir que 2 = 1 + 1 tiene la propiedad M(2). Podemos hacer esto usando la
eliminacin de la implicacin ( ! e) puesto que sabemos que 1 tiene la propiedad
en cuestin. Igualmente podemos probar M(3) y as hasta llegar a k. Regresemos al
ejemplo de Gauss.
. 53
Paso inductivo: Asumamos que LIEn = LDEn . Recuerden que este supuesto
es llamado hiptesis inductiva; es la gua de nuestro argumento. Necesitamos
probar que LIEn+1 = LDEn+1 , esto es, que 1 + 2 + 3 + 4 + + (n + 1) es igual
que (n + 1)(((n + 1) + 1)/2). La clave est en observar que la suma de 1 + 2 +
3 + 4 + + (n + 1) no es otra cosa que la suma de dos sumandos 1 + 2 + 3 +
4 + + n y (n + 1); y que el primer sumando es nuestra hiptesis inductiva, de
forma que:
LIEn+1 = 1 + 2 + 3 + 4 + + n + (n + 1)
= LIEn + (n + 1) reagrupando la suma
= LDEn + (n + 1) por la hiptesis inductiva
n(n + 1)
= + (n + 1)
2
n(n + 1) 2(n + 1)
= +
2 2
(n + 2)(n + 1)
=
2
(n + 1)(n + 2)
=
2
(n + 1)((n + 1) + 1)
=
2
= LDEn+1
De forma que, como hemos probado el caso base y el paso inductivo, podemos
inferir matemticamente que todo nmero natural n satisface el teorema anterior.
Existe una variante de induccin matemtica en la que la hiptesis inductiva para
probar M(n + 1) no es solo M(n), sino la conjuncin M(1) ^ M(2) ^ . . . ^ M(n). En
esta variante, llamada cursos-de-valores, no es necesario tener un caso base explcito,
todo puede hacerse en el paso inductivo.
Cmo puede funcionar la induccin sin un caso base? La respuesta es que el caso
base se incluye implicitamente en el paso inductivo. Consideren el caso de n = 3: el
paso inductivo es M(1) ^ M(2) ^ M(3) ! M(4). Ahora consideren el caso n = 1
entonces el paso inductivo es M(1) ! M(2) Qu sucede cuando el caso es n = 0? En
ese caso no hay frmulas a la izquierda de la implicacin, por lo que se debe probar
M(1) a partir de nada. Veamos algunos ejemplos.
En las Ciencias de la Computacin solemos trabajar con estructuras finitas de algn
tipo: estructuras de datos, programas, archivos, etc. En muchas ocasiones debemos
54
probar que toda ocurrencia de una estructura de datos tiene cierta propiedad. Por
ejemplo, la definicin 4.1 de frmula bien formada tiene la propiedad de que el n-
mero de parntesis que abren es igual al de los parntesis que cierran. Podemos usar
la induccin matemtica en el dominio de los nmeros naturales para probar esto.
Para tener xito, debemos ligar de alguna forma las frmulas bien formadas con los
nmeros naturales.
Definicin 4.5. Dada una frmula bien formada , definimos su altura como 1 ms la
longitud de la rama ms larga del rbol.
Por ejemplo, la rama ms larga del rbol que se muestra en la figura 4.5 es de lon-
gitud 4 por lo que su altura es 5. Observen que la altura de un tomo proposicional
es 1 + 0 = 1. Puesto que toda frmula bien formada tiene una altura finita, podemos
demostrar enunciados sobre las frmulas bien formadas haciendo induccin mate-
mtica sobre su altura. Este truco suele conocerse como induccin estructural, una
importante tcnica de razonamiento de Ciencias de la Computacin. Usando la nocin
de altura de un rbol sintctico nos damos cuenta de que la induccin estructural es
solo un caso especial de la induccin por cursos-de-valores.
44 1 Propositional logic
q p
p r q
.
Las reglas de la deduccin natural permiten desarrollar rigurosos hilos de argumen-
tacin a travs de los cuales conclumos que asumiendo otras proposiciones como
1 , 2 , . . . , n . En ese caso decimos que la inferencia 1 , 2 , . . . , n ` es vlida Te-
nemos evidencia de que las reglas son todas correctas en el sentido de que preserven
la verdad computada con nuestras semntica basada en tablas de verdad?
Dada una prueba de 1 , 2 , . . . , n ` Es concebible que exista un modelo donde
es falso aunque las proposiciones 1 , 2 , . . . , n sean verdaderas? Afortunadamen-
te este no es el caso y en esta seccin lo demostraremos formalmente. Supongamos
que tenemos una prueba en nuestro clculo de deduccin natural que establece que la
inferencia 1 , 2 , . . . , n ` es vlida. Necesitamos probar que para toda evaluacin
donde las proposiciones 1 , 2 , . . . , n son verdaderas, tambin lo es.
Definicin 4.6. Si, para todas las evaluaciones donde 1, 2, . . . , n son verdaderas,
tambin lo es, entonces decimos que:
1, 2, . . . , n |=
1. p^q premisa
2. p supuesto
3. q supuesto
4. p^q ( ^ i) 2, 3
5. r ( ! e) 1, 4
6. q ! r ( ! i) 3 - 5
7. p ! (q ! r) ( ! i) 2 - 6
Si eliminamos las dos ltimas lneas ya no tenemos una prueba, pues la caja ms
externa quedara sin cerrar. Sin embargo, podemos obtener una prueba removiendo
la ltima lnea y re-escribiendo el supuesto de la caja ms externa como una premisa:
1. p^q ! r premisa
2. p premisa
3. q premisa
4. p^q ( ^ i) 2, 3
5. r ( ! e) 1, 4
6. q ! r ( ! i) 3 - 5
1. premisa
puesto que todas las demas reglas involucran ms de una linea. Este es el ca-
so cuando n = 1 y 1 y son iguales a , es decir, la inferencia es ` .
Evidentemente si evalua a T , es el caso que |= .
1. 1 premisa
2. 2 premisa
..
.
n. n premisa
..
.
k. justificacin
Hay dos cosas que no sabemos en este punto. Primero, Qu est pasando en
los puntos suspensivos? Segundo, Cual fue la ltima regla aplicada? Es decir,
Cual fue la justificacin de la ltima lnea? El primer punto no es de nuestro in-
ters, es aqu que la induccin matemtica muestra su poder. El segundo punto
es donde todo el trabajo de esta prueba descansa. En genera, no hay una for-
ma simplede saber que regla fue aplicada a lo ltimo, por lo que necesaitamos
considerar todas las reglas:
1. Supongamos que la ltima regla es ( ^ i), entonces sabemos que tiene la
forma 1 ^ 2 y la justificacin de la lnea k hace referencia a dos lneas
precedentes que tienen a 1 y 2 respectivamente, como conclusiones. Su-
pongamos que esas lneas son k1 y k2 . Dado que k1 y k2 son menores que
k observamos que existen pruebas de las inferencias 1 , 2 , . . . , n ` 1 y
1 , 2 , . . . , n ` 2 con una longitud menor que k. Usando la hiptesis in-
ductiva concluimos que 1 , 2 , . . . , n |= 1 y 1 , 2 , . . . , n |= 2 . Estas
dos relaciones implican que 1 , 2 , . . . , n |= 1 ^ 2 .
2. Supongamos que la ltima relga es ( _ e), entonces debimos probar, asu-
miendo o adoptando la premisa de que alguna frmula 1 _ 2 en alguna
lnea k 0 < k que es referenciada por ( _ e) en la lnea k. Por lo tanto, te-
nemos una prueba ms corta de la inferencia 1 , 2 , . . . n ` 1 _ 2 ,
obtenida al convertir los supuestos de las cajas que se abren en la linea
k 0 en premisas. De fomra similar obtenemos pruebas de las inferencias
1 , 2 , . . . n , 1 ` y 1 , 2 , . . . n , 2 ` . Por la hiptesis inductiva
conclumos que 1 , 2 , . . . n , 1 |= y 1 , 2 , . . . n , 2 |= . Por lo que
1 , 2 , . . . n |= .
.
En esta seccin probaremos que las reglas de la deduccin natural de la lgica pro-
posicional son completas. Cuando es el caso que 1 , 2 , . . . , n |= , entonces existe
una prueba de deduccin natural para la inferencia 1 , 2 , . . . , n ` . Combinando
esto con el resultado anterior obtenemos que 1 , 2 , . . . , n ` es vlida, si y slo si
1 , 2 , . . . , n |= .
Esto nos da cierta libertad con respecto al mtodo que preferimos usar. El primer
mtodo involucra una bsqueda de prueba, que es la base del paradigma de la pro-
gramacin lgica. El segundo mtodo nos obliga a computar una tabla de verdad que
es exponencial en el nmero de proposiciones atmicas involucradas en una frmu-
la. Ambos mtodos son intratables en lo general, pero ciertas frmulas particulares
responden diferente a ellos.
El argumento que construiremos en esta seccin se da en tres pasos:
El primer paso y el tercero son bastante fciles, todo el trabajo real se concentra en
el segundo paso.
.. Paso 1
.. Paso 2
.. Paso 3