Matéria das aulas T8 (agentes lógicos: lógica proposicional, sintaxe e semântica) e T9 (inferência proposicional: resolução, cláusulas de Horn, DPLL, WALKSAT, agentes). Os exercícios são para trabalho autónomo, individualmente ou em grupos de dois. Os exercícios que ficarem por resolver na aula devem ser resolvidos em casa. Partes desta matéria apenas recapitulam matéria anteriormente dada na Unidade Curricular de Lógica Computacional, seguindo as convenções do AIMA, 4.ª edição.
Toda a terminologia é a do AIMA, 4.ª edição (capítulo 7, com a mesma numeração nas edições americana e global) e a dos slides T8 e T9.
Três amigos — a Ana, o Bruno e a Carla — vão jantar fora. Sobre quem pede sopa sabe-se o seguinte: pelo menos um dos três pede sopa; se a Ana pede sopa, o Bruno também pede; e a Carla só pede sopa se o Bruno não pedir.
(a) Escolha símbolos proposicionais e escreva a base de conhecimento KB (três frases).
(b) Quantos modelos há para estes símbolos? Construa a tabela de verdade e assinale os modelos de KB. Quantos são?
(c) Usando a tabela, decida se cada uma das frases seguintes é consequência lógica de KB: α₁ = «o Bruno pede sopa», α₂ = «o Bruno ou a Carla pedem sopa», α₃ = «a Ana e a Carla não pedem ambas sopa». Para as que não são, apresente um contra-modelo. O que faria TT-ENTAILS? em cada caso?
(d) Converta KB para FNC e classifique cada cláusula (definida, de Horn, objectivo, nenhuma). A KB toda é de Horn?
(e) Prove por resolução (refutação) que α₂ é consequência lógica de KB: acrescente as cláusulas de ¬α₂ e derive □.
(f) Repita a prova de α₂ com o DPLL sobre as cláusulas de KB ∧ ¬α₂, apresentando o traço na forma das provas (n.º, tipo, variável, valor). Que relação há entre o DPLL devolver false e KB ⊨ α₂?
(a) Classifique cada frase como válida, satisfazível mas não válida ou insatisfazível, justificando com uma tabela de verdade ou com um argumento curto.
(b) Para cada afirmação, diga se é verdadeira ou falsa e justifique (um contra-modelo chega para as falsas).
(c) Enuncie o teorema da dedução e use-o para reescrever a afirmação (b)(i) como uma frase válida e como uma frase insatisfazível. Porque é que a segunda forma é a base dos métodos de prova por refutação?
(d) Com n símbolos proposicionais, quantos modelos tem: uma frase válida? um literal? uma cláusula com k literais (de símbolos distintos)? uma conjunção de k literais de símbolos distintos? uma frase insatisfazível? Confirme a resposta da cláusula com n = 3, k = 2.
(e) O «ou» e o «implica» da lógica não são exactamente os da linguagem natural. Diga se cada frase é verdadeira ou falsa, como frase de lógica proposicional, num modelo em que os factos que conhece do mundo são verdadeiros: «5 é ímpar ⇒ Tóquio é a capital do Japão»; «5 é par ⇒ Lisboa é a capital de Espanha»; «2 é par ∨ 2 é primo». Que tipo de «ou» é o ∨?
O agente começa em [1,1], onde não sente brisa nem cheiro. Avança para [2,1] e sente brisa; volta a [1,1], sobe a [1,2] e sente brisa outra vez. Não há cheiro em nenhuma das três casas. A figura mostra o que o agente sabe, com a notação do livro (V = visitada, B = brisa, OK = casa segura, P? = poço possível).

