PONTIFICIA UNIVERSIDAD CATOLICA DE CHILE ESCUELA DE INGENIERIA DEPARTAMENTO DE CIENCIA DE LA COMPUTACION Lógica para Ciencia de la Computación - IIC2212 Interrogación 1 - Solución Problema 1 [1 punto] Responda sı́ o no a cada una de las siguientes preguntas. Justifique su respuesta. (a) [0.3 puntos] Los conectivos unarios ⊥ y > son definidos de la siguiente forma: p 0 1 ⊥p 0 0 p 0 1 >p 1 1 ¿Es {∧, ⊥, >} funcionalmente completo? Respuesta: No, {∧, ⊥, >} no es funcionalmente completo. Asuma que P = {p}. Vamos a demostrar por inducción que toda fórmula ϕ construida usando p y los conectivos {∧, ⊥, >} es equivalente a p, ⊥p o >p. Como ninguna de estas tres fórmulas es equivalente a ¬p, concluimos que ninguna fórmula construida usando p y {∧, ⊥, >} es equivalente a ¬p y, en particular, concluimos que {∧, ⊥, >} no es funcionalmente completo. - Caso base: Si ϕ = p, entonces la propiedad se cumple trivialmente. - Caso inductivo: Asuma que la propiedad se cumple para α y β. Si ϕ = ⊥α, entonces ϕ ≡ ⊥p. Si ϕ = >α, entonces ϕ ≡ >p. Finalmente, si ϕ = α ∧ β, entonces dependiendo de las equivalencias para α y β, ϕ va ser equivalente a: α ⊥p ⊥p ⊥p p p p >p >p >p 1 β ⊥p p >p ⊥p p >p ⊥p p >p ϕ ⊥p ⊥p ⊥p ⊥p p p ⊥p p >p (b) [0.3 puntos] ¿Es {→, ⊥} funcionalmente completo? Respuesta: Sı́, {→, ⊥} es funcionalmente completo. Como {→, ¬} es funcionalmente completo, para demostrar la propiedad basta notar que: ¬α ≡ α → (⊥α). (c) [0.4 puntos] El conectivo ternario M es definido de la siguiente forma: p 0 0 0 0 1 1 1 1 q 0 0 1 1 0 0 1 1 r 0 1 0 1 0 1 0 1 M (p, q, r) 1 1 1 0 1 0 0 0 ¿Es M funcionalmente completo? Respuesta: No, M no es funcionalmente completo. Asuma que P = {p}. Vamos a demostrar por inducción que toda fórmula ϕ construida usando p y el conectivo M es equivalente a p o ¬p. Como ninguna de estas dos fórmulas es equivalente a p ∧ ¬p, concluimos que ninguna fórmula construida usando p y M es equivalente a p ∧ ¬p y, en particular, concluimos que M no es funcionalmente completo. - Caso base: Si ϕ = p, entonces la propiedad se cumple trivialmente. - Caso inductivo: Asuma que la propiedad se cumple para α, β y γ, y que ϕ = M (α, β, γ). Entonces dependiendo de las equivalencias para α, β y γ, ϕ va ser equivalente a: α ¬p ¬p ¬p ¬p p p p p β ¬p ¬p p p ¬p ¬p p p 2 γ ¬p p ¬p p ¬p p ¬p p ϕ p p p ¬p p ¬p ¬p ¬p Problema 2 [1 punto] Dado un conjunto de letras proposicionales P , L∞ (P ) es el menor conjunto que satisface las siguientes reglas: V - Σ ⊆ L(P ), entonces ( Σ) ∈ L∞ (P ). - Si ϕ ∈ L∞ (P ), entonces (¬ϕ) ∈ L∞ (P ). - Si ϕ, ψ ∈ L∞ (P ), entonces (ϕ ∨ ψ) ∈ L∞ (P ) y (ϕ ∧ ψ) ∈ L∞ (P ). V V Por ejemplo, si P = {pi | i ∈ N} y Σ = {(¬pi ) | i ∈ N}, entonces ( Σ) y (¬( Σ)) son fórmulas en L∞ (P ). Note que la primera fórmula nos dice que todas las letras proposicionalesVson falsas,V mientras que la segunda nos dice que al menos una es verdadera. También note que (( Σ) ∨ (¬( Σ))) es una fórmula en L∞ (P ) que deberı́a ser siempre verdadera (tautologı́a). Dada una valuación σ : P → {0, 1} y una fórmula ϕ ∈ L∞ (P ), definimos σ(ϕ) de la siguiente manera: V - Si ϕ = ( Σ), donde Σ ⊆ L(P ), entonces ( 1 si para cada ψ ∈ Σ se tiene que σ(ψ) = 1 σ(ϕ) = 0 en caso contrario - Si ϕ = (¬α), entonces ( 1 σ(ϕ) = 0 si σ(α) = 0 si σ(α) = 1 - Si ϕ = (α ∨ β), entonces ( 1 σ(ϕ) = 0 si σ(α) = 1 o σ(β) = 1 si σ(α) = 0 y σ(β) = 0 ( 1 σ(ϕ) = 0 si σ(α) = 1 y σ(β) = 1 si σ(α) = 0 o σ(β) = 0 - Si ϕ = (α ∧ β), entonces Conteste las siguientes preguntas. (a) [0.4 puntos] Dado P = {pi | i ∈ N}, demuestre que existe una fórmula ϕ ∈ L∞ (P ) tal que ϕ no es equivalente a ningún Σ ⊆ L(P ). V Respuesta: Sea ϕ = ¬( {pi | i ∈ N}). Vamos a demostrar que ϕ no es equivalente a ningún Σ ⊆ L(P ). Por contradicción, asuma que existe Σ ⊆ L(P ) tal que ϕ ≡ Σ. Dado que toda fórmula en L(P ) es equivalente a un conjunto de claúsulas, podemos asumir que Σ es un conjunto de 3 claúsulas. Mas aún, dado que ϕ no es una tautologı́a, podemos asumir que existe una claúsula C ∈ Σ tal que C no es una tautologı́a. Asuma que C = l1 ∨ · · · ∨ ln y que pk es una variable proposicional en P tal que ni pk ni ¬pk son mencionadas en C. Sea σ : P → {0, 1} una valuación tal que σ(pk ) = 0 y σ(li ) = 0, para todo i = 1, . . . , n. Entonces, σ(ϕ) = 1 y σ(Σ) = 0 puesto que σ(C) = 0. Concluimos que ϕ y Σ no son equivalentes, lo que contradice nuestra suposición original. (b) [0.6 puntos] ¿Es el teorema de compacidad válido para la lógica proposicional infinitaria? Vale decir, dado Γ ⊆ L∞ (P ), ¿Es cierto que si todo subconjunto finito de Γ es satisfacible, entonces Γ es satisfacible? Respuesta: No, el teorema de compacidad no es válido para la lógica proposicional infinitaria. V Sea P = {pi | i ∈ N}, ϕ = ¬( {pi | i ∈ N}) y Γ = {ϕ} ∪ {pi | i ∈ N}. Es claro que este conjunto no es satisfacible. Vamos a demostrar que cada subconjunto finito de Γ si es satisfacible. Sea Γ0 ⊆ Γ un conjunto finito. Γ0 menciona un conjunto finito de fórmulas en {pi | i ∈ N}. Ası́, para satisfacer Γ0 basta considerar una variable proposicional pk tal que pk 6∈ Γ0 y una valuación σ : P → {0, 1} definida como σ(pk ) = 0 y σ(pj ) = 1 para cada pj ∈ Γ0 . Problema 3 [2 puntos] Dada una matriz C de 3 × 3 que contiene números entre 0 y 3, decimos que C es completable si es que existe una manera de reemplazar los números 0 por números entre 1 y 3 de tal forma que la suma de cada fila y de cada columna es la misma. Por ejemplo, la siguiente matriz es completable: 2 0 0 0 2 0 0 0 3 puesto que podemos reemplazar los valores 0 por los siguientes valores: 2 2 1 2 2 1 1 1 3 de manera tal que la suma de cada fila y de cada columna es 5. En cambio, la siguiente matriz no es completable: 1 0 3 1 0 0 1 0 0 Dada una matriz C de 3 × 3, construya una fórmula ϕ en lógica proposicional tal que C es completable si y sólo si ϕ es satisfacible. En particular, ϕ tiene que ser construida de tal forma que cada valuación σ que satisface a ϕ represente una forma de completar C. 4 Respuesta: Para cada i, j, k ∈ {1, 2, 3}, tenemos una variable proposicional pi,j,k que indica que el valor contenido en la posición (i, j) de la matriz C es k. Por ejemplo, en la última matriz de arriba tenemos que p1,1,1 y p3,1,3 son válidas. Para representar el problema vamos a definir ϕ como la conjunción de las siguientes fórmulas. Primero, necesitamos una fórmula que diga que a cada posición de la matriz le asignamos un único valor entre 1 y 3: 3 3 ^ ^ (pi,j,1 ∨ pi,j,2 ∨ pi,j,3 ) ∧ (pi,j,1 → ¬pi,j,2 ∧ ¬pi,j,3) ∧ i=1 j=1 (pi,j,2 → ¬pi,j,1 ∧ ¬pi,j,3 ) ∧ (pi,j,3 → ¬pi,j,1 ∧ ¬pi,j,2) . Segundo, necesitamos fórmulas que digan que si la suma de la primera fila es `, donde ` es un número entre 3 y 9, entonces la suma de las restantes filas y columnas también es `. Para hacer esto introducimos notación adicional. Decimos que suma(`) son todos los triples (`1 , `2 , `3 ) tal que `1 + `2 + `3 = ` y `1 , `2 , `3 ∈ {1, 2, 3}. Por ejemplo, suma(4) = {(1, 1, 2), (1, 2, 1), (2, 1, 1)}. Entonces, para cada ` entre 3 y 9, incluimos una fórmula que indica que si la suma de la primera fila es `, entonces la suma de la segunda fila también es `: _ (`1 ,`2 ,`3 )∈suma(`) (p1,1,`1 ∧ p1,2,`2 ∧ p1,3,`3 ) → _ (p2,1,m1 ∧ p2,2,m2 ∧ p2,3,m3 ) . (m1 ,m2 ,m3 )∈suma(`) También incluimos el mismo de tipo de fórmulas para la tercera fila y las tres columnas. Por ejemplo, para la tercera columna incluimos la fórmula: _ (p1,1,`1 ∧ p1,2,`2 (`1 ,`2 ,`3 )∈suma(`) ∧ p1,3,`3 ) → _ (p1,3,m1 ∧ p2,3,m2 (m1 ,m2 ,m3 )∈suma(`) ∧ p3,3,m3 ) . Finalmente, incluimos un conjunto de fórmulas que indican que valores son dados. Por ejemplo, para la última matriz de arriba, incluimos fórmulas: p1,1,1 , p1,2,1 , p1,3,1 y p3,1,3 . No es difı́cil demostrar que si ϕ es definida como la conjunción de todas las fórmulas anteriores, entonces C es completable si y sólo si ϕ es satisfacible. En particular, cada valuación σ que satisface a ϕ representa una forma de completar C. Problema 4 [2 puntos] En este problema se pide al alumno demostrar que si junto con las reglas de resolución y factorización podemos usar tautologı́as en cualquier parte de una demostración, entonces el sistema resultante es completo, vale decir, si C es una claúsula, Σ es un conjunto de claúsulas y Σ |= C, entonces Σ ` C. Formalmente, dada una claúsula C y un conjunto de claúsulas Σ, una demostración por resolución de C a partir de Σ es una secuencia de claúsulas C1 , C2 , . . ., Cn tal que: Para cada i ≤ n: - Ci ∈ Σ o 5 - Ci es una tautologı́a o - existe j < i tal que Ci es obtenido desde Cj usando la regla de factorización o - existen j, k < i tales que Ci es obtenido desde Cj y Ck usando la regla de resolución. Cn = C. Si C es demostrable desde Σ por resolución, entonces usamos la notación Σ ` C. Nótese que si C es una tautologı́a, entonces se deduce que Σ ` C trivialmente. Ası́, para demostrar que el sistema de demostración es completo, sólo necesitamos considerar dos casos. (a) [0.5 puntos] Demuestre que si Σ es inconsistente, entonces Σ ` C para toda claúsula C. (b) [1.5 puntos] Demuestre que si Σ es consistente, C no es una tautologı́a y Σ |= C, entonces Σ ` C. 6