Inferência

Frank Coelho de Alcantara -2020   

Conceitos: Argumento

Argumento é uma forma de raciocínio que permite a percepção de uma conclusão. A conclusão é a consequência lógica do argumento.

Formalmente: um argumento é uma coleção de premissas que implicam em uma tese.

Também podemos dizer que um argumento é uma conjunção de premissas que implicam em uma tese.

Cláusulas ou premissas

Originalmente definimos um silogismo como sendo um argumento composto de premissa, consequência e conclusão.

Hoje, a maior parte dos textos acadêmicos definem silogismo como um argumento composto de duas premissas e uma conclusão.

Não havendo uma contradição, o uso da palavra premissa, ou cláusula, não altera o conceito de argumento.

Validade do Argumento

Dizemos que um argumento é válido se, e somente se, a conclusão é verdadeira se todas as premissas são verdadeiras. Caso contrário o argumento é falso.

Isto é o mesmo que dizer que um argumento será válido se, na interpretação onde todas as premissas são verdadeiras, a conclusão for verdadeira.

Observe que definimos a validade do argumento apenas usando a interpretação onde todas as premissas são verdadeiras.

Importante: além de verdadeiras, as hipóteses devem suportar a conclusão. Ou, caímos em uma falácia.

Tipos de Argumentos

Um argumento pode ser:

  • Indutivo: usa uma coleção de premissas e as usa para propor a conclusão (possibilidades e probabilidades).
  • Dedutivo: usa uma coleção de premissas e as usa para provar a conclusão (consequência lógica).

O argumento indutivo é experimental, ou observacional.

O argumento dedutivo é a consequência lógica da verdade das premissas.

Sintaxe Formal

Já vimos um alfabeto $\Sigma=\{\neg, \wedge, \vee, \rightarrow, \leftrightarrow, \Leftrightarrow, \vdash, \vDash, (, ) \}$ para definir fórmulas lógicas. E uma sintaxe, sem definir exatamente a gramática, que permite a redação de fórmulas bem formadas.

Precisamos definir axioma:

Um axioma é uma premissa cuja verdade é incontestável. Uma verdade tão evidente que nenhum raciocínio, ou análise pode torná-la mais clara.

Estendendo a Sintaxe formal

Estendendo o alfabeto $\Sigma=\{\neg, \wedge, \vee, \rightarrow, \leftrightarrow, \Leftrightarrow, \top, \bot, \vdash, \vDash, (, ) \}$

Onde $\top$ é lido como verum, ou verdade; e $\bot$ é lido como falsum ou falso.

Importante: apresentaremos os argumentos em listas, ou por meio de uma regra geral de formação.

Preferivelmente: regras gerais de formação.

Teorema

Definimos teorema como uma sequência tautológica, gerada por argumentos axiomáticos, préviamente existentes no sistema por meio da aplicação das Regras de Inferência. Provamos um teorema por meio da derivação de axiomas $e$ de tal forma que será possível encontrar a verdade de um axioma $e_n$, por meio de $e_1, e_2, e_3,...$ axiomas, desde que todos estes axiomas façam parte do sistema lógico adotado e sejam válidos em uma interpretação determinada.

A prova de um teorema existe em um procedimento de decisão caracterizado por um conjunto finito, não ambíguo, de operações para determinar se uma sequência de axiomas, em um tempo finito, é, ou não, válida em um determinado sistema formal que define a validade dos axiomas.

Argumento Validade Formal

Uma sequência de axiomas $e_1, e_2, e_3,...$ com $n >= 1$ onde os $n-1$ primeiros axiomas são chamados de premissas e o último $e_n$ é chamado de conclusão. De tal forma que: $$e_1, e_2, e_{...} \vDash e_n$$

Este argumento será considerado válido se, somente se:$$e_1, e_2, e_{...} \Rightarrow e_n$$

Ou seja, se $e_n$ for uma consequência lógica de $e_1, e_2, e_{...}$.

A consequência lógica é chamada de Tese.

Lendo argumentos

$$e_1, e_2, e_{...} \vDash e_n$$

É lido $e_n$ se deduz de $e_1, e_2, e_{...}$.

É possível inferir $e_n$ a partir de $e_1, e_2, e_{...}$.

$e_n$ a partir de $e_1, e_2, e_{...}$ acarretam $e_n$.

Sistema Formal

