1 tópicos de lógica proposicional cláusulas de horn resolução referência: language, proof and...

21
1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Upload: internet

Post on 17-Apr-2015

107 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

1

Tópicos de Lógica Proposicional

Cláusulas de Horn

Resolução

Referência: Language, Proof and LogicJon Barwise e John Etchemendy, 1999

Capítulo: 17

Page 2: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-2

Frases de Horn

Forma Normal Conjuntiva- para frases sem quantificadores– conjunção de frases– cada elemento da conjunção é disjunção de literais– literal: frase atómica ou a sua negação

Frase Horn– frase na Forma Normal Conjuntiva– cada disjunção tem no máximo 1 literal positivo

Page 3: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-3

ExemplosNão são Horn

NaSala(Ana) (NaSala(Rui) Feliz(Luis))

(NaSala(Ana) NaSala(Rui) Feliz(Ana)) Feliz(Luis)

NaSala(Ana) NaSala(Rui) NaSala(Luis)

São Horn

NaSala(Ana) (NaSala(Rui) Feliz(Luis))

NaSala(Ana) NaSala(Rui) NaSala(Luis)

NaSala(Ana) NaSala(Rui) NaSala(Luis)

NaSala(Ana) NaSala(Rui) (NaSala(Rui) NaSala(Rui))

Page 4: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-4

Satisfação de frases de Horn Para averiguar satisfação de frases de Horn

– Tabela de verdade: mecânico mas caro: 2n linhas para n átomos– Nas frases Horn basta construir 1 linha.

Algoritmo: Átomos que aparecem como elementos da conjunção: V na coluna de referência Usar colunas de referência para preencher colunas da frase e vice-versa Acabar quando não se pode concluir sobre o valor de mais nenhuma coluna

Que concluir do algoritmo de satisfação de frases de Horn?– Um dos elementos da conjunção toma o valor F

a frase é não satisfazível

– Processo termina sem atribuir F a nenhum elemento da conjunção a frase é satisfazível podem preencher-se as restantes colunas de referência com F

Page 5: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-5

Algoritmo de satisfação de frases Horn

Exemplo: NaSala(Ana) NaSala(Rui) (NaSala(Rui) NaSala(Ana))

Átomo A é elemento da conjunção, a coluna de

referência terá V

A R A R (R A)

V

Se A é F, R terá de ser V

F

A R A R (R A)

V FV F

R tem valor F, e é elemento da conjunção: frase não

satisfazível

A R A R (R A)

V FV

Page 6: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-6

Exemplo

Exemplo: (A B) (B C) B

A B C (A B) (B C) BFV F

B é elemento da conjunção, tem de ter valor V

A B C (A B) (B C) BFV FV

C tem de ter valor V, e não há mais atribuições

A fórmula é satisfazível– se atribuir F a A, a linha resultante da tabela atribui V à fórmula

Page 7: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-7

Formalizar satisfação

Tabelas de verdade– explicitam circunstâncias em que uma fórmula é verdadeira– são informais– não são manipuláveis matematicamente

Noção formal: atribuição de verdade– função h

do conjunto de fórmulas atómicas de uma linguagem de 1ª ordem para o conjunto dos valores de verdade {V, F}

– para cada fórmula atómica A, h(A) é V ou é F– cada atribuição de verdade corresponde a uma linha das colunas de

referência de uma tabela de verdade

Page 8: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-8

Atribuição de verdade

h: atribuição de verdade– fórmula arbitrária: o que significa h torná-la verdadeira ou falsa?

h’ : definida no conjunto de todas as fórmulas, estende h– toma valores no conjunto dos valores de verdade {V, F}– na “tabela de verdade da linguagem”

h preenche uma só linha, e só as colunas de referência h’ preenche as restantes colunas para todas as fórmulas da linguagem

Definição de h’ : de acordo com significado das conectivas– h’(Q) = V se e só se h’(Q) = F– h’(QR) = V se e só se h’(Q) = V e h’(R) = V – h’(QR) = V se e só se h’(Q) = V ou h’(R) = V, ou ambos...

