Lic. Ciências da Computação 2010/2011 Teste de Lógica - Correcção 18 Janeiro 2011 Este teste é constituı́do por 8 questões. Justifique sucintamente todas as suas respostas. Duração: 2 horas. I Seja L = ({0, 1}, {+}, {=}) uma linguagem de 1a ordem onde + e = são sı́mbolos binários. 1. Defina por recursão a função: f : TL → TL tal que f (t) é o resultado de substituir em t todas as variáveis por 0. Resolução: f define-se recursivamente por: f (c) f (x) f (t1 + t2 ) = c = 0 = f (t1 ) + f (t2 ) c ∈ {0, 1} qq t1 , t2 ∈ TL 2. Mostre por indução que: para todo t ∈ TL , var(f (t)) = ∅. (N.B. var é a função que, a cada t ∈ TL , faz corresponder {x ∈ V : x ocorre em t}.) Resolução: Seja Q(t) a condição “var(f (t)) = ∅” sobre t ∈ TL . Pelo Princı́pio de Indução associado a TL , para provar que Q(t) é verdade para todo t ∈ TL , basta demonstar as proposições (i), (ii) e (iii) abaixo indicadas. (i) Q(c), com c ∈ {0, 1}. Q(c) afirma var(f (c)) = ∅. Ora var(f (c)) = var(c) = ∅, usando, sucessivamente, a defs. de f e var. (ii) Q(x), com x ∈ V. Q(x) afirma var(f (x)) = ∅. Ora var(f (x)) = var(0) = ∅, usando, sucessivamente, a defs. de f e var. (iii) para todo t, t0 ∈ TL , se Q(t) e Q(t0 ) então Q(t + t0 ). Sejam t, t0 ∈ TL tais que Q(t) e Q(t0 ). Queremos mostrar Q(t + t0 ), que afirma var(f (t + t0 )) = ∅. Ora var(f (t + t0 )) = = = = var(f (t) + f (t0 )) (def. f ) var(f (t)) ∪ var(f (t0 )) (def. var) ∅∪∅ (por Q(t) e Q(t0 )) ∅ 3. Qualquer variável está livre para f (t) em qualquer ϕ ∈ FL . Porquê? Resolução: Porque var(f (t)) = ∅. Por esta razão é impossı́vel haver uma ocorrência livre de uma variável numa fórmula no alcance de um quantificador Qy, com y ∈ var(f (t)). 4. (a) Defina o modelo usual desta linguagem em N0 . Resolução: U = N0 e 0 = 0 e 1 = 1 e + : N20 → N0 é tal que +(n, m) = n + m e = : N20 → {0, 1} é tal que =(n, m) = 1 sse n = m. (b) Indique quantos modelos de L existem com domı́nio U = {0}. Resolução: Existem 1 × 1 × 1 × 2 = 2 modelos com domı́nio U = {0}. Para os sı́mbolos 0 e 1 há uma interpretação (a saber 0 ∈ U ); para + também há apenas uma interpretação possı́vel (a saber: a função que envia (0, 0) em 0). Para = há duas escolhas: a função que envia (0, 0) em 0 e a que envia em 1. 5. Prove ou refute as seguintes afirmações: (a) |= ∃x x = 0 + 1 . Resolução: A afirmação é falsa porque existe uma valoração que não satisfaz a fórmula. Basta tomar v = (N0 , I, a) em que a é atribuição qualquer em N0 e I é a interpretação usual de L em N0 , excepto na interpretaão do sı́mbolo =, que é =(n, m) = 0, para todo n, m ∈ N0 . Ora, v satisfaz ∃x x = 0 + 1 sse existe n ∈ N0 tal que =(n, 1) = 1. Mas não existe n nestas condições, devido à definição de =. (b) ∃x x = 0 + 1 |= . Resolução: A afirmação é falsa, porque existe uma valoração que satisfaz a fórmula. Basta tomar v = (N0 , I, a) em que a é atribuição qualquer em N0 e I é a interpretação usual de L em N0 . Ora, v satisfaz ∃x x = 0 + 1 sse existe n ∈ N0 tal que n = 1. (c) ∀x x = 0 + 1 |= ∀x x = 1 + 0 . Resolução: A afirmação é falsa, pois existe valoração que satisfaz ∀x x = 0+1 mas não satisfaz ∀x x = 1+0. Basta tomar v = (N0 , I, a) em que a é atribuição qualquer em N0 , 0 e 1 recebem as interpretações usuais, mas +(n, m) = m e =(n, m) = 1 sse m = 1, para todos n, m ∈ N0 . v satisfaz ∀x x = 0+1 pois, para todo n ∈ N0 , =(n, 1) = 1; mas v não satisfaz ∀x x = 1 + 0, pois não é verdade que, para todo n ∈ N0 , =(n, 0) = 1. II 6. Sejam ϕ, ψ ∈ FP . (a) Construa uma derivação em DNP provando (ϕ ∧ ψ) ∨ ϕ ` ϕ ∧ (ψ ∨ ϕ). Resolução: [ϕ ∧ ψ]2 E∧ [ϕ]2 (ϕ ∧ ψ) ∨ ϕ ϕ [ϕ ∧ ψ] E∨2 1 E∧ ϕ (ϕ ∧ ψ) ∨ ϕ ϕ [ϕ] 1 I∨ E∨ ϕ ψ∧ϕ I∧ ϕ ∧ (ψ ∨ ϕ) 1 (b) Construa uma derivação em DNP provando ϕ ∧ (ψ ∨ ϕ) ` (ϕ ∧ ψ) ∨ ϕ. Resolução: ϕ ∧ (ψ ∨ ϕ) E∧ ϕ I∨ (ϕ ∧ ψ) ∨ ϕ (c) Conclua, usando (a) e (b), que (ϕ ∧ ψ) ∨ ϕ ⇔ ϕ ∧ (ψ ∨ ϕ). Resolução: Usando as derivações de (a) (b), obtemos, por aplicação de I ↔, uma derivação de ((ϕ ∧ ψ) ∨ ϕ) ↔ (ϕ ∧ (ψ ∨ ϕ)) a partir de ∅. Então ` ((ϕ ∧ ψ) ∨ ϕ) ↔ (ϕ ∧ (ψ ∨ ϕ)), donde segue, pelo Teorema da Correcção, |= ((ϕ ∧ ψ) ∨ ϕ) ↔ (ϕ ∧ (ψ ∨ ϕ)). Mas este facto é equivalente a (ϕ ∧ ψ) ∨ ϕ ⇔ ϕ ∧ (ψ ∨ ϕ). 7. Seja Γ ⊆ FP . Mostre que Γ é sintacticamente inconsistente sse existe ϕ ∈ FP tal que Γ ` ϕ e Γ ` ¬ϕ. Resolução: (⇒) Suponhamos que Γ é sintacticamente inconsistente, ou seja Γ `⊥. Queremos indicar ϕ e construir uma derivação de ϕ (resp. ¬ϕ) a partir de Γ. Seja D derivação de ⊥ a partir de Γ. Seja ϕ fórmula ar⊥ bitrária. Então, se acrescentarmos a D a inferência ⊥ ϕ (resp. ¬ϕ ), obtemos derivação de ϕ (resp. ¬ϕ) a partir de Γ. (⇐) Seja ϕ tal que Γ ` ϕ e Γ ` ¬ϕ. Queremos construir derivação D de ⊥ a partir de Γ. Sejam D1 (resp. D2 ) derivações de ϕ (resp. ¬ϕ) a partir de Γ. D obtém-se de D1 e D2 por uma aplicação de E¬. 8. Sejam ϕ, ψ ∈ FP . Mostre o Teorema da Instanciação para fórmulas logicamente equivalentes: se ϕ ⇔ Ψ então, para todo σ ∈ FP , para todo p ∈ VP , ϕ[σ/p] ⇔ Ψ[σ/p]. Resolução: Suponhamos ϕ ⇔ Ψ. Fixemos σ e p. Queremos demonstrar ϕ[σ/p] ⇔ Ψ[σ/p]. De ϕ ⇔ Ψ segue |= ϕ ↔ Ψ. Pelo Teoema da Instanciação (para tautologias), segue |= (ϕ ↔ Ψ)[σ/p]. Mas (ϕ ↔ Ψ)[σ/p] = ϕ[σ/p] ↔ ψ[σ/p]. Então |= ϕ[σ/p] ↔ ψ[σ/p], donde ϕ[σ/p] ⇔ Ψ[σ/p]. Cotações: Questão 3: 1 valor. Questões 1, 4, 7 e 8: 2 valores cada. Questões 2 e 5: 3 valores cada. Questão 6: 5 valores.