Lógica informática Curso 2003 04 Tema 6: Sintaxis y semántica de la lógica de primer orden José A. Alonso Jiménez Andrés Cordón Franco Dpto. de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.
Limitación expresiva de la lógica proposicional Ejemplo : Si Sevilla es vecina de Cádiz, entonces Cádiz es vecina de Sevilla. Sevilla es vecina de Cádiz. Por tanto, Cádiz es vecina de Sevilla Representación en lógica proposicional: {SvC CvS, SvC} = CvS Ejemplo 2: Si una ciudad es vecina de otra, entonces la segunda es vecina de la primera. Sevilla es vecina de Cádiz. Por tanto, Cádiz es vecina de Sevilla Representación en lógica proposicional: Imposible Representación en lógica de primer orden: {( x)( y)[vecina(x, y) vecina(y, x)], = vecina(cadiz, Sevilla) vecina(sevilla, Cadiz)} LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.2
Potencia expresiva de la lógica de primer orden Mundo de los bloques a b c d e sobre(x, y) se verifica si el bloque x está colocado sobre el bloque y sobre mesa(x) se verifica si el bloque x está sobre la mesa Situación del ejemplo: sobre(a, b), sobre(b, c), sobre mesa(c), sobre(d, e), sobre mesa(e) LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.3
Potencia expresiva de la lógica de primer orden bajo(x, y) se verifica si el bloque x está debajo del bloque y ( x)( y)[bajo(x, y) sobre(y, x)] encima(x, y) se verifica si el bloque x está encima del bloque y pudiendo haber otros bloques entre ellos ( x)( y)[encima(x, y) sobre(x, y) ( z)[sobre(z, x) encima(z, y)]] libre(x) se verifica si el bloque x no tiene bloques encima ( x)[libre(x) ( y)sobre(y, x)] pila(x, y, z) se verifica si el bloque x está sobre el y, el y sobre el z y el z sobre la mesa ( x)( y)( z)[pila(x, y, z) sobre(x, y) sobre(y, z) sobre mesa(z)] Prop.: Si z, y, z es una pila entonces y no está libre ( x)( y)( z)[pila(x, y, z) libre(y)] LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.4
Potencia expresiva de la lógica de primer orden Representación con funciones e igualdad es bloque(x) se verifica si x es un bloque superior(x) es el bloque que está sobre el bloque x Situación del ejemplo: es bloque(a), es bloque(b), es bloque(c), es bloque(d), es bloque(e) superior(b) = a, superior(c) = b, superior(e) = d sobre mesa(x) se verifica si el bloque x está sobre la mesa ( x)[sobre mesa(x) es bloque(x) ( y)superior(y) = x] libre(x) se verifica si el bloque x no tiene bloques encima ( x)[libre(x) ( y)superior(x) = y] tope(x) es el bloque libre que está encima de x ( x)[(libre(x) tope(x) = x) ( libre(x) tope(x) = tope(superior(x)))] LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.5
Potencia expresiva de la lógica de primer orden Ejemplos de formalización: La Tierra es un planeta: planeta(tierra) La Luna no es un planeta: planeta(luna) La Luna es un satélite: satélite(luna) La Tierra gira alrededor del Sol: gira(tierra, Sol) Todo planeta es un satélite: ( x)[planeta(x) satélite(x)] Todo planeta gira alrededor del Sol: ( x)[planeta(x) gira(x, Sol)] Algún planeta gira alrededor de la Luna: ( x)[planeta(x) gira(x, Luna)] Hay por lo menos un satélite: ( x)satélite(x) Ningún planeta es un satélite: ( x)[planeta(x) satélite(x)] Ningún objeto celeste gira alrededor de sí mismo: ( x)gira(x, x) LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.6
Potencia expresiva de la lógica de primer orden Alrededor de los satélites no giran objetos: ( x)[satélite(x) ( y)gira(y, x)] Hay exactamente un satélite: ( x)[satélite(x) ( y)[satélite(y) x = y]] La Luna es un satélite de la Tierra: satélite(luna, Tierra) [Notar la sobrecarga de la relación satélite] Todo planeta tiene un satélite: ( x)[planeta(x) ( y)satélite(y, x)] La Tierra no tiene satélites: ( x)satélite(x, Tierra) Algún planeta no tiene satélites: ( x)[planeta(x) ( y)satélite(y, x)] Sólo los planetas tienen satélites: ( x)[( y)satélite(y, x) planeta(x)] Todo satélite es satélite de algún planeta: ( x)[satélite(x) ( y)(planeta(y) satélite(x, y)] La Luna no gira alrededor de dos planetas diferentes: ( x)( y)[planeta(x) planeta(y) gira(luna, x) gira(luna, y) x y] Hay exactamente dos planetas: ( x)( y)[planeta(x) planeta(y) x y ( z)[planeta(z) (z = x z = y)]] LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.7
Lenguaje de primer orden Lenguaje de primer orden: Símbolos lógicos: - Variables: x, y, z,..., x, x 2,.... - Conectivas:,,,,. - Cuantificadores:,. - Símbolo de igualdad: =. Símbolos propios: - Símbolos de constantes: a, b, c,..., a, a 2,.... - Símbolos de predicado (con aridad): P, Q, R,..., P, P 2,.... - Símbolos de función (con aridad): f, g, h,..., f, f 2,.... Símbolos auxiliares: (, ),,. Notación: L, L, L 2,... representan lenguajes de primer orden. Var representa el conjunto de las variables. Los símbolos de predicados de aridad mayor que se llaman de relaciones. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.8
Ejemplos de lenguajes de primer orden Lenguaje del mundo de los bloques: Símbolos de constantes: a, b, c, d, e Símbolos de predicado (y de relación): de aridad : sobre mesa, libre, es bloque de aridad 2: sobre, bajo, encima de aridad 3: pila Símbolos de función (de aridad ): superior, tope Lenguaje de la aritmética: Símbolos de constantes: 0, Símbolos de función: monaria: s (siguiente) binarias: +, Símbolo de predicado binario: < LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.9
Sintaxis: términos Términos Def. de término de un lenguaje de primer orden L: - Las variables son términos de L. - Las constantes de L son términos de L. - Si f es un símbolo de función n aria de L y t,..., t n son términos de L, entonces f(t,..., t n ) es un término de L. Ejemplo: En el lenguaje de la aritmética,. +( (x, ), s(y)) es un término, que se suele escribir como (x ) + s(y) 2. +( (x, <), s(y)) no es un término Notación: s, t, t, t 2,... representan términos. Térm(L) representa el conjunto de los términos de L LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.0
Sintaxis: fórmulas atómicas Fórmulas atómicas: Def. de fórmula atómica de un lenguaje de primer orden L: Si t y t 2 son términos de L, entonces t = t 2 es una fórmula atómica de L. Si P es un símbolo de relación n aria de L y t,..., t n son términos de L, entonces P (t,..., t n ) es una fórmula atómica de L. Ejemplo: En el lenguaje de la aritmética,. < ( (x, ), s(y)) es una fórmula atómica que se suele escribir como x < s(y) 2. +(x, y) = (x, y) es una fórmula atómica que se suele escribir como x + y = x y Notación: A, B, A, A 2,... representan fórmulas atómicas. Átom(L) representa el conjunto de las fórmulas atómicas de L LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.
Sintaxis: fórmulas Fórmulas: Def. de las fórmulas de L: Las fórmulas atómicas de L son fórmulas de L. Si F y G son fórmulas de L, entonces F, (F G), (F G), (F G) y (F G) son fórmulas de L. Si F es una fórmula de L, entonces ( x)f y ( x)f son fórmulas de L. Ejemplo: En el lenguaje de la aritmética,. ( x)( y) < (x, y) es una fórmula que se suele escribir como ( x)( y)x < y 2. ( x)( y) + (x, y) no es una fórmula. Notación: F, G, H, F, F 2,... representan fórmulas. Fórm(L) representa el conjunto de las fórmulas de L LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.2
Sintaxis: fórmulas. Árboles de análisis (o de formación) y esquemáticos ( x)(r(x, c) P (f(y))) ( x) (R(x, c) P (f(y))) R(x, c) P (f(y)) R P x c f(y) x c f y y LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.3
Sintaxis: subfórmulas Subfórmulas: Def: El conjunto Subf(F ) de las subfórmulas de una fórmula F se define recursivamente por: Subf(F ) = {F }, si F es una fórmula atómica; {F } Subf(G), si F = G; {F } Subf(G) Subf(H), si F = G H; {F } Subf(G), si F = ( x)g; {F } Subf(G), si F = ( x)g Ejemplo: Subf(( x)(r(x, c) P (f(y)))) = { ( x)(r(x, c) P (f(y))), (R(x, c) P (f(y))), R(x, c), P (f(y))} LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.4
Sintaxis: omisión de paréntesis Criterios de reducción de paréntesis: Pueden eliminarse los paréntesis externos. F G es una abreviatura de (F G) Precedencia de asociación de conectivas y cuantificadores:,,,,,,. xp (x) Q(x) es una abreviatura de (( x)p (x)) Q(x) Cuando una conectiva se usa repetidamente, se asocia por la derecha. F G H es una abreviatura de (F (G H)) F G H F G es una abreviatura de ((F (G H)) ( F G)) Los símbolos binarios pueden escribirse en notación infija. x + y es una abreviatura de +(x, y) x < y es una abreviatura de < (x, y) LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.5
Sintaxis: conjuntos de variables Conjuntos de variables: Def.: El conjunto de las variables de un término t se define recursivamente por:, si t es una constante; V(t) = {x}, si t es una variable x; V(t )... V(t n ), si t es f(t,..., t n ) Def.: El conjunto de las variables de una fórmula F se define recursivamente por: V(t ) V(t 2 ), si F es t = t 2 ; V(t )... V(t n ), si F es P (t,..., t n ); V(G), si F es G; V(F ) = V(G) V(H), si F es G H; V(G), si F es ( x)g; V(G), si F es ( x)g Ejemplos: El conjunto de las variables de ( x)(r(x, c) P (f(y))) es {x, y}. El conjunto de las variables de ( x)(r(a, c) P (f(y))) es {y}. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.6
Sintaxis: apariciones libres y ligadas Apariciones libres y ligadas: Def.: Una aparición (u ocurrencia) de la variable x en la fórmula F es ligada si es en una subfórmula de F de la forma ( x)g ó ( x)g. Def.: Una aparición (u ocurrencia) de la variable x en la fórmula F es libre si no es ligada Ejemplo: Las apariciones ligadas son las subrayadas: ( x)(p (x) R(x, y)) (( y)p (y) R(z, x)) ( x)r(x, y) ( y)p (y) ( x)(p (x) ( y)r(x, y)) P (x) R(x, y) LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.7
Sintaxis: variables libres y ligadas Variables libres y ligadas: Def.: La variable x es libre en F si tiene una aparición libre en F. Def.: La variable x es ligada en F si tiene una aparición ligada en F. Prop.: El conjunto de las variables libres de una fórmula F es: V(t ) V(t 2 ), si F es t = t 2 ; V(t )... V(t n ), si F es P (t,..., t n ); VL(G), si F es G; VL(F ) = VL(G) VL(H), si F es G H; VL(G) \ {x}, si F es ( x)g; VL(G) \ {x}, si F es ( x)g Ejemplo: Fórmula Ligadas Libres ( x)(p (x) R(x, y)) (( y)p (y) R(x, z)) x, y x, y, z ( x)(p (x) ( y)r(x, y)) x, y ( z)(p (x) R(x, y)) x, y LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.8
Sintaxis: fórmulas cerradas y básicas Fórmula cerradas: Def.: Una fórmula cerrada (o sentencia) es una fórmula sin variables libres. Ejemplos: ( x)(p (x) ( y)r(x, y)) es cerrada. ( x)r(x, y) ( y)p (y) no es cerrada. Fórmulas básicas: Def.: Una fórmula básica es una fórmula sin variables. Ejemplos: P (a) R(a, b) es básica. ( x)(p (x) ( y)r(x, y)) no es básica. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.9
Sintaxis: sustituciones Sustituciones (de un lenguaje): Def.: Una sustitución σ (de L) es una aplicación σ : Var Térm(L). Ejemplo: La aplicación σ de V ar en los términos de la aritmética tal que σ(x) = s(0), σ(y) = x + y y σ(z) = z para z Var \ {x, y} es una sustitución. Notación: [x { /t, x 2 /t 2,..., x n /t n ] representa la sustitución σ definida por ti, si x es x σ(x) = i ; x, si x / {x,..., x n } Ejemplo: La sustitución del ejemplo anterior se representa por [x/s(0), y/x + y] Notación: σ, σ, σ 2,... representarán sustituciones. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.20
Sintaxis: Aplicación de sustituciones a términos Aplicación de sustituciones a términos: Def.: t[x /t,..., x n /t n ] es el término obtenido sustituyendo en t las apariciones de x i por t i. Def.: La extensión de σ a términos es la aplicación σ : Térm(L) Térm(L) definida por tσ = c, si t es una constante c; σ(x), si t es una variable x; f(t σ,..., t n σ), si t es f(t,..., t n ) Si σ = [x/f(y, a), y/z], entonces aσ = a, donde a es una constante. wσ = w, donde w es una variable distinta de x e y. h(a, x, w)σ = h(aσ, xσ, wσ) = h(a, f(y, a), w) f(x, y)σ = f(xσ, yσ) = f(f(y, a), z) h(a, f(x, y), w)σ = h(aσ, f(x, y)σ, wσ) = h(a, f(f(y, a), z), w) LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.2
Sintaxis: Composición de sustituciones Composición de sustituciones: Diferencia entre sustituciones simultáneas y consecutivas: g(x, z)[x/g(z, b), z/a] = g(g(z, b), a) g(x, z))[x/g(z, b)][z/a] = g(g(z, b), z)[z/a] = g(g(a, b), a) Cálculo de la composición: Si σ = [x/f(z, a), y/w] y σ 2 = [x/b, z/g(w)], entonces xσ σ 2 = (xσ )σ 2 = f(z, a)σ 2 = f(zσ 2, aσ 2 ) = f(g(w), a) yσ σ 2 = (yσ )σ 2 = wσ 2 = w zσ σ 2 = (zσ )σ 2 = zσ 2 = g(w) wσ σ 2 = (wσ )σ 2 = wσ 2 = w Por tanto, σ σ 2 = [x/f(g(w), a), y/w, z/g(w)]. Comprobación: h(y, x)σ σ 2 = (h(y, x)σ )σ 2 = h(w, f(z, a))σ 2 = h(wσ 2, f(z, a)σ 2 ) = h(w, f(g(w), a)) h(y, x)σ σ 2 = h(y, x)[x/f(g(w), a), y/w, z/g(w)] = h(w, f(g(w), a)) LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.22
Sintaxis: Aplicación de sustituciones a fórmulas Aplicación de sustituciones a fórmulas: Def.: F [x /t,..., x n /t n ] es la fórmula obtenida sustituyendo en F las apariciones libres de x i por t i. Def.: La extensión de σ a fórmulas es la aplicación σ : Fórm(L) Fórm(L) definida por P (t σ,..., t n σ), si F es la fórmula atómica P (t,..., t n ); t σ = t 2 σ, si F es la fórmula t = t 2 ; F σ = (Gσ), si F es G; Gσ Hσ, si F es G H; (Qx)(Gσ x ), si F es (Qx)G y Q {, } donde σ x es la sustitución definida por { x, si y es x; σ x (y) = σ(y) si y es distinta de x LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.23
Sintaxis: Aplicación de sustituciones a fórmulas Ejemplos: Si σ = [x/f(y), y/b], entonces. (( x)(q(x) R(x, y)))σ = ( x)((q(x) R(x, y))σ x ) = ( x)(q(x)σ x R(x, y)σ x ) = ( x)(q(x) R(x, b)) 2. (Q(x) ( x)r(x, y))σ = Q(x)σ (( x)r(x, y))σ = Q(f(y)) ( x)(r(x, y)σ x ) = Q(f(y)) ( x)r(x, b) 3. (( x)(q(x) ( y)r(x, y)))σ = ( x)((q(x) ( y)r(x, y))σ x ) = ( x)(q(x)σ x (( y)r(x, y))σ x ) = ( x)(q(x) ( y)(r(x, y)σ xy )) = ( x)(q(x) ( y)r(x, y)) LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.24
Sintaxis: Sustituciones libres Sustituciones libres: Def.: Una sustitución se denomina libre para una fórmula cuando todas las apariciones de variables introducidas por la sustitución en esa fórmula resultan libres. Ejemplos: [y/x] no es libre para ( x)(x < y) ( x)(x < y)[y/x] = ( x)(x < x) [y/g(y)] es libre para ( x)(p (x) Q(x, f(y))) ( x)(p (x) Q(x, f(y)))[y/g(y)] = ( x)(p (x) Q(x, f(g(y)))) [y/g(x)] no es libre para ( x)(p (x) Q(x, f(y))) ( x)(p (x) Q(x, f(y)))[y/g(x)] = ( x)(p (x) Q(x, f(g(x)))) Convenio: Al escribir F σ supondremos que σ es libre para F. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.25
Semántica: Estructuras, asignaciones e interpretaciones Una estructura del lenguaje L es un par I = (U, I) tal que: U es un conjunto no vacío, denominado universo de la estructura; I es una función cuyo dominio es el conjunto de símbolos propios de L y tal que si c es una constante de L, entonces I(c) U (i.e. I(c) es un elemento de U); si f es un símbolo de función n aria (n > 0) de L, entonces I(f) : U n U (i.e. I(f) es una función n aria en U); si R es un símbolo de relación n aria (n > 0) de L, entonces I(R) U n (i.e. I(R) es una relación n aria en U). Una asignación A en una estructura (U, I) es una función A : Var U que hace corresponder a cada variable del alfabeto un elemento del universo de la estructura. Una interpretación de L es un par (I, A) formado por una estructura I de L y una asignación A en I. Notación: A veces se usa para los valores de verdad V y F en lugar de y 0. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.26
Semántica: Estructuras Ejemplos: Sea L el lenguaje de la aritmética cuyos símbolos propios son: constante: 0; símbolo de función monaria: s; símbolo de función binaria: + y símbolo de relación binaria: Primera estructura de L: U = N I (0) = 0 I (s) = {(n, n + ) : n N} (sucesor) I (+) = {(a, b, a + b) : a, b N} (suma) I ( ) = {(n, m) : n, m N, n m} (menor o igual) Segunda estructura de L: U 2 = {0, } (cadenas de 0 y ) I 2 (0) = ɛ (cadena vacía) I 2 (s) = {(w, w) : w {0, } } (siguiente) I 2 (+) = {(w, w 2, w w 2 ) : w, w 2 {0, } } (concatenación) I 2 ( ) = {(w, w 2 ) : w, w 2 {0, }, w es prefijo de w 2 } (prefijo) LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.27
Semántica: Estructuras Ejemplos (cont.): Tercera estructura de L: U 3 = {abierto, cerrado} I 3 (0) = cerrado I 3 (s) = { (abierto, cerrado), (cerrado, abierto)} I 3 (+) = { (abierto, abierto, abierto), (abierto, cerrado, abierto), (cerrado, abierto, abierto), (cerrado, cerrado, cerrado)} I 3 ( ) = { (abierto, abierto), (cerrado, abierto), (cerrado, cerrado)} e abierto cerrado I 3 (s)(e) cerrado abierto I 3 (+) abierto cerrado abierto abierto abierto cerrado abierto cerrado I 3 ( ) abierto cerrado abierto 0 cerrado LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.28
Semántica: Evaluación de términos Evaluación de términos: Def.: Dada una estructura I = (U, I) de L y una asignación A en I, se define la función de evaluación de términos I A : Térm(L) U por I(c), si t es una constante c; I A (t) = A(x), si t es una variable x; I(f)(I A (t ),..., I A (t n )), si t es f(t,..., t n ) I A (t) se lee el valor de t en I respecto de A. Ejemplos: Sean L el lenguaje de la página?? y t el término s(+(x, s(0))). Si I es la primera estructura y A(x) = 3, entonces I A (t) = I A (s(+(x, s(0)))) = I(s)(I A (+(x, s(0)))) = = I(s)(I(+)(I A (x), I A (s(0)))) = I(s)(I(+)(A(x), I A (s(0)))) = = I(s)(I(+)(3, I(s)(I A (0)))) = I(s)(I(+)(3, I(s)(I(0)))) = = I(s)(I(+)(3, I(s)(0))) = I(s)(I(+)(3, )) = = I(s)(4) = 5 LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.29
Semántica: Evaluación de términos Ejemplos (cont.) Si I es la segunda estructura y A(x) = 0, entonces I A (t) = I A (s(+(x, s(0)))) = I(s)(I A (+(x, s(0)))) = = I(s)(I(+)(I A (x), I A (s(0)))) = I(s)(I(+)(A(x), I A (s(0)))) = = I(s)(I(+)(0, I(s)(I A (0)))) = I(s)(I(+)(0, I(s)(I(0)))) = = I(s)(I(+)(0, I(s)(ɛ))) = I(s)(I(+)(0, )) = = I(s)(0) = 0 Si I es la tercera estructura y A(x) = abierto, entonces I A (t) = I A (s(+(x, s(0)))) = I(s)(I A (+(x, s(0)))) = = I(s)(I(+)(I A (x), I A (s(0)))) = I(s)(I(+)(A(x), I A (s(0)))) = = I(s)(I(+)(abierto, I(s)(I A (0)))) = I(s)(I(+)(abierto, I(s)(I(0)))) = = I(s)(I(+)(abierto, I(s)(cerrado))) = I(s)(I(+)(abierto, abierto)) = = I(s)(abierto) = cerrado LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.30
Semántica: Evaluación de términos Ejemplo anterior con notación reducida e infija: Sean L el lenguaje de la página?? y t el término s(x + s(0)). Si I es la primera estructura y A(x) = 3, entonces I A (t) = I A (s(x + s(0))) = s I (3 + I s I (0 I )) = = s I (3 + I s I (0)) = s I (3 + I ) = = s I (4) = 5 Si I es la segunda estructura y A(x) = 0, entonces I A (t) = I A (s(x + s(0))) = s I (0 + I s I (0 I )) = = s I (0 + I s I (ɛ)) = s I (0 + I ) = = s I (0) = 0 Si I es la tercera estructura y A(x) = abierto, entonces I A (t) = I A (s(x + s(0))) = s I (abierto + I s I (0 I )) = = s I (abierto + I s I (cerrado)) = s I (abierto + I abierto) = = s I (abierto) = cerrado LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.3
Semántica: Evaluación de fórmulas Variante de una asignación: Def.: Sea A una asignación en la estructura (U, I) y u U. Mediante A[x/u] se representa la asignación definida por { u, si y es x; A[x/u](y) = A(y) si y es distinta de x Función de verdad de una relación: Def.: Si R es una relación n aria en U (i.e. R U n ), entonces la función de verdad de R es la función H R : U n B definida por {, si (u,..., u H R (u,..., u n ) = n ) R; 0, en caso contrario Función de verdad de la igualdad: Def.: La función de verdad de la igualdad en U es la función H = : U 2 B definida por H = (u, u 2 ) = {, si u = u 2 ; 0, en caso contrario LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.32
Semántica: Evaluación de fórmulas Evaluación de fórmulas: Def.: Dada una estructura I = (U, I) de L y una asignación A sobre I, se define la función de evaluación de fórmulas I A : Fórm(L) B por Si F es t = t 2, I A (F ) = H = (I A (t ), I A (t 2 )) Si F es P (t,..., t n ), I A (F ) = H I(P ) (I A (t ),..., I A (t n )) Si F es G, I A (F ) = H (I A (G)) Si F es G H, I A (F ) = H (I A (G), I A (H)) Si F es ( x)g, I A (F ) = Si F es ( x)g, I A (F ) = {, si para todo u U se tiene IA[x/u] (G) = ; 0, en caso contrario {, si existe algún u U tal que IA[x/u] (G) = ; 0, en caso contrario I A (F ) se lee el valor de F en I respecto de A. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.33
Semántica: Evaluación de fórmulas Ejemplo: Evaluación de ( y)p (x, y) en la estructura I = (U, I) respecto de la asignación A tales que U = {, 2}, I(P ) = {(, ), (2, 2)} y A(x) = En notación completa: I A (( y)p (x, y)) = V I A[y/] P (x, y) = V ó I A[y/2] P (x, y) = V I A[y/] P (x, y) = H I(P ) (I A[y/] (x), I A[y/] (y)) = H I(P ) (A[y/](x), A[y/](y)) = H I(P ) (, ) = V Luego, I A (( y)p (x, y)) = V. En notación reducida: I A (( y)p (x, y)) = V I A[y/] P (x, y) = V ó I A[y/2] P (x, y) = V I A[y/] P (x, y) = P I (A[y/](x), A[y/](y)) = P I (, ) = V Luego, I A (( y)p (x, y)) = V. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.34
Semántica: Evaluación de fórmulas Ejemplo: Evaluación de ( x)( y)p (x, y) en la estructura I = (U, I) respecto de la asignación A tales que U = {, 2} e I(P ) = {(, ), (2, 2)} I A (( x)( y)p (x, y)) = V I A[x/] (( y)p (x, y)) = V y I A[x/2] (( y)p (x, y)) = V I A[x/] (( y)p (x, y)) = V I A[x/,y/] P (x, y) = V ó I A[x/,y/2] P (x, y) = V I A[x/,y/] P (x, y) = H I(P ) (I A[x/,y/] (x), I A[x/,y/] (y)) = H I(P ) (A[x/, y/](x), A[x/, y/](y)) = H I(P ) (, ) = V Luego, I A[x/] (( y)p (x, y)) = V. I A[x/2] (( y)p (x, y)) = V I A[x/2,y/] P (x, y) = V ó I A[x/2,y/2] P (x, y) = V I A[x/2,y/2] P (x, y) = H I(P ) (I A[x/2,y/2] (x), I A[x/2,y/2] (y)) = H I(P ) (A[x/2, y/2](x), A[x/2, y/2](y)) = H I(P ) (2, 2) = V Luego, I A[x/2] (( y)p (x, y)) = V. Por tanto, I A (( x)( y)p (x, y)) = V LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.35
Semántica: Evaluación de fórmulas Ejemplo anterior en notación reducida: Evaluación de ( x)( y)p (x, y) en la estructura I = (U, I) respecto de la asignación A tales que U = {, 2} e I(P ) = {(, ), (2, 2)} I A (( x)( y)p (x, y)) = V I A[x/] (( y)p (x, y)) = V y I A[x/2] (( y)p (x, y)) = V I A[x/] (( y)p (x, y)) = V I A[x/,y/] P (x, y) = V ó I A[x/,y/2] P (x, y) = V I A[x/,y/] P (x, y) = P I (, ) = V Luego, I A[x/] (( y)p (x, y)) = V. I A[x/2] (( y)p (x, y)) = V I A[x/2,y/] P (x, y) = V ó I A[x/2,y/2] P (x, y) = V I A[x/2,y/2] P (x, y) = P I (2, 2) = V Luego, I A[x/2] (( y)p (x, y)) = V. Por tanto, I A (( x)( y)p (x, y)) = V LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.36
Semántica: Evaluación de fórmulas Ejemplo: Evaluación de ( x)(p (x) Q(g(x), a)) en la estructura I = (U, I) respecto de la asignación A tales que U = {, 2}, I(a) =, I(g) = {(, 2), (2, )}, I(P ) = {2} e I(Q) = {(, 2), (2, 2)}. I A (( x)(p (x) Q(g(x), a))) = V I A[x/] (P (x) Q(g(x), a)) = V y I A[x/2] (P (x) Q(g(x), a)) = V I A[x/] (P (x) Q(g(x), a)) = = H (I A[x/] (P (x)), I A[x/] (Q(g(x), a))) = = H (H I(P ) (I A[x/] (x)), H I(Q) (I A[x/] (g(x)), I A[x/] (a))) = = H (H I(P ) (A[x/](x)), H I(Q) (I(g)(I A[x/] (x)), I(a))) = = H (H I(P ) (), H I(Q) (I(g)(A[x/](x)), )) = = H (F, H I(Q) (I(g)(), )) = = H (F, H I(Q) (2, )) = = H (F, F) = = V LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.37
Semántica: Evaluación de fórmulas Ejemplo (cont.) I A[x/2] (P (x) Q(g(x), a)) = = H (I A[x/2] (P (x)), I A[x/2] (Q(g(x), a))) = = H (H I(P ) (I A[x/2] (x)), H I(Q) (I A[x/2] (g(x)), I A[x/2] (a))) = = H (H I(P ) (A[x/2](x)), H I(Q) (I(g)(I A[x/2] (x)), I(a))) = = H (H I(P ) (2), H I(Q) (I(g)(A[x/2](x)), )) = = H (V, H I(Q) (I(g)(2), )) = = H (V, H I(Q) (, )) = = H (V, V) = = V Por tanto, I A (( x)(p (x) Q(g(x), a))) = V. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.38
Semántica: Evaluación de fórmulas Ejemplo anterior con notación reducida: Evaluación de ( x)(p (x) Q(g(x), a)) en la estructura I = (U, I) respecto de la asignación A tales que U = {, 2}, I(a) =, I(g) = {(, 2), (2, )}, I(P ) = {2} e I(Q) = {(, 2), (2, 2)}. I A (( x)(p (x) Q(g(x), a))) = V I A[x/] (P (x) Q(g(x), a)) = V y I A[x/2] (P (x) Q(g(x), a)) = V I A[x/] (P (x) Q(g(x), a)) = P I () Q I (g I (), a I ) = F Q I (2, ) = F F = V I A[x/2] (P (x) Q(g(x), a)) = P I (2) Q I (g I (2), a I ) = V Q I (, ) = V V = V Por tanto, I A (( x)(p (x) Q(g(x), a))) = V. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.39
Semántica: Evaluación de fórmulas Ejemplo: Evaluación de ( x)(p (g(x)) Q(x, g(a))) en la estructura I = (U, I) respecto de la asignación A tales que U = {, 2}, I(a) =, I(g) = {(, 2), (2, )}, I(P ) = {2} e I(Q) = {(, 2), (2, 2)}. I A (( x)(p (g(x)) Q(x, g(a)))) = V I A[x/] (P (g(x)) Q(x, g(a))) = V ó I A[x/2] (P (g(x)) Q(x, g(a))) = V I A[x/] (P (g(x)) Q(x, g(a))) = P I (g I ()) Q I (, g I (a I )) = P I (2) Q I (, g I ()) = V Q I (, 2) = V V = V Por tanto, I A (( x)(p (g(x)) Q(x, g(a)))) = V. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.40
Semántica: Evaluación de fórmulas Ejemplo: Evaluación de ( x)(p (x) Q(x, a)) en la estructura I = (U, I) respecto de la asignación A tales que U = {, 2}, I(a) =, I(g) = {(, 2), (2, )}, I(P ) = {2} e I(Q) = {(, 2), (2, 2)}. I A (( x)(p (x) Q(x, a))) = V I A[x/] (P (x) Q(x, a)) = V ó I A[x/2] (P (x) Q(x, a)) = V I A[x/] (P (x) Q(x, a)) = P I () Q I (, a I ) = F Q I (, ) = F V = F I A[x/2] (P (x) Q(x, a)) = P I (2) Q I (2, a I ) = V Q I (2, ) = V F = F Por tanto, I A (( x)(p (x) Q(x, a))) = F. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.4
Semántica: Evaluación de fórmulas Ejemplo: Evaluación de ( x)( y)(p (x) Q(x, y)) en la estructura I = (U, I) respecto de la asignación A tales que U = {, 2}, I(a) =, I(g) = {(, 2), (2, )}, I(P ) = {2} e I(Q) = {(, 2), (2, 2)}. I A (( x)( y)(p (x) Q(x, y))) = V I A[x/] ( y)(p (x) Q(x, y)) = V y I A[x/2] ( y)(p (x) Q(x, y)) = V I A[x/] ( y)(p (x) Q(x, y)) = V I A[x/,y/] (P (x) Q(x, y)) = V ó I A[x/,y/2] (P (x) Q(x, y)) = V I A[x/,y/] (P (x) Q(x, y)) = P I () Q I (, ) = F V = F I A[x/,y/2] (P (x) Q(x, y)) = P I () Q I (, 2) = F V = F Luego, I A[x/] ( y)(p (x) Q(x, y)) = F Por tanto, I A (( x)( y)(p (x) Q(x, y))) = V. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.42
Semántica: Evaluación de fórmulas Ejemplo: Evaluación de ( x)g(x) = x en la estructura I = (U, I) respecto de la asignación A tales que U = {, 2}, I(a) =, I(g) = {(, 2), (2, )}, I(P ) = {2} e I(Q) = {(, 2), (2, 2)}. I A (( x)g(x) = x) = V I A[x/] g(x) = x = V y I A[x/2] g(x) = x = V I A[x/] (g(x) = x) = (g I () = ) = (2 = ) = F Por tanto, I A (( x)g(x) = x) = F. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.43
Semántica: Evaluación de fórmulas Ejemplo: Evaluación de ( x)g(g(x)) = x en la estructura I = (U, I) respecto de la asignación A tales que U = {, 2}, I(a) =, I(g) = {(, 2), (2, )}, I(P ) = {2} e I(Q) = {(, 2), (2, 2)}. I A (( x)g(g(x)) = x) = V I A[x/] g(g(x)) = x = V y I A[x/2] g(g(x)) = x = V I A[x/] (g(g(x)) = x) = (g I (g I ()) = ) = (g I (2) = ) = ( = ) = V I A[x/2] (g(g(x)) = x) = (g I (g I (2)) = 2) = (g I () = 2) = (2 = 2) = V Por tanto, I A (( x)g(g(x)) = x) = V. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.44
Semántica: Evaluación de fórmulas Ejemplo de dependencia del universo: Sea G la fórmula ( x)( y)r(y, x), entonces I A (G) = V, siendo I = (Z, I), I(R) = < y A una asignación en I. I A (G) = F, siendo I = (N, I), I(R) = < y A una asignación en I. Ejemplo de dependencia de la estructura: Sea G la fórmula ( x)( y)r(x, y), entonces I A (G) = V, siendo I = (N, I), I(R) = y A una asignación en I. I A (G) = F, siendo I = (N, I), I(R) = y A una asignación en I. Ejemplo de dependencia de la asignación: Sea G la fórmula ( y)r(x, y), entonces I A (G) = V, siendo I = (N, I), I(R) = y A una asignación en I tal que A(x) = 0. I A (G) = F, siendo I = (N, I), I(R) = y A una asignación en I tal que A(x) = 5. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.45
Semántica: Evaluación de fórmulas Evaluación de fórmulas en las estructuras de las páginas????: Fórmula I I I 3 ( x)0 x V V V ( x)x s(x) V V F ( x)s(x) = 0 F F V ( x)s(x) = x F F F LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.46
Semántica: Evaluación variables libres Evaluación y variables libres: Sea t un término de L, F una fórmula de L e I una estructura de L. Si A y B son dos asignaciones en I que coinciden sobre las variables de t, entonces I A (t) = I B (t). Si A y B son dos asignaciones en I que coinciden sobre las variables libres de F, entonces I A (F ) = I B (F ). Si t no tiene variables, entonces I A (F ) = I B (F ) para cualesquiera asignaciones A y B en I. Se suele escribir simplemente I(t). Si F es cerrada, entonces I A (F ) = I B (F ) para cualesquiera asignaciones A y B en I. Se suele escribir simplemente I(F ). Si las variables libres de F son x,..., x n, entonces son equivalentes I A (F ) =, para toda asignación A en I. I(( x )... ( x n )F ) =. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.47
Semántica: Realización de una fórmula Realización de una fórmula: Def.: Sean F una fórmula de L, I una estructura de L y A una asignación en I. (I, A) es una realización de F si I A (F ) =. Se representa por I A = F. (I, A) no es una realización de F si I A (F ) = 0. Se representa por I A = F. F se verifica en I respecto de A si I A = F. F no se verifica en I respecto de A si I A = F. Ejemplos: Sea I = (N, I) una estructura tal que I(R) =. Si A es una asignación en I tal que A(x) = 0. entonces I A = ( y)r(x, y), Si A es una asignación en I tal que A(x) = 5, entonces I A = ( y)r(x, y), LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.48
Semántica: Satisfacibilidad en una estructura Satisfacibilidad en una estructura Def.: Sean F una fórmula de L e I una estructura de L. F es satisfacible en I si existe alguna asignación A en I tal que I A = F. F es insatisfacible en I si no existe ninguna asignación A en I tal que I A = F. Ejemplos: Sea I = (N, I) una estructura tal que I(R) =. ( y)r(x, y) es satisfacible en I. I A = ( y)r(x, y), con A(x) = 0. ( x)r(x, y) es insatisfacible en I. No existe n N tal que para todo m N, se tenga m n. Ejemplos: Sea I = (N, I) una estructura tal que I(R) =. ( y)r(x, y) es insatisfacible en I. No existe m N tal que para todo n N, se tenga m n. ( x)r(x, y) es satisfacible en I. I A = ( y)r(x, y), con A(x) = 0. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.49
Semántica: Validez en una estructura Validez en una estructura Def.: Sean F una fórmula de L e I una estructura de L. F es válida en I si, para toda asignación A en I, I A = F. Se representa por I = F. F no es válida en I si, para alguna asignación A en I, I A = F. Se representa por I = F. Ejemplos: Sea I = (N, I) una estructura tal que I(R) =<. I = ( y)r(x, y). Si A es una asignación en I, entonces I A = ( y)r(x, y) I A[y/A(x)+] (R(x, y)) = V I = ( y)r(x, y). Sea A una asignación en I tal que A(x) = 5. Entonces I A = ( y)r(x, y) I A[y/3] (R(x, y)) = F LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.50
Semántica: Satisfacibilidad y validez en una estructura Satisfacibilidad y validez en una estructura para sentencias Sea F una sentencia de L e I una estructura de L. F es válida en I syss F es satisfacible en I. Se cumple una, y sólo una, de las siguientes condiciones. F es válida en I. 2. F es válida en I. Cierres cuantificacionales: Sea F una fórmula de L, I una estructura de L y {x,..., x n } el conjunto de las variables libres de F. F es válida en I syss ( x )... ( x n )F es válida en I F es satisfacible en I syss ( x )... ( x n )F es satisfacible en I LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.5
Semántica: Modelo de una fórmula Modelo de una fórmula: Def.: Sean F una fórmula de L e I una estructura de L. I es un modelo de F si I = F. I no es un modelo de F si I = F. Ejemplos: Sea I = (N, I) una estructura tal que I(R) =<. Entonces I = ( y)r(x, y). I = ( y)r(x, y). Ejemplos: Sea F la fórmula ( x)f(x, e) = x. Las siguientes estructuras son modelos de F. (U, I) con U = N, I(e) = 0 e I(f) como la suma. (U, I) con U = {0, }, I(e) = ɛ e I(f) la concatenación. (U, I) con U = B, I(e) = e I(f) = H Las siguientes estructuras no son modelo de F (U, I) con U = N, I(e) = 5 e I(f) como la suma. (U, I) con U = N, I(e) = 0 e I(f) como el producto. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.52
Semántica: Satisfacibilidad de una fórmula Satisfacibilidad de una fórmula: Def.: Sea F una fórmula de L. F es satisfacible si tiene alguna realización (i.e. existe una estructura I y una asignación A en I tales que I A (F ) = ). F es insatisfacible si no tiene ninguna realización (i.e. para toda estructura I y toda asignación A se tiene que I A (F ) = 0). Ejemplos: ( y)r(x, y) es satisfacible I A (( y)r(x, y)) =, siendo I = (N, I), I(R) = y A(x) = 0. ( x)p (x) ( x) P (x) es insatisfacible. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.53
Semántica: Satisfacibilidad y modelo Propiedades: Sea F una fórmula cerrada. Son equivalentes: F es satisfacible. F tiene modelo. Si F es insatisfacible, entonces no tiene ningún modelo. Existen fórmulas satisfacibles que tienen realizaciones, pero no tienen modelos. Por ejemplo, sea F la fórmula x y. La fórmula F es satisfacible I A (F ) =, siendo I = ({p, q}, I), A(x) = p, A(y) = q La fórmula F no tiene modelo Sea I una estructura. Existe una asignación A en I tal que A(x) = A(y). Luego, I A (F ) = 0 y I = F. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.54
Semántica: Validez de una fórmula Validez de una fórmula: Def.: Sea F una fórmula de L. F es válida si toda estructura de L es modelo de F (i.e. para toda estructura I y toda asignación A se tiene que I A (F ) = ). Se representa por = F. F no es válida si alguna estructura de L no es modelo de F (i.e. existe alguna estructura I y alguna asignación A tales que I A (F ) = 0). Se representa por = F. Ejemplos: ( x)p (x) ( x) P (x) es válida. ( y)r(x, y) no es válida. I A (( y)r(x, y)) = 0, siendo I = (N, I), I(R) = y A(x) = 5. ( x)(p (x) ( y)p (y)) es válida. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.55
Semántica: Satisfacibilidad y validez Relaciones entre satisfacibilidad y validez: Prop.: F es válida syss F es insatisfacible. F es válida para toda estructura I y toda asignación A se tiene que I A (F ) = para toda estructura I y toda asignación A se tiene que I A ( F ) = 0 F es insatisfacible. Si F es válida, entonces F es satisfacible. F es válida = para toda estructura I y toda asignación A se tiene que I A (F ) = = existe una estructura I y una asignación A tales que I A (F ) = = F es satisfacible. F es satisfacible = / F es insatisfacible. ( x)p (x) es satisfacible. modelo I = (U, I) con U = {, 2} e I(P ) = {a} ( x)p (x) es satisfacible. modelo I = (U, I) con U = {, 2} e I(P ) = {a} LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.56
Semántica: Realización de un conjunto de fórmulas Notación: S, S, S 2,... representarán conjuntos de fórmulas. Realización de un conjunto de fórmulas: Def.: Sean S un conjunto de fórmulas de L, I una estructura de L y A una asignación en I. (I, A) es una realización de S si para toda F S se tiene que I A (F ) =. Se representa por I A = S. (I, A) no es una realización de S si para alguna F S se tiene que I A (F ) = 0. Se representa por I A = S. Ejemplos: Sea S = {( y)r(x, y), ( y)f(x, y) = y}. (I, A) con I = (U, I), U = N, R I =, f I = +, A(x) = 0 es realización de S. (I, A) con I = (U, I), U = N, R I = <, f I = +, A(x) = 0 no es realización de S. (I, A) con I = (U, I), U = N, R I =, f I =, A(x) = 0 no es realización de S. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.57
Semántica: Consistencia de un conjunto de fórmulas Consistencia de un conjunto de fórmulas: Def.: Sea S un conjunto de fórmulas de L. S es consistente si S tiene alguna realización (i.e. existe alguna estructura I de L y alguna asignación A en I tales que, para toda F S, I A (F ) = ). S es inconsistente si S no tiene ninguna realización (i.e. para toda estructura I de L y toda asignación A en I, existe alguna F S, tal que I A (F ) = 0). Ejemplos: S = {( y)r(x, y), ( y)f(x, y) = y} es consistente. (I, A) con I = (N, I), R I =, f I = +, A(x) = 0 es realización de S. S = {P (x) Q(x), ( y)p (y), Q(x)} es inconsistente. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.58
Semántica: Modelo de un conjunto de fórmulas Modelo de un conjunto de fórmulas: Def.: Sean S un conjunto de fórmulas de L e I una estructura de L. I es un modelo de S si para toda F S se tiene que I = F (i.e. para toda F S y toda asignación A en I se tiene I A (F ) = ). Se representa por I = S. I no es un modelo de S si para alguna F S se tiene que I = F (i.e. para alguna F S y alguna asignación A en I se tiene I A (F ) = 0). Se representa por I = S. Ejemplos: Sea S = {R(e, y), f(e, y) = y}. I = (N, I) con R I =, f I = +, e I = 0 es modelo de S. I = (N, I) con R I = <, f I = +, e I = 0 no es modelo de S. I = (N, I) con R I =, f I =, e I = 0 no es modelo de S. I = ({0, }, I) con R I = prefijo, f I = concatenación y e I = ɛ es modelo de S. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.59
Semántica: Consistencia y modelo Propiedades: Sea S un conjunto de fórmulas cerradas. Son equivalentes: S es consistente. S tiene modelo. Si S es inconsistente, entonces no tiene ningún modelo. Existen conjuntos de fórmulas consistentes que tienen realizaciones, pero no tienen modelos. Por ejemplo, sea S = {x y}. El conjunto S es consistente I A = S, siendo I = ({p, q}, I), A(x) = p, A(y) = q El conjunto S no tiene modelo Sea I una estructura. Existe una asignación A en I tal que A(x) = A(y). Luego, I A (x y) = 0 y I = F. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.60
Semántica: Consecuencia lógica Consecuencia lógica: Def.: Sean F una fórmula de L y S un conjunto de fórmulas de L. F es consecuencia lógica de S si todas las realizaciones de S lo son de F. (i.e. para toda estructura I de L y toda asignación A en I, si I A = S entonces I A = F ). (i.e. para toda estructura I de L y toda asignación A en I, si, para todo G S, I A (G) = entonces I A (F ) = ). Se representa por S = F. F no es consecuencia lógica de S si alguna realización de S no lo es de F. (i.e. para alguna estructura I de L y alguna asignación A en I se tiene que I A = S y I A = F ). (i.e. para alguna estructura I de L y alguna asignación A en I se tiene que, para todo G S, I A (G) = y I A (F ) = 0). Se representa por S = F. Se escribe G = F en lugar de {G} = F. Se escribe G = F en lugar de {G} = F. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.6
Semántica: Consecuencia lógica Ejemplos: ( x)p (x) = P (y) P (y) = ( x)p (x) (I, A) con I = (U, I), U = {, 2}, P I = {}, A(y) =. ( x)p (x) = ( y)p (y) ( x)p (x) = ( y)p (y) I = (U, I) con U = {, 2}, P I = {} I = (U, I) con U = N y P I = {n N : n es par ( x)( y)q(x, y) = ( y)( x)q(x, y) ( y)( x)q(x, y) = ( x)( y)q(x, y) I = (U, I) con U = {, 2}, Q I = {(, ), (2, 2)} I = (U, I) con U = N, Q I = < LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.62
Semántica: Consecuencia lógica Ejemplos: {P (x) Q(x), P (c)} = Q(c) {P (x) Q(x), Q(c)} = P (c) {P (x) Q(x), Q(c)} = P (c) {P (c), P (d)} = c d Ejemplos: Se consideran las fórmulas F : ( x)r(x, x), F 2 : ( x)( y)(r(x, y) R(y, x)). F 3 : ( x)( y)(r(x, y) R(y, x) x = y), {F 2, F 3 } = F {F, F 2 } = F 3 {F, F 3 } = F 2 Contraejemplo: I = (U, I) con U = {a, b} y R I = {(a, a)} Contraejemplo: I = (U, I) con U = {a, b} y R I = U 2 LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.63
Semántica: Consecuencia lógica Propiedades: S = F syss S { F } es inconsistente. S = F para toda estructura I de L y toda asignación A en I, si, para todo G S, I A (G) = entonces I A (F ) =. para toda estructura I de L y toda asignación A en I, si, para todo G S, I A (G) = entonces I A ( F ) = 0. para toda estructura I de L y toda asignación A en I, existe alguna H S { F } tal que I A ( H) = 0. S { F } es inconsistente. Sean F una fórmula cerrada de L y S un conjunto de fórmulas cerradas de L. Entonces, F es consecuencia lógica de S syss todos los modelos de S lo son de F. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.64
Semántica: Equivalencia lógica Equivalencia lógica Def.: Sean F y G fórmulas de L. F y G son equivalentes si para toda estructura I de L y toda asignación A en I, I A (F ) = I A (G). Se representa por F G. Ejemplos: P (x) P (y). I = ({, 2}, I) con P I = {} y A(x) =, A(y) = 2. ( x)p (x) ( y)p (y). ( x)(p (x) Q(x)) ( x)p (x) ( x)q(x). ( x)(p (x) Q(x)) ( x)p (x) ( x)q(x). I = ({, 2}, I) con P I = {} y Q I = {2}. Propiedades: Sean F y G fórmulas cerradas de L. F G syss = F G. F G syss F = G y G = F. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.65
Bibliografía C. Badesa, I. Jané y R. Jansana Elementos de lógica formal. 95 259 y 323 326. (Ariel, 2000) pp. M.L. Bonet Apuntes de LPO. (Univ. Politécnica de Cataluña, 2003) pp. 7 26. C. L. Chang y R.C. T. Lee Symbolic logic and mechanical theorem proving (Academic Press, 973) pp. 26 35. J. Dingel Propositional and predicate logic: a review. (2000) pp. 2-27. J.L. Fernández, A. Manjarrés y F.J. Díez Lógica computacional. (UNED, 2003) pp. 64 87. J.H. Gallier Logic for computer science (foundations of automatic theorem Proving) (June 2003) pp. 46 86. M. Huth y M. Ryan Logic in computer science: modelling and reasoning about systems. (Cambridge University Press, 2000) pp. 90 09 y 28 40. M. Ojeda e I. Pérez de Guzmán Lógica para la computación (Vol. 2: Lógica de primer orden) (Ágora, 997) pp. 37 y 49 5. L. Paulson Logic and proof (U. Cambridge, 2002) pp. 22 29. LI 2003 04 CcIa Sintaxis y semántica de la lógica de primer orden 6.66