FEUP / LEIC
TEORIA DA COMPUTAÇÃO II
EXERCÍCIOS DE LÓGICA PROPOSICIONAL
CONJUNÇÃO, DISJUNÇÃO E NEGAÇÃO
1 {3-6, 3-9} Negação, conjunção e disjunção. Abra um novo ficheiro de frases e o
mundo Wittgenstein’s World. Escreva as frases seguintes:
1. Tet(f) ∧ Small(f)
2. Tet(f) ∧ Large(f)
3. Tet(f) ∧ ¬Small(f)
4. Tet(f) ∧ ¬Large(f)
5. ¬Tet(f) ∧ ¬Small(f)
6. ¬Tet(f) ∧ ¬Large(f)
7. ¬(Tet(f) ∧ Small(f))
8. ¬(Tet(f) ∧ Large(f))
9. ¬(¬Tet(f) ∧ ¬Small(f))
10. ¬(¬Tet(f) ∧ ¬Large(f))
Qual o valor de verdade de cada uma delas? Verifique o resultado com Tarski’s World.
Sempre que haja desacordo, use o jogo para ver quem ganha. (Se houver sempre acordo,
jogue na mesma, para experimentar).
Mude o tamanho e forma do bloco f e preveja como isso afecta o valor das frases. Qual
o número máximo de frases que podem ficar verdadeiras num único mundo? Construa
um mundo no qual o máximo número de frases seja verdadeiro.
Repita o exercício trocando ∧ por ∨.
2 {3-11} Disjunção construtiva. Por vezes, é possível afirmar que uma frase é
verdadeira sem se saber como ganhar garantidamente o jogo respectivo. Por exemplo,
pode-se dizer que P ∨ ¬P é verdade mesmo sem se saber o valor de P. Abra Kleene’s
World e Kleene’s Sentences. Alguns objectos estão escondidos atrás de outros, pelo
que é impossível decidir a verdade de algumas frases. Todos os nomes a-f estão em
uso, referindo-se a algum objecto. Atribua um valor de verdade a cada frase atendendo
à informação, incompleta, de que dispõe (sem recorrer á vista 2D). Jogue o jogo. Se
tiver feito a atribuição certa, mas perder o jogo, desfaça alguns passos e retome até
conseguir ganhar. Finalmente verifique as atribuições com a vista 2D.
3 {3-13} Construir um mundo. Abra Schröder's Sentences. Construa um mundo em
que todas essas frases sejam verdadeiras.
4 {3-16} Equivalências de DeMorgan. Abra DeMorgan’s Sentences. Construa um
mundo em que todas as frases ímpares sejam verdadeiras. Seja qual for a solução, todas
as frases pares serão também verdadeiras. Depois construa um mundo em que todas as
frases ímpares sejam falsas. As pares ficam falsas. Porquê?
CRISTINA RIBEIRO
BOOLE - 1
FEUP / LEIC
TEORIA DA COMPUTAÇÃO II
5 {3-21, 3.22} Tradução. Abra um novo ficheiro de frases para escrever as traduções das
seguintes frases em Português para FOL.
1. a é pequeno ou tanto c como d são grandes.
2. d e e estão ambos atrás de b.
3. d e e estão ambos atrás de b e são maiores do que ele.
4. Tanto d como c são cubos; além disso nenhum deles é pequeno.
5. Nem e nem a estão à direita de c e à esquerda de b.
6. e não é grande ou está atrás de a.
7. c nem está entre a e b nem à frente de qualquer um deles.
8. a e e são ambos tetraedros ou são-no ambos a e f.
9. Nem d nem c estão à frente de c ou b.
10. c está entre d e f ou é menor que ambos.
11. Não se verifica que b esteja na mesma linha que c.
12. b está na mesma coluna que e, que está na mesma linha que d, que por sua vez
está na mesma coluna que a.
Para a tradução ser correcta os valores de verdade das frases em língua natural e das
suas traduções têm que ser os mesmos em todos os mundos. Use Wittgenstein’s
World, onde todas as frases são verdadeiras, e Boole’s World, onde apenas as frases 6 e
11 são verdadeiras, para testar a tradução. Construa alguns mundos em que as frases
assumam valores diversos e verifique a correcção da tradução também nesses casos (não
prova, mas ajuda a convencer!). Faça-o, alterando os tamanhos dos objectos e rodando o
tabuleiro.
6 {4.2} Tautologias. Assuma que A, B e C são frases atómicas. Use o Boole para
construir tabelas de verdade para cada uma das frases seguintes. Usando as tabelas,
diga quais das frases são tautologias.
1. (A ∧ B) ∨ (¬A ∨ ¬B)
2. (A ∧ B) ∨ (A ∧ ¬B)
3. ¬(A ∧ B) ∨ C
4. (A ∨ B) ∨ ¬(A ∨ (B ∧ C)).
7 {4.3} Frases não independentes. Suponha agora que as frases A, B e C do problema
anterior não são logicamente independentes. Determine quais das frases 1-4 do
problema anterior são satisfazíveis ou logicamente verdadeiras, em cada uma das
seguintes situações:
1. A é necessariamente verdadeira (e.g. A é b=b).
2. A é necessariamente falsa (e.g. Smaller(a,a)).
3. C é uma consequência lógica de A e B, i.e., sempre que A e B são verdadeiros, C
também o é (e.g. A é Larger(a,b), B é Larger(b,c) e C é Larger(a,c)).
CRISTINA RIBEIRO
BOOLE - 2
FEUP / LEIC
TEORIA DA COMPUTAÇÃO II
8 {4.4, 4.5, 4.6, 4.7} Tabelas de verdade. Suponha que A, B, C e D são frases atómicas
independentes. Construa tabelas de verdade para cada uma das frases seguintes. Indique
quais são satisfazíveis e quais são tautologias.
1. ¬(B ∧ ¬(C ∨ B))
2. A ∨ ¬(B ∨ ¬(C ∧ A))
3. ¬[(¬A ∨ ¬( B ∧ C)) ∨ (A ∧ B)]
4. ¬[(¬A ∨ B) ∧ ¬(C ∧ D)]
9 {Sec 4.3} Consequência lógica. As tabelas de verdade, para além da determinação da
verdade lógica, também podem servir para verificar a consequência lógica. Para saber
se Q é uma consequência lógica de P, construa uma tabela de verdade com todas as
frases atómicas de P e Q e os próprios P e Q e verifique se, em todas as linhas não
espúrias, sempre que P é verdade Q também o é (se esta propriedade se mantiver
mesmo nas linhas espúrias, fala-se de consequência tautológica).
1. Cubo(b) é uma consequência tautológica de (Cubo(a) ∨ Cubo(b)) ∧ Tet(a)?
2. Cubo(b) é uma consequência lógica de (Cubo(a) ∨ Cubo(b)) ∧ Tet(a)?
3. Cubo(b) é uma consequência tautológica de (Cubo(a) ∨ Cubo(b)) ∧ ¬Cubo(a)?
4. Cubo(b) é uma consequência lógica de (Cubo(a) ∨ Cubo(b)) ∧ ¬Cubo(a)?
5. Dodec(c) é uma consequência tautológica de Dodec(b) ∧ c=b?
6. Dodec(c) é uma consequência lógica de Dodec(b) ∧ c=b?
7. Dodec(c) é uma consequência lógica de Dodec(b) ∧ e=c?
10 {4.31} Forma normal negativa. Abra Turing’s Sentences. Escreva nas frases em
branco a forma normal negativa da frase imediatamente anterior. Construa um mundo
qualquer em que todos os nomes sejam usados. Cada frase par deve ter o mesmo valor
que a ímpar que a antecede. Verifique.
11 {4.39} Conversão de formas normais. Abra CNF Sentences. Converta cada frase
ímpar na outra forma normal e coloque-a na frase par a seguir. Construa um mundo em
que todas as frases ímpares sejam verdadeiras. Verifique se as pares também o são. As
formas normais habitualmente facilitam a determinação do valor de verdade de uma
expressão. A forma normal mais adequada depende do caso.
12 {4.40} Forma normal conjuntiva. Abra More CNF Sentences. Neste ficheiro existem
frases de três em três linhas. As duas linhas em branco destinam-se às mesmas frases
nas formas normais negativa e conjuntiva. Analise a correcção das transformações
abrindo vários mundos e verificando a igualdade dos valores de verdade em cada trio
de frases.
13 {4.41, 4.42, 4.43} Formas normais. Para cada uma das frases seguintes encontre uma
frase na forma normal disjuntiva que lhe seja logicamente equivalente. Assuma que A,
B, C e D são literais.
1. C ∧ (A ∨ (B ∧ C)).
2. B ∧ (A ∧ B ∧ (A ∨ B ∨ (B ∧ C))).
3. A ∧ (A ∧ (B ∨ (A ∧ C))).
CRISTINA RIBEIRO
BOOLE - 3
FEUP / LEIC
TEORIA DA COMPUTAÇÃO II
14 {5.1, 5.2, 5.3, 5.4, 5.5, 5.6} Passos válidos. Lista-se a seguir um conjunto de passos de
inferência dos quais apenas alguns são válidos. Diga quais, justificando com as tabelas
de verdade respectivas ou mostrando como um determinado passo pode levar de
premissas verdadeiras a conclusões falsas.
1. De P ∨ Q e ¬P inferir Q.
2. De P ∨ Q e Q inferir ¬P.
3. De ¬(P ∨ Q) inferir ¬P.
4. De ¬(P ∧ Q) e P inferir ¬Q.
5. De ¬(P ∧ Q) inferir ¬P.
6. De P ∧ Q e ¬P inferir Q.
15 {5.7} Prova informal. Prove Happy(carl) a partir das seguintes premissas, anotando
apenas os passos importantes, tais como o uso da prova por casos ou da prova por
contradição:
1. Home(max) ∨ Home(claire)
2. ¬Home(max) ∨ Happy(carl)
3. ¬Home(claire) ∨ Happy(carl)
16 {5.8} Consequência lógica. Prove BackOf(a,b) a partir das quatro premissas seguintes:
1. LeftOf(a,b) ∨ RightOf(a,b)
2. BackOf(a,b) ∨ ¬LeftOf(a,b)
3. FrontOf(b,a) ∨ ¬RightOf(a,b)
4. SameCol(c,a) ∧ SameRow(c,b)
17 {5.23, 5.24, 5.25} Números naturais. Prove os três factos seguintes sobre os números
naturais, a partir dos factos básicos da aritmética e das definições de par e ímpar.
a) Assuma que n2 é ímpar. Prove que n é ímpar.
b) Assuma que n+m é ímpar. Prove que n×m é par.
c) Assuma que n2 é divisível por 3. Prove que n2 é divisível por 9.
18 {6.2} Prova incompleta no Fitch. Abrir Exercise 6.2 que contém uma prova
incompleta. Completar os passos e as justificações e verificar a prova.
19 {6.3, 6.6} Provas em Fitch. Use o Fitch para construir provas formais para as
seguintes fórmulas.
a) a=c ∧ b=d
a partir de a=b ∧ b=c ∧ c=d
b) A ∧ (B ∨ C) a partir de (A ∧ B) ∨ (A ∧ C)
20 {Sec 6.3} Abrir Negation 2 com Fitch. A prova apresentada tem como premissas um
conjunto de fórmulas, das quais alguns subconjuntos são contraditórios.
-
Foque cada passo que contém o símbolo ⊥ e veja as frases que são citadas. Só um
destes passos é uma aplicação da regra ⊥ Intro. Complete-o e verifique.
-
Dos restantes passos, há um em que as frases citadas são contradições tautológicas.
Atribua-lhe a justificação Taut Con e verifique. (Este passo poderia ser derivado
das mesmas premissas apenas com as regras Booleanas.)
CRISTINA RIBEIRO
BOOLE - 4
FEUP / LEIC
TEORIA DA COMPUTAÇÃO II
-
Dos restantes passos, há dois cujas frases de suporte são contraditórias atendendo
ao significado do =. Atribua-lhe a justificação FO Con e verifique. (Este passo
poderia ser derivado das mesmas premissas usando as regras para o =.)
-
Verifique que os restantes passos não podem ser justificados pelas regras ⊥ Intro,
Taut Con e FO Con. Atribua-lhes a justificação Ana Con e verifique.
21 { 6.24, 6.25} DeMorgan. Construa provas informais e, em seguida, provas formais
semelhantes em estrutura, das seguintes frases, sem recorrer às leis de DeMorgan:
a) ¬P ∧ ¬Q a partir da premissa ¬(P ∨ Q).
b) ¬(P ∨ Q) a partir da premissa ¬P ∧ ¬Q.
22 {6.35, 6.38} Provas sem premissas. Construa provas formais sem premissas de:
a) ¬ (a=b ∧ Dodec(a) ∧ Cube(b))
b) ¬ (SameRow(a,b) ∧ SameRow(b,c) ∧ FrontOf(c,a))
c) ¬(a=b ∧ b≠a).
23 {6.28} Contradição em sentido lato. Produza uma prova formal no Fitch de Small(c)
a partir das premissas Cube(c) ∨ Small(c) e Dodec(c). Pode usar Ana Con
envolvendo literais e ⊥.
CRISTINA RIBEIRO
BOOLE - 5
Download

RCHPSIM V1.00