Page 9: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-9

Satisfação de fórmulas

Fórmula S é satisfazível– existe atribuição de verdade h tal que h’(S) = V

Fórmula S é logicamente verdadeira– para toda a atribuição de verdade h, h’(S) = V

Noção central: consequência lógica– Fórmula S é consequência lógica de um conjunto de fórmulas T sse

toda a atribuição de verdade que torna todas a fórmulas de T verdadeiras também torna S verdadeira

– T {S} elementos são todas as fórmulas em T e mais S

Proposição:– S é consequência lógica de um conjunto de fórmulas T se e só se o

conjunto T {S} não é satisfazível

Page 10: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-10

Algoritmo de satisfação de frases Horn

Teorema 2: O algoritmo classifica como satisfazíveis exactamente as fórmulas de Horn satisfazíveis

– Refraseando: uma fórmula Horn é satisfazível se e só se é classificada como satisfazível pelo algoritmo

– Fórmula S é satisfazível algoritmo classifica S como satisfazível Se S é classificada como não satisfazível:

não existe atribuição de valores de verdade que a satisfaça

S é não satisfazível sendo S satisfazível

S é classificada como satisfazível

(SÓ SE)

Page 11: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-11

Algoritmo de satisfação de frases Horn

Teorema 2 (cont.)– Fórmula S é classificada como satisfazível: fórmula é satisfazível

S é conjunção de disjunção de literais cada disjunção tem no máximo 1 literal positivo S verdadeira na atribuição h’:

– cada elemento da conjunção verdadeiro em h’ – um literal em cada disjunção tem valor V

Em cada disjunção– se tem só um literal positivo: foi posto a V pelo algoritmo– se tem alguns literais negativos e 1 positivo:

• se todos os literais negativos foram postos a F: o literal positivo foi posto a V• se o processo termina: as frases atómicas restantes são postas a F fazendo algum dos

literais negativos ficar com V

– se tem só literais negativos: • nem todos foram postos a F, senão S resultaria não satisfazível• algum se torna V quando as frases atómicas restantes são postas a F

(SE)

Page 12: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-12

Frases com dependências

Algoritmo de satisfação de frases Horn:– assume frases atómicas independentes

Se as frases não são independentes– a “linha de tabela” que se constrói pode ser espúria– não se pode concluir sobre a satisfação

Exemplo

Small(b) (Small(b) Cube(b)) Cube((b) Tet(b))

– aplicando o algoritmo: frase é satisfazível! num mundo que a satisfaça: b tem de ser pequeno, cubo e tetraedro

Para resolver: modificar algoritmo– atribuição de F às frases atómicas restantes: testar se produz linha espúria– se linha é espúria, procurar alternativa (não há procedimento sistemático)

Page 13: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-13

Automatizar demonstração

Problema: descobrir se uma frase é consequência lógica de outra Usando intuição

– Se é consequência: demonstra-se usando métodos de prova– Se não é: procura-se um contraexemplo: atribuição que torna as

premissas verdadeiras e a conclusão falsa

Como automatizar?– Usando tabelas de verdade: grande ineficiência– Algoritmo de satisfação para frases Horn: eficiente– Resolução:

aplicável a frases em forma normal conjuntiva eficiente generaliza para frases quantificadas

Page 14: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-14

Cláusulas

Conjuntos de cláusulas– Cláusula: conjunto finito de literais

C1= {Small(a), Cube(a), Backof(b,a)} C2= {Small(a), Cube(b)} Cláusula vazia:

– Cláusula é satisfeita por uma atribuição de verdade h: pelo menos um dos literais da cláusula tem o valor V em h não é satisfeita por qualquer atribuição

– C ⁄ : h satisfaz C sse a disjunção das frases em C tem o valor V em h’

Satisfação de um conjunto S de cláusulas– S é satisfeito por h desde que cada cláusula de S seja satisfeita por h– A fórmula (CNF) obtida pela conjunção das disjunções

correspondentes às fórmulas de S é satisfeita por h’

Page 15: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-15