Um sistema formal é definido por:

  • Alfabeto: $\Sigma=\{\neg, \wedge, \vee, \rightarrow, \leftrightarrow, \Leftrightarrow, \vdash, \vDash, \top, \bot, (, ) \}$
  • Sintaxe:
    1. Toda variável, símbolo atômico, é uma fórmula bem formada;
    2. Se $A$ e $B$ são fórmulas bem formadas então: $\neg A$ e $A\rightarrow B$ também são;
    3. Uma fórmula bem formada só pode ser obtida pelas regras anteriores.
  • Não usamos $\top$ ou $\bot$ para construir fórmulas, apenas na sua análise.

Sist. Formal: Correção e Completude

Correção: dizemos que um sistema formal é correto se, e somente se, todas as sequências que podem ser geradas como teorema são verdadeiras. Um sistema é correto se todas as sequências são tautológicas o que implica que todos os teoremas são verdadeiros. Todo Teorema é uma Tautologia.

Completude: dizemos que um sistema formal é completo se, e somente se, todas as sequências estejam corretas do ponto de vista semântico (tautologia) possam ser criadas como um teorema do sistema. Um sistema formal é completo se as sequências forem criadas a partir de axiomas e regras de inferência.Toda Tautologia é um Teorema.

Exercício 1:

Prove, ou não, os seguintes argumentos:

  1. $( A \rightarrow ( B \rightarrow A ))$
  2. $(( A \rightarrow ( B \rightarrow C )) \rightarrow (( A \rightarrow B ) \rightarrow ( A \rightarrow C )))$
  3. $(( \neg A \rightarrow \neg B ) \rightarrow ( B \rightarrow A ))$

Todo axioma é uma tautologia, mas nem toda tautologia é axioma.

Todo teorema é tautologia, e toda tautologia é teorema.

Sistema Formal

Definiremos um sistema formal para inferência contendo apenas axiomas, expressões atômicas, representadas por letras maiúsculas latinas e as operações $\neg$ e $\rightarrow$.

Isto simplifica o raciocínio de implicação e dedução, mas não exclui representação de fórmulas mais complexas: $A \leftrightarrow (p \vee q)$.

Desde que todas as fórmulas envolvidas sejam bem formadas e estejam de acordo com o sistema.

Sistema Formal

Como qualquer fórmula bem formada pode ser uma variável axiomática, temos um número infinito de axiomas possíveis. Precisamos determinar quais axiomas considerar:

  1. Para: $( ( p \rightarrow q ) \rightarrow ( \neg p \rightarrow ( p \rightarrow q ) ) )$, escolhemos $A \Leftrightarrow (p\rightarrow q)$ e $B \Leftrightarrow \neg p$ e temos $( A \rightarrow ( B \rightarrow A ) )$
  2. Para: $((\neg p \rightarrow ( \neg p \rightarrow \neg p)) \rightarrow ((\neg p \rightarrow \neg p) \rightarrow (\neg p \rightarrow \neg p)))$, escolhemos $A \neg p$ e $B \Leftrightarrow (\neg p \rightarrow \neg p)$ e temos $((A \rightarrow B) \rightarrow (B \rightarrow B))$

Muito Importante! a escolha dos axiomas não pode alterar a verdade do argumento.

Um pouco mais de conceitos

Dizemos que $A$ implica em $B$ se a sentença condicional "se $A$ então $B$" for uma tautologia.

Simbolicamente se $A\rightarrow B$ for uma tautologia podemos usar $A\Rightarrow B$ ou $A\vDash B$

$A\rightarrow B$ é uma fórmula bem formada construída a partir de $A$ e $B$. Tem valores que dependem de $V(A)$ e da $V(B)$.

$A\Rightarrow B$ ou $A\vdash B$ é uma tautologia. $B$ é uma consequência lógica de $A$.

Se tanto o axioma $A$ quanto a implicação $A\rightarrow B$ são verdadeiras, a conclusão $B$ é verdadeira. Logo: $$A\wedge (A\rightarrow B) \Rightarrow B$$

Esta conclusão é muito importante e já vamos voltar a ela!

Exemplo 1

Considere as seguintes verdades absolutas:

  • só quem estuda é aprovado;
  • quem usa o tempo para outras atividades não é aprovado.

Estas verdades são indiscutíveis no sistema que estamos montando para este exemplo. Se for assim, podemos criar alguns axiomas, também válidos neste sistema.

  • $A$ representa "Josie estuda";
  • $B$ representa "Josie é aprovada";
  • $C$ representa "Josie joga voleibol".

