A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Algoritmos – Formas Normais

Apresentações semelhantes


Apresentação em tema: "Algoritmos – Formas Normais"— Transcrição da apresentação:

1 Algoritmos – Formas Normais
Dalton Erasmo Kelvin Elton Jorge Luiz

2 UTILIDADES DA NORMALIZAÇÃO
A normalização de fórmulas é importante para padronizar a notação, já que é possível escrever fórmulas logicamente equivalentes de muitas maneiras diferentes. As fórmulas lógicas na FND são usadas em circuitos lógicos. Há dispositivos físicos idealizados, chamados de portas lógicas, os quais utilizam funções relacionadas a conjunção, disjunção e negação.

3 UTILIDADES DA NORMALIZAÇÃO
Qualquer função matemática descrita por uma tabela verdade pode ser especificada por uma fórmula na FNC ou FND. Em Programação lógica, a simplificação ou padronização de expressões resulta em um melhor desempenho ao verificar a satisfatibilidade de uma fórmula. O mesmo ocorre em circuitos lógicos, quanto menor a fórmula lógica menor o circuito.

4 Fórmula Normal Uma fórmula normalizada na FND ou na FNC será ou uma conjunção de cláusulas ou uma cláusula de conjunções. Ela pode ser também só uma cláusula ou conjunção fundamental (CF). A, A  B, B  C  A, (AB)(BC), por exemplo, são fórmulas normalizadas. As formas normais conjuntiva e disjuntiva admitem apenas os conectivos lógicos ,  e .

5 Forma Normal Disjuntiva
Uma FND é uma conjunção fundamental (CF) ou uma disjunção de duas ou mais CFs. Toda fórmula proposicional pode ser transformada em outra fórmula logicamente equivalente na FND. Porém, algumas fórmulas ficarão exponencialmente maiores. Exemplos de fórmulas na FND: A  A (disjunção de duas CFs) B  C  A (é uma CF) (D  A)  (B  C  A)  (D  C  A) (disjunção de 3 CFs)

6 Forma Normal Disjuntiva
Exemplos de fórmulas que NÃO estão na FND: A (não é um literal) B  C  B (repetição de B, portanto não é CF) (A  B)  (B  A) (não é CF, por ter )

7 Forma Normal Conjuntiva
Uma disjunção fundamental é um literal ou a disjunção de dois ou mais literais. Uma forma normal conjuntiva é uma disjunção fundamental ou uma conjunção de duas ou mais disjunções fundamentais. Assim como ocorre com a FND, toda fórmula proposicional pode ser transformada em outra fórmula logicamente equivalente na FNC. Porém, algumas fórmulas normalizadas ficarão exponencialmente maiores.

8 Forma Normal Conjuntiva
Exemplos de fórmulas na FNC: p ∧ (p ∨ q) (p ∨ q) ∧ (q ∨ p) (p ∨ q ∨ r) ∧ (p ∨ q ∨ r)

9 CONVERSÃO PARA FND OU FNC
Uma fórmula proposicional pode ser passada para FND/FNC através dos seguintes passos: 1º passo: Remoção das equivalências: A ↔ B (A  B) ∧ (B  A) 2º passo: Remoção das implicações: A  B A ∨ B. 3º passo: Internalização das negações: (A ∧ B) (A ∨ B), (A ∨ B) (A ∧ B) 4º passo: Eliminação das negações duplas:  A A 5º passo: Utilização das leis distributivas para colocar a fórmula resultante do passo anterior em FND ou FNC.

10 EXEMPLO DE CONVERSÃO PARA FND
Passar (A  B)  (B  A) para a FND: Remoção das implicações: (A  B)  (B  A) Utilização das leis distributivas: ((A  B)  B)  ((A  B)  A) (A  B)  (B  B)  (A  A)  (B  A) (A  B)  (A  B)

11 EXEMPLO DE CONVERSÃO PARA FNC
Passar A  (B  (C  A)) para a FNC: Remoção das implicações: A  (B   (C  A)) Internalização das negações: A  (B  ( C   A)) Utilização das leis distributivas: A  (B   C   A) (A  B)  ( A   C)  ( A   B) Como pode-se perceber, a diferença da normalização para FNC ou FND fica apenas na ordenação dos conectivos  e  do último passo.

