--- title: Resumão sobre lógica argumentativa tags: Talk, topic summary --- # Resumão sobre lógica argumentativa <!-- Put the link to this slide here so people can follow --> slide: https://hackmd.io/@scaroni/r1hTffyVB --- ## Tipos de lógica de argumentação: Se desenvolve em dois planos de argumentação: 1) Concreta 2) Abstrata --- ## Argumentação concreta --- ### Argumentos Um argumento é uma consequência lógica de uma base de dados apresentado como uma regra da forma: $$ \Delta \vdash <\Phi, \Gamma> $$ Onde $\Delta$ denota uma base de conhecimento, $\Phi$ denota uma formula decorrente de $\Delta$ e $\Gamma$ é um subconjunto de regras de $\Delta$ que suportam $\Phi$. --- ### Argumentos, um exemplo Seja: $$ \Delta = \begin{cases} human(Sócrates) \\ human(x) \, \Rightarrow mortal(x) \end{cases} $$ Uma base de conhecimento, um argumento válido a partir de $\Delta$ pode ser: $$ \Delta \vdash <mortal(Sócrates), \{human(Sócrates), human(x) \, \Rightarrow mortal(x)\}> $$ --- ### Bases de conhecimento imperfeitas É uma base de informações imperfeitas (incompletas ou conflitantes), por exemplo uma base que compila conhecimento de diversos especialistas que podem ter opiniões divergentes. Um exemplo para esse tipo de base pode ser: $$ \Delta = \begin{cases} (1)\;Aves\;normalmente\;voam \\ (2)\;pinguins\;são\;aves\;e\;não\;voam \\ (3)\;tweety\;é\;uma\;ave\\ (4)\;tweety\;é\;um\;pinguin \end{cases} $$ Essa base permitiria dois argumentos diferentes e que são contraditórios: $$ \Delta \vdash <tweety\;voa, \{(1), (2)\}> \\ \Delta \vdash <tweety\;não\;voa, \{(3), (4)\}> $$ --- ### Raciocínio revogável Tradicionalmente uma base de conhecimento apresenta um conjunto de dados consistentes. Como não existem contradições, as conclusões podem ser derivadas com a regra de inferência dedutiva, denominada *modus ponens*: $$ \alpha, \alpha \rightarrow \beta \vdash \beta \;\;\;(1) $$ Um raciocínio revogável é um tipo de raciocínio sobre uma base de conhecimento imperfeita, e portanto se baseia em outro mecanismo de inferência, denominado *modus non excipiens*: $$ \alpha, \alpha^\circ \;\; \beta \vdash \beta \;\;\;(2) $$ A regra acima estabelece que $\beta$ é verdadeiro desde que não haja outra regra que seja exceção para $\alpha^\circ \;\; \beta$ Chamamos a (1) e (2) respectivamente de regra estrita e regra revogável. --- ### Precendência em bases de conhecimentos conflitantes Caso uma base imperfeita contenha regras que impliquem em conclusões conflitantes, essa base deve também incluir uma regra de precedência entre essas regras, isto é, indicar qual dessas regras prevalece sobre a outra. Para dois argumentos $l$ e $l'$ denotamos a precedência entre eles como $l \prec l'$, se $l$ precede $l'$. --- ### Um exemplo de diálogo sobre uma base de conhecimentos conflitantes Considere a seguinte argumentação: 1. Paulo: Meu carro é seguro porque ele tem *airbag*. 2. Olga: Mas *airbag* explode e explosão é não segura, então, seu carro não é seguro. 3. Paulo: Meu carro é seguro porque ele tem *airbag*. 4. Olga: Mas *airbag* explode e explosão é não segura, então, seu carro não é seguro. 5. Paulo: Meu carro é muito caro e, nesse caso, seu *airbag* não explode. --- ### Um exemplo de uma base de conhecimentos conflitantes $$ \Delta = \begin{cases} 1: ^\bullet \rightarrow airbag(C) \\ 2: ^\bullet \rightarrow expensive(C) \\ 3: ^\bullet \rightarrow highspeed(C) \\ 4: airbag(x)^\circ \;\; safe(x) \\ 5: explodes(x)^\circ \;\; \neg safe(x) \\ 6: highspeed(x)^\circ \;\; \neg safe(x) \\ 7: airbag(x)^\circ \;\; explodes(x) \\ 8: airbag(x)\wedge expensive(x)^\circ \;\; \neg explodes(x)\\ 5 \prec 4 \\ 6 \prec 4 \\ 8 \prec 7 \end{cases} $$ --- ### Argumentos sobre uma base de conhecimentos conflitantes Como definido anteriormente, um argumento é uma conclusão de um literal sobre um conjunto de suporte. Notamos então um argumento $\alpha = \Sigma \square\lambda$ um argumento sobre um conjunto minimal de regras $\Sigma \subseteq \Delta$, isto é, sigma é o menor conjunto que suporta a conclusão de $\lambda$ sobre a base de conhecimento $\Delta$. --- ### Conclusões e ataques Definimos que o conjunto de todos os literais que podem ser concluídos de alguma regra de um conjunto de suporte $\Sigma \subseteq \Delta$ de regras é chamado de consequencias de $\Sigma$ ou $Cn(\Sigma)$, ou seja, $Cn(\Sigma) = \{\lambda \;|\;\Sigma\square\lambda\}$ Sejam $A_1$ e $A_2$ dois argumentos, tais que $A_1 = \Sigma_1\square\lambda_1$ e $A_2 = \Sigma_2\square\lambda_2$ Se $Cn(\Sigma_1)\cup Cn(\Sigma_2)$ é um conjunto inconsistente, ou seja, se $\lambda \in Cn(\Sigma_1)\cup Cn(\Sigma_2)$ e $\neg \lambda \in Cn(\Sigma_1)\cup Cn(\Sigma_2)$, então diz-se que $A_1$ e $A_2$ atacam-se mutuamente. Na resolução de um ataque, o argumento vencedor será aquele cuja regra possuir maior precedência dentro da base de conhecimento. --- ### Exemplo de ataque Suponha então que temos $A_1 = \Sigma_1\square\lambda_1$ e $A_2 = \Sigma_2\square\lambda_2$, com $\Sigma_1\subseteq\Delta$, $\Sigma_2\subseteq\Delta$ e $\Delta$ a base de conhecimentos conflitantes descrita acima, assim definimos $A_1$: $$ \begin{align} \Sigma_1 &= \begin{cases} 1: ^\bullet \rightarrow airbag(C) \\ 5: explodes(x)^\circ \;\; \neg safe(x) \\ 7: airbag(x)^\circ \;\; explodes(x) \\ \end{cases}\\ \lambda_1 &= \neg safe(x) \end{align} $$ e $A_2$: $$ \begin{align} \Sigma_2 &= \begin{cases} 1: ^\bullet \rightarrow airbag(C) \\ 2: ^\bullet \rightarrow expensive(C) \\ 8: airbag(x)\wedge expensive(x)^\circ \;\; \neg explodes(x)\\ \end{cases}\\ \lambda_2 &= \neg explodes(x) \end{align} $$ Como as regras 7 e 8 concluem literais complementares, então essas regras são a causa do conflito e a regra de precedência $8\prec7 \in \Delta$, então dizemos que $A_2$ ataca $A_1$ --- ## Argumentação Abstrata --- ### Arcabouço de argumentação abstrata **Def:** Um arcabouço de argumentação abstrata é uma tupla $<A, T>$, com A um conjunto finito de argumentos e $T \subseteq AxA$ uma relação binária de ataque tentre argumentos. Essa estrutura gera um grafo orientado cujos vértices representam argumentos e as arestas representam os ataques entre pares de argumentos, isto é, qual argu- mento derrota ou é derrotado por outro. No contexto da argumentação abstrata, os argumentos são entidades atômicas e abstratas, de forma que nenhuma informação sobre a estrtutura de um argumento ou de como se dão os ataques são representadas. Em uma argumentação abstrata, o último que deu o argumento no diálogo é o vencedor da argumentação. --- ### Argumento aceitável e conjunto admissível **Def:** Seja $S\subseteq A$ um subconjunto de argumentos sobre uma argumentação abstrata. $S$ é livre de conflitos se, e somente se, $\nexists \alpha, \beta \in S$ tal que $\alpha$ ataca $\beta$. **Def:** Um argumento $\alpha$ defende outro argumento $\beta$ se ataca um argumento $\gamma$ que ataca $\beta$, ou seja, $\beta \leftarrow \gamma \leftarrow \alpha$. **Def:** Um argumento $\alpha \in A$ é aceitável com relação a um conjunto de argumentos $S \subseteq A$ se, e somente se, $\forall \beta \in A$ se $\beta$ ataca $\alpha$, $\exists \gamma \in S$ tal que $\gamma$ defende $\alpha$. **Def** Seja $S\subseteq A$ um conjunto de argumentos livre de conflitos, diz-se que $S$ é admissível se, e somente se, cada argumento em $S$ é aceitável em relação ao próprio conjunto $S$ --- ## Sistema de diálogo persuasivo --- ### Locuções e protocolo Um diálogo é uma sequencia finita de locuções apresentadas por dois agentes a partir de uma afirmação (claim) apresentada por um dos agentes (o Proponente), enquanto o outro agente (o Oponente) deve rebater a afirmação (claim). Existem cinco tipos de locuções possíveis e para cada uma definimos o que chamamos de protocolo, isto é, quais locuções atacam ou se rendem a locução apresentada. | Locução | Ataque | rendição | | -------- | -------- | -------- | | *claim*($\lambda$) | *why*($\lambda$) | *agree*($\lambda$) | | *why*($\lambda$) | *since*($l:\phi\rightarrow\lambda$), para $l\in\Delta$ | *retract*($\lambda$) | | *since*($l:\phi\rightarrow\lambda$) | *why*($\lambda'$), para $\lambda'\in\phi$ ou *since*($l':\phi\rightarrow\lambda$), para $l'\in\Delta$ e $l' \prec l$ | *agree*($\lambda$) | | *agree*($\lambda$) | | | | *retract*($\lambda$) | | | Acima temos que $\lambda$ é um literal, $\phi \subseteq \Delta$, $l, l' \in \Delta$ e $\Delta$ é uma base de conhecimento.