Interpretaciones, distinguibilidad Guido de Caso Martes 1ero de marzo de 2011 Ejercicio 1. Decidir si las siguientes interpretaciones son apropiadas para los siguientes lenguajes, en donde f es un sı́mbolo unario y g es binario: 1. C = {c}, F = {f, g}, P = {P, =}, UA = Q, cA = 23 , fA (a) = a a2 +1 , a PA b sii a ≤ b. gA (a, b) = a + b, 2. C = {c}, F = {f, g}, P = {P, =}, UB = cjto. de todas las listas de enteros, cB = [1, 2, 3, 4, 5, 6, 7], fB (l) = quedarse únicamente con las posiciones pares de l, gB (l1 , l2 ) = concatenar l1 con l2 , l1 PB l2 sii la longitud de l1 es menor o igual que la longitud de l2 . 3. C = ∅, F = {h}, P = {=}, UC = cjto. de todas las listas de enteros, hC (l) = longitud de l, Resolución. Para cada uno de los casos debemos revisar que a) la interpretación de cada constante pertenece al universo U elegido; b) la interpretación de cada función es total y tiene como imagen a elementos del universo U ; c) hay al menos un predicado. 1. Cumple c) trivialmente. La interpretación de c es un número racional, ası́ que se cumple a) también. Debemos ver que las funciones son totales y retornan elementos en UA . La función f sólo podrı́a indefinirse si el denominador fuese 0, sin embargo a2 + 1 ≥ 1. Por otra parte, si a es racional, entonces a2a+1 es racional. La función g es la suma de racionales, que es total y devuelve un racional. Por lo tanto también se cumple b). 2. La propiedad a) se cumple ya que [1, 2, 3, 4, 5, 6, 7] es un elemento de UB . La función fB se queda únicamente con las posiciones pares de una lista. Esa operación está definida sin importar la lista de enteros sobre la que la apliquemos (incluso para la lista vacı́a) y siempre retorna otra lista de enteros. La función gB es la concatenación de listas de enteros, que es total y devuelve otra lista de enteros. Por lo tanto se cumple la propiedad b). Finalmente, la propiedad c) también se cumple, ya que hay al menos un predicado. 1 3. Es similar al anterior. Las propiedades a) y c) son trivialmente ciertas. La función hC es total, ya que devuelve la longitud de la lista de enteros que recibe como parámetro. Sin embargo, el valor que retorna no es una lista de enteros, por lo tanto no pertenece al universo UC . Esta interpretación no cumple la propiedad b). Ejercicio 2. Decidir si las siguientes fórmulas son i) universalmente válidas, ii) válidas en alguna interpretación del ejercicio anterior, iii) satisfacibles, o iv) insatisfacibles. a) ∃x(f (x) = x) b) ∀x(P (x, f (x))) c) P (x, f (y)) Resolución. Antes que nada, usaremos la notación I, v |= φ para decir que una fórmula φ es verdadera (o válida) bajo la interpretación I y la valuación v (en la teórica se utiliza la notación I |= φ[v]). Usaremos la notación v[x 7→ a] para modificar una valuación v de la siguiente forma: ( a si y = x v[x 7→ a](y) = v(y) sino Finalmente, extenderemos la valuación v para que se pueda aplicar a otros términos que no sean necesariamente variables, tales como constantes y aplicaciones de funciones. En la teórica, se utiliza la notación ṽ para esta valuación extendida, pero como ésto se puede desprender del contexto, usaremos directamente v “a secas”. a) ∃x(f (x) = x) No parece ser universalmente válida ya que depende de qué interpretación tenga f . En particular, no es válida en una interpretación I donde el universo son los naturales y fI (n) = n + 1. Sea v una valuación cualquiera: I, v |= ∃x(f (x) = x) sii hay algún valor n en UI tal que I, v[x 7→ n] |= f (x) = x sii hay algún valor n en UI tal que v[x 7→ n](f (x)) = v[x 7→ n](x) sii hay algún valor n en UI tal que fI (v[x 7→ n](x)) = v[x 7→ n](x) sii hay algún valor n en UI tal que fI (n) = n sii hay algún valor n en UI tal que n + 1 = n Como esto último es imposible de conseguir, concluimos que la fórmula no es válida en la estructura I y por ende tampoco es universalmente válida. Veamos ahora si la fórmula vale en la estructura A del ejercicio anterior. Sea v una valuación cualquiera: A, v |= ∃x(f (x) = x) sii hay algún valor a en UA tal que A, v[x 7→ a] |= f (x) = x sii hay algún valor a en UA tal que v[x 7→ a](f (x)) = v[x 7→ a](x) sii hay algún valor a en UA tal que fA (v[x 7→ a](x)) = v[x 7→ a](x) sii hay algún valor a en UA tal que fA (a) = a a =a hay algún valor a en UA tal que 2 a +1 sii 2 Observar que a = 0 hace valer la igualdad, por lo tanto la fórmula es válida en la estructura A. Es decir que, sin importar qué valuación v le demos a las variables libres, siempre la fórmula será verdadera. Veamos ahora si vale en la estructura B del ejercicio anterior. B, v |= ∃x(f (x) = x) sii hay algún valor l en UB tal que B, v[x 7→ l] |= f (x) = x sii hay algún valor l en UB tal que v[x 7→ l](f (x)) = v[x 7→ l](x) sii hay algún valor l en UB tal que fB (v[x 7→ l](x)) = v[x 7→ l](x) sii hay algún valor l en UB tal que fB (l) = l fB (l) es quedarse con los elementos en las posiciones pares de l. Si l es vacı́a, fB (l) también lo es. Por ende la fórmula es válida en la estructura B. b) ∀x(P (x, f (x))) No parece ser una fórmula universalmente válida, ya que depende de qué comportamiento tengan P y f en la interpretación. Veamos qué sucede en la interpretación A. Tomemos una valuación v cualquiera: A, v |= ∀x(P (x, f (x))) sii todo valor a en UA cumple A, v[x 7→ a] |= P (x, f (x)) sii todo valor a en UA cumple v[x 7→ a](x) PA v[x 7→ a](f (x)) sii todo valor a en UA cumple a PA fA (v[x 7→ a](x)) sii todo valor a en UA cumple a PA fA (a) a todo valor a en UA cumple a ≤ 2 a +1 sii Sin embargo, veamos que con a = 1 tenemos 1 6≤ 12 . Por lo tanto, sin importar la valuación, la fórmula no es satisfacible en la interpretación A. De modo similar, tomemos una valuación v cualquiera para la interpretación B: B, v |= ∀x(P (x, f (x))) sii todo valor l en UB cumple B, v[x 7→ l] |= P (x, f (x)) sii todo valor l en UB cumple v[x 7→ l](x) PB v[x 7→ l](f (x)) sii todo valor l en UB cumple l PB fB (v[x 7→ l](x)) sii todo valor l en UB cumple l PB fB (l) sii todo valor l en UB cumple |l| ≤ |posiciones pares de l| Observar que tomando l = [1, 2, 3] la desigualdad no se cumple, por lo que la propiedad es insatisfacible en B. Veamos qué sucede en una interpretación I tal que su universo son los naturales, PA es la operación de menor o igual y fA es la identidad. I, v |= ∀x(P (x, f (x))) sii todo valor n en UI cumple I, v[x 7→ n] |= P (x, f (x)) sii todo valor n en UI cumple v[x 7→ n](x) PI v[x 7→ n](f (x)) sii todo valor n en UI cumple n PI fI (v[x 7→ n](x)) sii todo valor n en UI cumple n PI fI (n) sii todo valor n en UI cumple n ≤ n En este caso la propiedad se cumple para cualquier n, por lo tanto la fórmula es válida bajo la interpretación I. 3 c) P (x, f (y)) No parece ser universalmente válida ni tampoco válida en las interpretaciones del ejercicio anterior, ya que hay variables libres, lo que hace que su valor de verdad dependa de qué valores asignamos a las variables x e y. Por ejemplo, tomemos la estructura A y sea v1 una valuación tal que v1 (x) = 10, v1 (y) = 0, luego: A, v1 |= P (x, f (y)) sii v1 (x) PA v1 (f (y)) sii 10 PA fA (v1 (y)) 0 sii 10 PA 2 0 +1 sii 10 ≤ 0 Como la última desigualdad es falsa, luego A, v 6|= P (x, f (y)). Por lo tanto la fórmula no es válida en la interpretación A. Veamos sin embargo, que la fórmula es satisfacible en dicha interpretación. Sea v2 otra valuación tal que v2 (x) = 0, v2 (y) = 1, luego: A, v2 |= P (x, f (y)) sii v2 (x) PA v2 (f (y)) sii 0 PA fA (v2 (y)) 1 sii 0 PA 2 1 +1 1 sii 0 ≤ 2 Veamos ahora qué sucede en la interpretación B. Tomemos una valuación v3 tal que v3 (x) = [3, 1], v3 (y) = []: B, v3 |= P (x, f (y)) sii v3 (x) PB v3 (f (y)) sii [3, 1] PB fB (v3 (y)) sii [3, 1] PB fB ([]) sii |[3, 1]| ≤ |[]| sii 2≤0 Por lo tanto la fórmula no es válida en la interpretación B. Veamos, sin embargo, que es satisfacible bajo dicha interpretación. Tomemos v4 tal que v4 (x) = [], v4 (y) = []: B, v4 |= P (x, f (y)) sii v4 (x) PB v4 (f (y)) sii [] PB fB (v4 (y)) sii [] PB fB ([]) sii |[]| ≤ |[]| sii 0≤0 Ejercicio 3. Dada una interpretación I, se dice que un elemento a de un universo de interpretación UI es distinguible sii existe una fórmula φ tal que tiene una única variable libre x que cumple: I, v |= φ sii 4 v(x) = a En otras palabras, hay una fórmula que es cierta para a y falsa para todo otro elemento del universo de interpretación. Sea L un lenguaje de primer orden con un sı́mbolo de predicado binario ≤. Decidir si todos los elementos del universo de la siguientes interpretaciones son distinguibles. 4 2 a) 4 3 2 b) 1 5 3 1 Resolución. Antes de resolver el ejercicio, para mayor comodidad definimos la igualdad como una reescritura: x=y ≡x≤y∧y ≤x De forma similar definimos el menor estricto como: x < y ≡ x ≤ y ∧ ¬(x = y) a) Veamos primero que el elemento 4 es distinguible del resto. Construyamos una φ4 tal que tenga una única variable libre x y sea cierta sólo cuando la valuación v es tal que v(x) = 4. φ4 = ∀y(y ≤ x) Probemos que efectivamente φ4 cumple lo pedido: I, v |= ∀y(y ≤ x) sii todo valor a en UI cumple I, v[y 7→ a] |= y ≤ x sii \ \ todo valor a en UI cumple v[y 7→ a](y) ≤ v[y 7→ a](x) todo valor a en UI cumple a ≤ v(x) 1 ≤ x 2 ≤ x sii todas las siguientes se cumplen 3 ≤ x 4≤x sii sii x = 4 De forma similar podrı́amos ver que 1 es distinguible con φ1 = ∀y(x ≤ y). Sin embargo, los elementos 2 y 3 parecen no ser distinguibles. Observar que si cambiamos el elemento 2 por el 3, obtenemos una estructura que es equivalente a la anterior (formalmente se llama isomorfismo, pero no lo veremos en la materia). Esto nos da la intuición de que estos elementos no son distinguibles. Aclaración: al resolver prácticas y parciales pediremos que justifiquen formalmente cuando un elemento es distinguible, tal como lo hemos hecho en este ejercicio. Para demostrar que un elemento no es distinguible, alcanzará con dar una intuición de por qué no lo es. b) De forma similar al anterior, el elemento 1 es distinguible ya que es el único menor o igual a todos. El elemento 4 ya no cumple que es mayor o igual a todos, ya que es incomparable con el 5. Sin embargo, es el único elemento que tiene tres elementos distintos entre sı́ que son menores estrictos que él: φ4 = ∃y, z, w(y 6= z ∧ z 6= w ∧ w 6= y ∧ y < x ∧ z < x ∧ w < x) 5 Veamos qué debe cumplir una valuación v para que haga verdadera a φ4 : I, v |= ∃y, z, w(y 6= z ∧ z 6= w ∧ w 6= y ∧ y < x ∧ z < x ∧ w < x) sii existen valores a, b, c en UI tales que: I, v 0 |= y 6= z ∧ z 6= w ∧ w 6= y ∧ y < x ∧ z < x ∧ w < x donde v 0 = v[y 7→ a, z 7→ b, w 7→ c] Esto sucede sii: Sii: 0 0 v (y) 6= v (z) v 0 (z) 6= v 0 (w) v 0 (w) 6= v 0 (y) simultáneamente suceden v 0 (y) < v 0 (x) v 0 (z) < v 0 (x) 0 v (w) < v 0 (x) a 6= b b 6= c c 6= a simultáneamente suceden a < v(x) b < v(x) c < v(x) Es decir que la fórmula φ4 es verdad únicamente en valuaciones que asignan a x un valor que tiene 3 elementos distintos menores estrictos a él. Esto se cumple únicamente cuando x = 4. De manera similar 5 es el único elemento que tiene únicamente dos elementos menores estrictos que él: φ5 = ∃y, z(y 6= z ∧ y < x ∧ z < x ∧ ∀w(w < x → (w = y ∨ w = z))) Observar que no sólo es necesario decir que hay dos elementos menores que él, sino que no hay más que dos. Es decir, que si hubiera un tercero, necesariamente es igual a alguno de los otros dos. Falta ver que 2 y 3 son distinguibles. Lo que los diferencia es que 3 tiene dos elementos mayores estrictos que él, mientras que 2 tiene sólo 1. Armemos fórmulas que representen estos hechos: φ2 = ∃y(x < y ∧ ∀z(x < z → z = y)) φ3 = ∃y, z(y 6= z ∧ x < y ∧ x < z ∧ ∀w(x < w → (w = y ∨ w = z))) Es decir que en esta segunda interpretación todos los elementos son distinguibles. Ejercicio 4. Sea L un lenguaje de primer orden con un sı́mbolo de predicado binario ≤. Considerar una interpretación I tal que UI es un universo finito y totalmente ordenado. Probar que todos los elementos de UI son distinguibles. Resolución. Como UI es un universo finito y totalmente ordenado podemos reescribirlo como {e1 , . . . , en } donde ei ≤ ej si y sólo si i ≤ j. En particular, además sabemos que ei < ej pues ei 6= ej . 6 Veamos que hay n predicados φ1 , . . . , φn tales que cada uno tiene una única variable libre x y cada φi es válido únicamente en valuaciones v tales que v(x) = ei . El primer elemento e1 es el único que es menor o igual a todos los demás. Por lo tanto: φ1 (x) = ∀y(x ≤ y) El elemento e2 es el elemento estrictamente mayor a e1 que es más cercano a e1 : φ2 (x) = ∃z(φ1 (z) ∧ z < x ∧ ∀w((z ≤ w ∧ w ≤ x) → (w = z ∨ w = x))) En general, podemos definir φi por recursivamente: φ1 (x) = ∀y(P (x, y)) φi+1 (x) = ∃z(φi (z) ∧ z < x ∧ ∀w((z ≤ w ∧ w ≤ x) → (w = z ∨ w = x))) Argumentemos, vı́a inducción que φi (x) es válida sólo si la valuación hace a x = ei . Caso base. La fórmula φ1 (x) es cierta sólo cuando x es un elemento menor o igual a todos los demás. Tal elemento es e1 . Paso inductivo. Partiendo de que la fórmula φi (z) es únicamente válida en valuaciones v tales que v(z) = ei argumentemos que φi+1 (x) es sólo válida cuando v(x) = ei+1 . Sabemos que la valuación v es tal que v(z) = ei por hipótesis inductiva. Para que la valuación haga verdadera a z < x debe suceder que v(x) sea un elemento mayor estricto que v(z). Además, como ∀w((z ≤ w ∧ w ≤ x) → (w = z ∨ w = x)) sabemos que todo elemento entre z y x es necesariamente z o necesariamente x. Es decir, no hay elementos entre z y x. En otras palabras, x está pegado a z. Concluyendo, x es un elemento estrictamente mayor a z y tal que está a distancia mı́nima de z. Como z = ei , luego x = ei+1 . 7