12 NORMALIZAÇÃO POR TABELAS-VERDADE
Outro método para normalizar uma fórmula é através de tabelas-verdade. Primeiro é necessário fazer a tabela-verdade da fórmula, como no exemplo abaixo para p  q  r:

13 NORMALIZAÇÃO POR TABELAS-VERDADE
Depois de identificar as linhas falsificáveis, proceder da seguinte forma: os átomos com o valor verdadeiro (1) devem ser modificados para a sua negação; os que já estavam com o valor falso (0) permanecem iguais; todos os átomos de uma mesma interpretação são conectados por  e, por fim, cada interpretação é conectada com . Desse modo, o exemplo dado fica assim: Linha 2: (p  q  r), Linha 6: (p  q  r), Linha 8: (p  q  r) e, após concatenar as interpretações, o resultado será uma fórmula na FNC: (p  q  r)  (p  q  r)  (p  q  r)

14 NORMALIZAÇÃO POR TABELAS-VERDADE
De maneira similar podemos produzir uma fórmula na FND: primeiro se constrói a tabela, depois identificam-se as linhas com resultado verdadeiro (1); os átomos com o valor falso (0) devem ser modificados para a sua negação; os que já estavam com o valor verdadeiro (0) permanecem iguais; todos os átomos de uma mesma interpretação são conectados por  e, por fim, cada interpretação é conectada com .

15 NORMALIZAÇÃO POR ADIÇÃO DE ÁTOMOS
A normalização de uma fórmula para FNC ou FND pelos métodos já apresentados é acompanhada pela inconveniência de se obter uma nova fórmula de tamanho exponencialmente maior que a primeira. Nesse caso, é possível usar o artifício da Adição de Novos Átomos para que seu tamanho aumente apenas de forma linear. Para tanto, deve-se executar normalmente os passos de normalização citados anteriormente. A única mudança será na distributividade das conjunções ou disjunções, pois um novo átomo será adicionado nessa parte, como pode se verificar no exemplo a seguir:

16 NORMALIZAÇÃO POR ADIÇÃO DE ÁTOMOS
X  (Y  Z) para a FNC por adição de átomos: Substituindo (Y  Z) por um novo átomo p: (X  p)  (p  Y)  (p  Z)  (Y  Z  p) A primeira cláusula da fórmula acima é imediata, porém, para achar as outras, é preciso normalizar a equivalência lógica p ↔ (Y  Z), a qual terá como resultado: (p  Y)  (p  Z)  (Y  Z  p) Desse modo, a transformação da fórmula original para a FNC estará concluída. E, de modo semelhante, pode-se transformar uma fórmula para a FND.

17 NOTAÇÃO DE KOWALSKY Além da notação tradicional da lógica proposicional, as fórmulas na FNC ou na FND podem ser representadas na notação de Kowalsky. Para isso é necessário separar os literais positivos dos negativos, deixando os positivos à esquerda. Na notação de Kowalsky, a virgula (,) a esquerda de ¬ representa uma disjunção e a direita, uma conjunção. Essa disjunção é chamada de conclusão e a conjunção é chamada de premissa ou condição.

18 EXEMPLOS DA NOTAÇÃO DE KOWALSKY
p  q  r é equivalente a escrever p, q ← r na notação de Kowalsky. s  p  q é equivalente a escrever s ← p, q na notação de Kowalsky.

19 REFERÊNCIAS 1. KAESTNER, Celso Antônio Alves. Lógica para Computação. Disponível em: < ppt>. Acessado em: 19/03/2009. 2. WIKIPEDIA. Robert Kowalski. Disponível em: < Acessado em: 22/03/2009. 3. CAMPOS, Paulemir Gonçalves. Lógica Proposicional. Disponível em: < programacao-logica/turma-lc /arquivos/5- logica_proposicional3.ppt>. Acessado em: 22/03/2009. 4. MARTINI, Alfio. Equivalências e Formas Normais. Disponível em: < equiv.pdf>. Acessado em: 22/03/2009.


Carregar ppt "Algoritmos – Formas Normais"

Apresentações semelhantes


Anúncios Google