Este sistema é limitado a estas verdades e permite inferir que:

  • $A \Rightarrow B$;
  • $\neg C \Rightarrow B$;
  • $(A \wedge \neg C)\Rightarrow B$.

Voce consegue montar outras implicações?

Exemplo 2

Considerando a verdade inabalável dos axiomas, avalie o seguinte argumento.

  • Marcela faz curso de economia ou curso de matemática;
  • Marcela não faz curso de economia;
  • Consequentemente, Marcela faz curso de matemática

Podemos formalizar este argumento. Onde $p$ representa Marcela faz curso de economia e $q$ representa Marcela faz curso de matemática.

  • $p \vee q$
  • $\neg p$
  • $q$

Ou, na forma de implicação: $((p \vee q)\wedge \neg q)\rightarrow q$

Resta provar que $((p \vee q)\wedge \neg q)\rightarrow q$ é uma tautologia. Prove!

Prova de Argumentos

Sempre podemos provar um argumento utilizando a sua tabela verdade.

O uso de tabelas verdade é tedioso, cansativo e torna mecânico o processo de conclusão.

A forma ideal de resolver problemas de inferência, ou dedução, é utilizar as próprias propriedades da lógica.

Usamos argumentos cuja consequência já é conhecida, são chamados de Consequências Notáveis.

Consequências Notáveis

Nome Consequência
Adição $A\Rightarrow A \vee B$
Subtração $A \wedge B \Rightarrow A$
Modus Ponens $A \wedge (A \rightarrow B) \Rightarrow B$
Modus Tollens $(A \rightarrow B) \wedge (\neg B) \Rightarrow \neg A$
Silogismo Disjuntivo $(A \vee B) \wedge \neg A \Rightarrow B$
Silogismo Hipotético $(A \rightarrow B) \wedge (B \rightarrow C) \Rightarrow A \rightarrow C$
Contradição $A \rightarrow \bot \Rightarrow \neg A$
Contraposição $A \rightarrow B \Rightarrow \neg B \rightarrow \neg A$
Eliminação da Equivalência $A \leftrightarrow B \Rightarrow A \rightarrow B$
Prova Condicional $A \rightarrow ( B \rightarrow C ) \Rightarrow ( A \wedge B ) \rightarrow C$

Regra da Adição

Dada uma proposição verdadeira qualquer $A$, podemos deduzir sua disjunção com qualquer outra proposição $B$.

Suponha a premissa $(p \wedge q) \vdash \top $ podemos deduzir sua disjunção com um $B$ qualquer.

$(p \wedge q) \vee B \Rightarrow (p \wedge q)$

O céu á azul, logo o céu é azul ou verde.

Regra da Subtração (simplificação)

Dada uma conjunção de duas proposições $A \wedge B$, podemos deduzir cada uma das proposições de forma individual.

$(x \in Z) \wedge (x \in Y) \Rightarrow (x \in Z)$, $(x \in Z)$ é consequência lógica de $(x \in Z) ∧ (x \in Y)$.

Sandra joga futebol e basquete logo Sandra joga futebol.

Você consegue encontrar outras implicações?

Modus Ponens

De longe a regra mais utilizada em inferência lógica. Permite deduzir uma tese $B$ a partir das premissas $A$ e $A \rightarrow B$.

Considere $(p\wedge q)$ e $(p\wedge q)\rightarrow r$ se ambas são verdade podemos deduzir que $r$ é verdade.

$(x \in Z \cap Y),((x \in Z \cap Y) \rightarrow (x \in Z)) \Rightarrow (x \in Z)$.

Se estuda é aprovado, estudou logo é aprovado.

Você deve formalizar esta última sentença.

Modus Tollens

Permite deduzir a negação do antecedente $A$ a partir da negação de $B$ e da implicação $A\rightarrow B$.

Considere $(q \wedge p) → r$ e $\neg r$ então podemos deduzir $\neg(q \wedge p)$.

Se chove, não vou a aula. Vou a aula logo não chove.

Você deve formalizar esta última sentença.

Modus Ponens - Representação

O Modus Ponens é visto, comumente em uma forma mais prática de representar argumentos.

  • $A$, $A\rightarrow B$;
  • $B$

Que lê-mos, dadas as proposições $A$, $A\rightarrow B$; temos a consequência $B$.