Resolução

Para mostrar que um conjunto S de cláusulas não é satisfazível:– mostrar que um conjunto maior S’ obtido do primeiro também não o é– válido desde que S e S’ sejam satisfeitos exactamente pelas mesmas

atribuições

Método: provar que a frase S (em CNF) não é satisfazível– transformar S num conjunto de cláusulas

disjunções de literais passam a cláusulas com os mesmos literais conjunção passa a conjunto de cláusulas

– adicionar sistematicamente novas cláusulas - resolventes novas são tais que o conjunto é satisfeito pelas mesmas atribuições

– se chegarmos a um conjunto que contém , a frase inicial não é satisfazível

Page 16: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-16

Resolventes Exemplo1

C1= {Small(a), Cube(a), Backof(b,a)}

C2= {Small(a), Cube(b)}– Para satisfazer {C1, C2} é preciso atribuir V a pelo menos 1 de

Cube(a) Backof(b,a) Cube(b)– C3 = {Cube(a), Cube(b), Backof(b,a)} é um resolvente de C1 e C2– {C1, C2, C3} é satisfeito pelas mesmas atribuições que {C1, C2}

Exemplo2C1= {NaSala(Rui), NaSala(Ana)}

C2= {NaSala(Rui)}

C3= {NaSala(Ana)}– Uma atribuição que satisfaz {C1, C2, C3} satisfaz

C4 = {NaSala(Rui)}– {C1, C2, C3, C4} não é satisfazível

Page 17: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-17

Resolvente

Definição: (resolvente)– R é uma resolvente das cláusulas C1 e C2 se existe uma fórmula

atómica numa delas e a sua negação na outra, sendo R o conjunto de todos os restantes literais de ambas.

Exemplos

{A,D} {A}

{D}

{A, A} {A}

{A}

{B,C} {B, D}

{C, D}

{D} {D}

{}

Page 18: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-18

Correcção da resolução

Teorema: Sendo S um conjunto não satisfazível de cláusulas numa linguagem com frases atómicas independentes, é sempre possível, por resolução sucessiva, chegar a .

ExemploA (B C B) (C D) (A D) (B D)

– Conversão em conjunto de cláusulas A}, {B, C}, {C, D}, {A, D}, {B, D}– Usar resolução para mostrar que o conjunto não é satisfazível

{B,C} {C, D}

{B, D} {B, D}

{D}

{A,D} {A}

{D}

Page 19: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-19

Consequência lógica

Provar consequência lógica usando resolução Para mostrar que

C é consequência lógica de

P1, P2, …, Pn Usar resolução para provar que

P1 P2 … Pn C

não é satisfazível– reduzir a forma normal conjuntiva– converter em conjunto de cláusulas– aplicar resolução

Page 20: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-20

Forma condicionalNaSala(Ana) NaSala(Rui)) Feliz(Luis)

Substituindo o condicional pela sua definição em termos de e

NaSala(Ana) NaSala(Rui) Feliz(Luis)

obtém-se uma disjunção com um só literal positivo

Em geral– frase de Horn é conjunção de frases

cada frase da conjunção é disjunção com 1 literal positivo e vários negativos

A1 A2 … An Bpode ser reescrita como

– (A1 A2 … An) B Casos particulares

– Disjunção sem literal positivo: (A1 A2 … An) False– Disjunção sem literais negativos: True B

Page 21: 1 Tópicos de Lógica Proposicional Cláusulas de Horn Resolução Referência: Language, Proof and Logic Jon Barwise e John Etchemendy, 1999 Capítulo: 17

Tópicos de Lógica Proposicional-21

Forma condicional de frase de Horn

Uma frase de Horn em lógica proposicional é logicamente equivalente a uma conjunção de afirmações condicionais de uma das três formas seguintes

(A1 A2 … An) B

(A1 A2 … An) False

True B Resolução:

– proposto e desenvolvido por Alan Robinson (1965)– apropriado para a demonstração automática de teoremas– problemas formulados como séries de condicionais e bicondicionais:

a transformação em CNF é imediata