(a) Escreva a KB relevante para os poços: a frase que diz que não há poço em [1,1], os três axiomas da brisa (um bicondicional para cada casa visitada — as casas da coluna 1 e da linha 1 têm menos vizinhas) e as três percepções.
(b) Converta o axioma da brisa de [2,1] para FNC. Quantas cláusulas dá um axioma de uma casa com k vizinhas? Para o tabuleiro 4 × 4 inteiro (16 axiomas da brisa), quantas cláusulas são?
(c) Que casas são OK (sem poço, de certeza)? Mostre, exibindo dois modelos de KB, que KB ⊭ P₂,₂ e KB ⊭ ¬P₂,₂: o agente não sabe se há poço em [2,2].
(d) Prove por resolução que KB ⊨ P₂,₂ ∨ P₃,₁. Depois, sem nova prova, justifique que KB ⊨ P₂,₂ ∨ (P₃,₁ ∧ P₁,₃) — que equivalência da fig. 7.11 usa?
(e) Fixados os valores que KB determina, os símbolos que ficam livres são P₂,₂, P₃,₁ e P₁,₃. Quantos modelos tem KB sobre estes três símbolos? Em quantos deles há poço em [2,2]? E em [3,1]? Se o agente fosse obrigado a avançar para uma casa não OK, qual escolheria com base nesta contagem? O que diz a lógica, e o que não diz, sobre o risco? (Os slides do T8 dão 0,86 e 0,31 para este caso — de onde virá a diferença? É matéria do T15.)
(f) Se a KB tivesse os 16 axiomas da brisa e todos os símbolos P e B do tabuleiro, quantos símbolos teria, e quantos modelos enumeraria TT-ENTAILS? para responder a (c)? O que é que a sua resposta a (e) faz de diferente?
(a) Converta para FNC, indicando os quatro passos:
Na alínea iv, que cláusulas descartou, e porquê?
(b) Resolva os pares de cláusulas seguintes e comente o resultado.
(c) Considere a KB = { A ∨ B, A ⇒ C, B ⇒ (C ∨ D), D ⇒ A }.
(d) O teorema da resolução básica diz que a resolução é completa por refutação. O que é que isso garante, e o que é que não garante? Dê um exemplo de uma frase α com KB ⊨ α que não se obtém de KB só por aplicação da regra da resolução (sem refutação).
Considere a base de conhecimento, com os factos A e B:
| R₁: (A ∧ B) ⇒ C | R₅: (A ∧ E) ⇒ G |
| R₂: C ⇒ D | R₆: G ⇒ F |
| R₃: (B ∧ D) ⇒ E | R₇: (H ∧ C) ⇒ A |
| R₄: (E ∧ F) ⇒ G | factos: A, B |
(a) Escreva cada frase como cláusula (disjunção de literais) e verifique que todas são cláusulas definidas. Se a KB tivesse também a frase C ⇒ (D ∨ E), que tipo de cláusula seria, e porque é que os dois encadeamentos deixavam de se poder aplicar?
(b) Desenhe o grafo E-OU da KB (como na fig. 7.16).
(c) Aplique o encadeamento para a frente (PL-FC-ENTAILS?) para a pergunta G. Em cada passo indique o símbolo que sai da agenda (queue), os contadores das regras e a agenda. Em que passo o algoritmo responde?
(d) Continue o encadeamento até a agenda esvaziar (como se a pergunta fosse H). Que símbolos ficam inferidos? O que acontece quando G é retirado da agenda pela segunda vez? Que relação há entre o conjunto final de símbolos inferidos e os modelos de KB?
(e) Aplique o encadeamento para trás à pergunta G, com as convenções. Em que ponto a detecção de ciclos é necessária? Compare o trabalho feito com o de (c): que factos e regras o encadeamento para trás nem chegou a tocar?
(f) H é consequência lógica de KB? Justifique com um modelo. Diga qual é a complexidade dos dois encadeamentos e por que razão a inferência em cláusulas de Horn é tão mais barata do que no caso geral.
(a) Verifique, usando o algoritmo DPLL, se o conjunto de cláusulas seguinte é satisfazível. Apresente o traço na forma das provas (n.º, tipo, variável, valor) e, se for satisfazível, o modelo.
{ (A ∨ B), (¬A ∨ E), (¬A ∨ ¬D ∨ ¬E), (¬B ∨ C), (¬B ∨ ¬C), (B ∨ ¬C), (C ∨ ¬D ∨ ¬E) }
(b) Usando apenas o traço do DPLL de (a), C é consequência lógica do conjunto de cláusulas de (a)?
(c) Verifique, usando o DPLL, se D é consequência lógica do conjunto de frases
{ A ⇒ ¬C, ¬B ⇒ E, B ⇔ ¬A, B ⇔ (D ∨ A) }
Comece por escrever as cláusulas de KB ∧ ¬D.
(d) Quantos modelos enumeraria TT-ENTAILS? em (a)? Quantas atribuições (linhas de divisão / retrocesso) fez o DPLL? Que três melhorias explicam a diferença?
(e) Repita (a) com falso antes de verdadeiro na divisão. E com a cláusula unitária verificada antes do símbolo puro? Compare o número de passos e comente a afirmação «a ordem das heurísticas e das divisões não influencia o tempo de execução do DPLL».
(f) Aplique o WALKSAT ao conjunto de (a), com p = 0,5, a partir do modelo em que todos os símbolos são falsos. Em cada passo há uma só cláusula falsa; a moeda deu, por esta ordem, passeio, ganho, passeio, ganho; nos passeios o símbolo sorteado foi B e depois A. Mostre o modelo em cada passo e o número de cláusulas satisfeitas por cada inversão possível nos passos de ganho. O que teria acontecido no segundo passo sem a regra de desempate? O que pode o WALKSAT concluir se o conjunto for insatisfazível?
(a) Classifique cada símbolo como fluente, percepção, acção ou atemporal: L^t₁,₁, HaveArrow^t, P₃,₁, Breezy₂,₁, Breeze^t, Stench^t, WumpusAlive^t, FacingEast^t, Forward^t, OK^t₂,₂, W₁,₃.
(b) Escreva o axioma de efeito da acção Forward para um agente em [1,1] virado a este, no instante t. O que fica por dizer sobre L^{t+1}₁,₁ e sobre HaveArrow^{t+1}? Como se chama este problema, e quantos axiomas de enquadramento por instante seriam precisos num mundo com m acções e n fluentes?
(c) Escreva os axiomas de estado sucessor de
Quantos axiomas de estado sucessor por instante tem o mundo 4 × 4 (16 casas, 4 orientações, HaveArrow, WumpusAlive, HaveGold)?
(d) Escreva o axioma que liga a percepção de brisa à casa: «se o agente está em [x, y] no instante t, sente brisa sse a casa é ventosa». Porque é que Breezy_{x,y} é atemporal e Breeze^t não? Escreva também a definição de OK^t_{x,y}.
(e) O problema da qualificação: dê um exemplo de uma condição que o axioma de (b) ignora. Porque é que não se resolve «acrescentando mais uma premissa»?
(f) No SATPLAN, a primeira versão da KB admitia um plano em que o agente estava em duas casas ao mesmo tempo. Escreva o axioma de precondição de Shoot e o axioma de exclusão entre Forward e Shoot. Com m acções, quantos axiomas de exclusão por instante são precisos, e qual é a alternativa com apenas um axioma?
Indique se cada afirmação é verdadeira ou falsa e justifique numa frase.