A expressão Modus Ponens é uma abreviação da expressão modus ponendo ponens que significa o modo que afirma afirmando.

Colocado nessa forma fica óbvia a relação com o Modus Tollens

  • $\neg B$, $A\rightarrow B$;
  • $\neg A$

The Logic Theorist

Um dos primeiros, se não o primeiro, esforço de automatizar o processo de inferência e dedução o The Logic Theorist, criado em 1956 por Allen Newell, Herbert A. Simon e Cliff Shaw usava exatamente o Modus Ponens para fazer conclusões lógicas.

O programa percorria uma lista de premissas em busca de uma premissa na forma $A\rightarrow B$ "se A então B", uma vez que uma destas premissas fosse encontrada o próximo passo era encontrar uma premissa na forma $A$. Quando ambas eram encontradas era possível concluir $B$, como verdadeira e acrescentar esta premissa a lista das premissas verdadeiras.

Usando apenas o Modus Ponens e algumas simplificações o The Logical Theorist provou alguns teoremas matemáticos.

Exercício 2

Usando as Consequências Notáveis formalize as seguintes sentenças:

  1. Está sol agora. Consequentemente, ou está sol, ou está chovendo.
  2. Está muito quente e está sol. Consequentemente está muito quente.
  3. Se chover hoje não faremos churrasco. Se não fizermos churrasco hoje faremos o churrasco amanhã. Consequentemente, se chover hoje teremos churrasco amanhã.

Solução Exemplo 2

$p$ $q$ $($ $($ $p$ $\vee $ $q$ $)$ $\wedge$ $\neg$ $p$ $)$ $\rightarrow$ $q$
T T T $T$ T F $F$ T $T$ T
$T$ $F$ T $T$ F F $F$ T $T$ F
$F$ $T$ F $T$ T T $T$ F $T$ T
F F F $F$ F F $T$ F $T$ F

Solução Exercício 1.1:

$A$ $B$ $A$ $\rightarrow$ $($ $B$ $\rightarrow$ $A$ $)$
T T T $T$ T $T$ T
T F T $T$ F $T$ T
F T F $T$ T $F$ F
F F F $T$ F $T$ F

Solução Exercício 1.2:

$A$ $B$ $C$ $($ $A$ $\rightarrow$ $($ $B$ $\rightarrow$ $C$ $)$ $)$ $→$ $($ $($ $A$ $\rightarrow$ $B$ $)$ $\rightarrow$ $($ $A$ $\rightarrow$ $C$ $)$ $)$
T T T T $T$ T $T$ T $T$ T $T$ T $T$ T $T$ T
T T F T $F$ T $F$ F $T$ T $T$ T $F$ T $F$ F
T F T T $T$ F $T$ T $T$ T $F$ F $T$ T $T$ T
T F F T $T$ F $T$ F $T$ T $F$ F $T$ T $F$ F
F T T F $T$ T $T$ T $T$ F $T$ T $T$ F $T$ T
F T F F $T$ T $F$ F $T$ F $T$ T $T$ F $T$ F
F F T F $T$ F $T$ T $T$ F $T$ F $T$ F $T$ T
F F F F $T$ F $T$ F $T$ F $T$ F $T$ F $T$ F

Solução Exercício 1.3:

A B $($ $\neg$ $A$ $\rightarrow$ $\neg$ $B$ $)$ $\rightarrow$ $($ $B$ $\rightarrow$ $A$ $)$
T T F T $T$ F T $T$ T $T$ T
T F F T $T$ T F $T$ F $T$ T
F T T F $F$ F T $T$ T $F$ F
F F T F $T$ T F $T$ F $T$ F

Solução do Exercício 2

  • Exercício 2.1
  • $A$
  • $A \vee B$
  • Exercício 2.2
  • $A \wedge B$;
  • $A$
  • Exercício 2.3
  • $A\rightarrow B$, $B\rightarrow C$;
  • $A \rightarrow C$

Material de apoio

Você pode baixar o material de apoio clicando aqui

Obras Citadas

AHO, A. V. et al. Compiladores: princípios, técnicas e ferramentas. 2º. ed. Boston, MA, USA: Pearson Education Inc. , 2007.
CASS, S. The 2016 Top Programming Languages. IEEE Spectrum, 2016. Disponível em: http://spectrum.ieee.org/computing/software/the-2016-top-programming-languages. Acesso em: 22 Set. 2016.