Lógica predicados Lógica predicados (continuação) Lógica predicados Uma formula está na forma normal conjuntiva (FNC) – se é uma conjunção de cláusulas. Qualquer fórmula bem formada pode ser convertida para uma FNC, ou seja, normalizada, seguindo os passos: 1º eliminando todas as implicações: p → q = ~pvq 2º reduzir o escopo das negações: ~(pΛq) ≡ (~p v ~q) e ~(pvq) ≡ (~p Λ ~q) 3º reduzir o escopo das disjunções: p v (qΛr) ≡ (p v q) Λ (p v r) Exemplo: Lógica predicados Observe os argumentos: {homem(Sócrates); x[homem(X) → mortal(X)]} ≡ mortal(Sócrates) Normalizando as fórmulas, obtemos: {homem(Sócrates); ~homem(X) v mortal(X)} ≡ mortal(Sócrates) H(s); ~H(x) v m(x) Logo, m(s) Observe que a regra de inferência por resolução não pode ser aplicada diretamente para deduzir que Sócrates e mortal, pois as fórmulas homem(Sócrates) e homem(X) não são complementares. Entretanto, como a variável X e universal, podemos substituí-la por qualquer constante do domínio. Então, fazendo X = Sócrates, obtemos uma nova instância da formula: homem(X) v mortal(X) e, assim, podemos inferir a conclusão desejada. H(s); ~H(S) v m(S) (fazendo X = socrates ) ; Logo, m(S) Lógica predicados: Inferência na lógica de predicados O princípio de instanciação universal é o processo que permite substituir uma variável por uma constante sem alterar a sua lógica. Infelizmente, esse princípio só funciona corretamente para variáveis universais ( ) Considere a sentença: “Todo mestre tem um discípulo", que pode ser traduzida como: x [mestre(x) → ∃ Y [discípulo(y,x)]] Sendo X uma variável universal, podemos substituí-la por qualquer constante e a sentença obtida continuara sendo verdadeira. Lógica predicados: Inferência na lógica de predicados x [mestre(x) → ∃ Y [discípulo(y,x)]] Ex.: fazendo x = Pedro, obtém-se a seguinte instância: mestre(pedro) → ∃ Y [discípulo(Y; pedro)]. Note que se “mestre(pedro)” for verdade, a semântica da sentença original forçará “∃ Y [discípulo(Y; pedro)] ser verdade também. Pois (v → v = v), concluí-se que a instância obtida e verdadeira. Por outro lado, se “mestre(pedro)” for falso, independentemente do valor da fórmula “∃ Y [discípulo(Y; pedro)]” a instância obtida também e verdadeira, pois (F → F = v e F → v = v). Lógica predicados O que ocorre ao substituir a variável existencial? x [mestre(x) → ∃ Y [discípulo(y,x)]], Seja Y= Pedro Estabelece que: “Todo mestre tem um discípulo chamado Pedro". Evidentemente, o significado da sentença original foi alterado. Isso acontece porque o valor de Y depende do valor escolhido para X. Lógica predicados Exemplos: Seja a proposição: “Todo cão é fiel a alguém” x[cao(x) → ∃y [fiel(x,y)] Instanciação universal. Seja x=rex Instâcia: cao(rex) → ∃y [fiel(rex,y)] Significado: “Se rex é um cão, então rex é fiel a alguém” Conclusão: a fórmula e sua instância tem significados coerentes. Instanciação existencial. Seja y = Ana. Instância: x[cao(x)→ [fiel(x,ana)] Significado: Todo cão é fiel a Ana. Conclusão: a fórmula e sua instancia não tem significado coerente. A instanciação é coerente para o quantificador universal Lógica predicados Regra da “Instanciação Universal”: Se uma propriedade é verdadeira para cada objeto no domínio. Então a propriedade é verdadeira para um objeto em particular do domínio. A propriedade pode ser definida, por exemplo, em termos de uma fórmula matemática, definição ou teorema. Instanciação universal é a ferramenta fundamental do raciocínio dedutivo. Lógica predicados Regra de instanciação universal + modus ponens – Versão informal: Se x faz com que P(x) seja verdadeiro então x faz com que Q(x) seja verdadeiro. “a” faz com que P(a) seja verdadeiro; Logo, “a” faz com que Q(a) seja verdadeiro; – Versão formal: x, se P(x) então Q(x); P(a) para a em particular; Logo, Q(a). Lógica predicados Modus Ponens Universal Exemplo: Seja a proposição: “Se um número é par, então seu quadrado é par” Se um [número é par] = E(x) então [seu quadrado é par] = S(x); instanciação: k é um número que é par; Logo, k2 é par. Reescrevendo com quantificadores, variáveis e predicados: Para todo número par, então seu quadrado é par. x, E(x) → S(x); Instanciando: E(k) para k em particular; Logo, S(k). Lógica predicados Regra de instanciação universal + modus tollens – Versão informal: Se x faz com que P(x) seja verdadeiro então x faz com que Q(x) seja verdadeiro. “a “ não faz com que Q(a) seja verdadeiro; Logo, “a” não faz com que P(a) seja verdadeiro; – Versão formal: x, se P(x) então Q(x); ~Q(a) para “a” em particular; Logo, ~P(a). Lógica predicados Regra de instanciação universal + modus tollens Exemplo: Todos seres humanos são mortais; Zeus não é mortal; Logo, Zeus não é humano. Reescrevendo com quantificadores: H(x): x é humano; M(x): x é mortal; M(z): Zeus mortal x, H(x) → M(x); ~M(z) para z em particular; Logo, ~H(z) para z em particular. H(x) → M(x) ~M (z) Para z particular: H(z) → M(z) ~M (z) Logo, ~H(z). Lógica predicados Provando validade de argumentos com proposições quantificadas Definição (forma de um argumento): A forma de um argumento é válida quando os símbolos dos predicados nas premissas forem substituídos por quaisquer predicados em particular, se as premissas resultantes forem verdadeiras então a conclusão também é verdadeira. Um argumento é válido se somente se sua forma é válida. Lógica predicados Provando validade de argumentos com proposições quantificadas Prova de validade da regra do Modus Ponens Universal: x, se P(x) então Q(x); P(a) para “a” em particular; Logo, Q(a). Mostrar que Q(a) é Verdadeiro (o que deve ser provado). 1– Suponha que as premissas p(x) e q(x) são Verdadeiras 2– Pela premissa P(a) é Verdadeiro para um “a” particular 3– Por 1 pela regra de instanciação universal a afirmação “ P(a) → Q(a)” é Verdadeira para o valor de “a” em particular. 4– Se as proposições P(a) → Q(a) e P(a) são Verdadeiras, então por modus ponens a proposição Q(a) também é Verdadeira. (como proposto a ser provado). Lógica predicados Regras de inferência na lógica de predicados Lógica predicados Particularização Universal (PU) Essa regra diz que podemos deduzir P(x), P(y), P(a), etc. de (x)(P(x)), retirando seu quantificador universal. A justificativa intuitiva para esta regra e que se o predicado (ou formula) P e verdadeiro para todos os elementos do domínio, então podemos nomear um elemento qualquer deste domínio por um nome arbitrário de variável ou por um símbolo de constante que P continuara sendo verdadeiro para esta nova variável ou constante. A particularização universal pode ser “semi-formalizados” pelo seguinte esquema: Todos os A, são B. “a” e um A. Logo, a e um B. (x)(A(x) → B(x)), A(a) ≡ B(a) que pode facilmente ser demonstrado por: 1 ( x)(A(x) → B(x)) hip 2 A(a) hip 3 A(a) → B(a) 1, pu 4 B(a) 2, 3, mp Lógica predicados Particularização Existencial Essa regra diz que, a partir de (∃x)(P(x)), podemos deduzir P(y), P(z), P(a), P(b), etc. desde que y, z, a, b, etc. sejam essencialmente símbolos novos. A justificativa intuitiva para esta regra e que se P e verdadeira para algum elemento do domínio, então podemos dar um nome especifico para ele, mas não podemos supor nada mais a seu respeito, isto é, nada nos impede de dar um (novo) nome a este suposto elemento “x” que satisfaz P(x). Para exemplificar, considere o argumento: Todos os A são B. Existe algum A. Logo, um fulano é B. onde “fulano” indica alguém que não conhecemos mas que sabemos certamente que “e B”. Este argumento pode ser totalmente formalizado por: . . Lógica predicados Generalização Universal - Essa regra permite que se insira um quantificador universal. Esta inserção somente pode ser feita se estivermos seguros que a sentença aberta P(x) e verdadeira e que a variável x, usada nesta sentença, indica um elemento realmente arbitrário, isto é x pode realmente ser qualquer elemento do domínio. Neste caso então nada impede de afirmar (x)(P(x)). Porem se existir alguma pressuposição na demonstração de que x é algum elemento específico do domínio (por exemplo, P(x) foi obtido por particularização existencial) então se pode generalizar P(x) para (x)(P(x)). Exemplo: x, (P(x)→Q(x)), y, P(y) ≡ x, Q(x) Demonstração: 1 - x, (P(x)→Q(x) 2 - y, P(y) 3 - P(x) →Q(x) 4 - P(x) 5 - Q(x) 6 - x, Q(x) hipótese hipótese 1, part. universal 2, part. Universal (não há restrição em pu) 3, 4 MP 5, generalização universal Lógica predicados Generalização Existencial (GE) A regra permite a inserção de um quantificador existencial. De P(x) ou P(a), podemos deduzir (∃ x)(P(x)). A justificativa intuitiva para esta regra e que se alguma já foi nomeada como tendo a propriedade P, então podemos afirmar que existe alguma coisa com a propriedade P, logo (∃ x)(P(x)). Para exemplificar, vamos provar o argumento: (x)(P(x)) ≡ (∃ x)(P(x)) pela seguinte demonstração: 1 (x)(P(x)) hip 2 P(x) 1, pu 3 (∃ x)(P(x)) 2, ge A restrição da generalização existencial serve para evitar que, por exemplo, formulas similares a P(a,y) possa deduzir (∃ y)(P(y,y)). Lógica predicados Prove que os seguintes argumentos são validos: a) (x)(P(x)) ≡ (x) ((P(x) v Q(x)) Demonstração: 1234- x, P(x) P(x) P(x) v Q(x) x, P(x) v Q(x) hipótese pu adição disjuntiva gu b) ( x)(P(x)), (∃ x)(Q(x)) ≡ (∃ x)(P(x) Λ Q(x)) c) ( x)(P(x)), (∃ x) (~P(x)) ≡ (∃ x)(Q(x)) d) (∃ x)( A(x) Λ B(x) ) ≡ (∃ x)(A(x)) Λ (∃ x)(B(x)) e) (∃ x) ( y)(Q(x,y)) ≡ ( y)(∃ x)(Q(x,y)) Lógica predicados Exercício. 1) Paulo é estudioso e simpático. Se alguém é simpático ou inteligente, então é popular. Portanto, existe alguém estudioso e popular. Simbolicamente: 1- E(p) Λ S(p) 2- x, [S(x) v I(x) → P(x)] C: ∃(x), [E(x) Λ P(x)] 3456789- IU,2 [S(p) v I(p) → P(p)] 1,simp. E(p) 1, simp. S(p) 5, AD S(p) v I(p) 3,6,MP P(p) 4,7,C E(p) Λ P(p) 8,GE ∃(x)[E(x)Λ P(x)].