Upload
rangelmaile
View
214
Download
0
Embed Size (px)
Citation preview
8/20/2019 Prenex
1/3
Formas Normais Prenex na Lógica de Predicados
Na lógica proposicional viu-se duas formas normais - a forma normalconjuntiva e a forma norma disjuntiva.
Na lógica de predicados existe também uma forma normal chamadade “ forma normal prenex”.
A razão para utilizar uma forma normal prenex de uma fórmula é parasimplificar os métodos de prova, que serão vistos mais adiante.
Definição: Uma fórmula F na lógica de predicados é dita estar emuma forma normal prenex se e somente se a fórmula F está na formade: (Q1 x1 ) ... (Qn xn )(M), onde todo (Qi xi), i = 1, ..., n, é (∀xi ) ou(∃xi ) , e M é uma fórmula que não possui quantificadores.
(Q1 x1) ... (Qnxn) é chamada de prefixo e M é chamada de matriz dafórmula F .
Abaixo são mostradas algumas fórmulas na forma normal prenex:i. (∀x) (∀y) (P(x,y) ∧ Q(y))ii. (∀x) (∀y) (~P(x,y) → Q(y)) iii. (∀x) (∀y) (∃z) (Q(x,y) → R(z))
Dada uma fórmula, será visto agora um método para transformá-la naforma normal prenex. Isto é obtido considerando alguns pares defórmulas equivalentes na lógica de predicados.
Lembrando que duas fórmulas F e G são equivalentes, representados por F = G, se e somente se os valores de F e G são os mesmos sobtodas as interpretações.
Os pares básicos de fórmulas equivalentes dados na tabela abaixo
ainda são válidos para a lógica de predicados.
(1.1) F↔G = (F→G) ∧ (G→F)(1.2) F→G = ~F ∨ G(1.3) (a) F ∨ G = G ∨ F; (b) F ∧ G = G ∧ F (leis comutativas)(1.4) (a) (F ∨ G) ∨ H = F ∨ (G ∨ H); (b) (F ∧ G) ∧ H = F ∧ (G ∧ H) (leis associativas)(1.5) (a) F ∨ (G ∧ H) = (F ∨ G) ∧ (F
∨ H);
(b) F ∧ (G ∨ H) = (F ∧ G) ∨ (F ∧ H) (leis
distributivas)
(1.6) (a) F ∨ = F; (b) F ∧ n = F
(1.7) (a) F ∨ n = n; (b) F ∧
=(1.8) (a) F∨ ~F = n; (b) F ∧ ~F = (1.9) ~(~F) = F(1.10) (a) ~(F ∨ G) = ~F ∧ ~G; (b) ~(F ∧ G) = ~F ∨ ~G (Leis de De Morgan)
Leis para Formação de Fórmulas Equivalentes
Existem ainda outros pares de fórmulas equivalentes que contémquantificadores. Serão vistos agora esses pares adicionais de fórmulasequivalentes.
Seja F uma fórmula contendo uma variável x. Para salientar que avariável x está em F, representa-se F por F[x].
Seja G uma fórmula que não contém a variável x. Então tem-se os
seguintes pares de fórmulas equivalentes, onde Q é∀
ou∃
. Parasimplificar, chama-se cada par abaixo de “ lei”.
(2.1a) (Qx) F[x] ∨ G = (Qx) (F[x] ∨ G)(2.1b) (Qx) F[x] ∧ G = (Qx) (F[x] ∧ G) (2.2a) ~((∀x) F[x]) = (∃x) (~F[x]) (2.2b) ~((∃x) F[x]) = (∀x) (~F[x])
As leis (2.1a) e (2.1b) são obviamente verdadeiras, desde que G nãocontenha x e, portanto, possa ser trazido para dentro do escopo doquantificador Q.
As leis (2.2a) e (2.2b) não são difíceis de provar. As equivalências já
foram mostradas anteriormente.Supondo que F[x] e H[x] são duas fórmulas contendo x. Existem duasoutras leis:
(2.3a) (∀x) F[x] ∧ (∀x) H[x] = (∀x) (F[x] ∧ H[x])(2.3b) (∃x) F[x] ∨ (∃x ) H[x] = (∃x) (F[x] ∨ H[x]).
8/20/2019 Prenex
2/3
Isto é, o quantificador universal ∀ e o quantificador existencial ∃ podem distribuir-se sobre ∧ e ∨, respectivamente.
Porém, o quantificador universal ∀ e o quantificador existencial ∃ não podem distribuir-se sobre ∨, e ∧, respectivamente. Isto é,
(∀x) F[x] ∨ (∀x) H[x] ≠ (∀x) (F[x] ∨ H[x]) e(∃x) F[x] ∧ (∃x ) H[x] ≠ (∃x) (F[x] ∧ H[x]).
Para este caso, faz-se algo especial. Todas as variáveis dependentes x podem ser renomeadas para z, e a fórmula (∀x) H[x] torna-se (∀z)H[z] ; isto é, (∀x) H[x] = (∀z) H[z].
Supondo que se escolha a variável z que não aparece em F[x]. Então,
(∀x) F[x] ∨ (∀x)H[x] = (∀x)F[x] ∨ (∀z) H[z](renomeando todos os x's ocorrentes em (∀x)H[x] para z)
= (∀x)(∀z)(F[x] ∨ H[z]) (por 2.1a)
Da mesma forma, pode-se ter
(∃x) F[x] ∧ (∃x) H[x] = (∃x)F[x] ∧ (∃z) H[z](renomeando todos os x's ocorrentes em (∃x) H[x] para z)
= (∃x) (∃z) (F[x] ∧ H[z]) (por 2.1b)
Portanto, para esses dois casos, pode-se trazer todos osquantificadores para a esquerda da fórmula. Em geral, tem-se:
(2.4a) (Q1x) F[x] ∨ (Q2x) H[x] = (Q1x)(Q2z) (F[x] ∨ H[z])
(2.4b) (Q3x) F[x] ∧ (Q4x) H[x] = (Q3x)(Q4z) (F[x] ∧ H[z])
onde Q1 , Q2, Q3 e Q4 são ∀ ou ∃, e z não aparece em F[x].
É claro que, se Q1 = Q2 = ∃ e Q3 = Q4 = ∀ , então não é necessáriorenomear os x's em Q2x H[x] ou Q4x H[x]. Pode-se usar (2.3)diretamente.
Usando as leis (1.1) - (1.10) e as leis (2.1) - (2.4), pode-se sempretransformar uma fórmula na forma normal prenex. A seguir apresenta-se um resumo do procedimento de transformação.
Transformando Fórmulas na Forma Normal Prenex
Passo 1: Usar as leis F ↔ G = (F → G) ∧ (G → F) (1.1)F → G = ~ F ∨ G (1.2)
para eliminar os conetivos lógicos ↔ e →.
Passo 2: Repetidamente usar a lei ~ (~F) = F (1.9),as leis de De Morgan ~ (F ∨ G) = ~F ∧ ~G (1.10a),
~ (F ∧ G) = ~F ∨ ~G (1.10b),e as leis ~ ((∀x) F[x]) = (∃x) ( ~F[x]) (2.2a),
~ ((∃x) F[x]) = (∀x) ( ~F[x]) (2.2b),
para trazer o sinal de negação para a imediatamente antes dostermos.
Passo 3: Renomear as variáveis dependentes se necessário.
Passo 4: Usar as leis(Qx) F[x] ∨ G = (Qx) (F[x] ∨ G) (2.1a),(Qx) F[x] ∧ G = (Qx) (F[x] ∧ G) (2.1b),(∀x) F[x] ∧ (∀x) H[x] = (∀x) (F[x] ∧ H[x]) (2.3a),(∃x) F[x] ∨ (∃x ) H[x] = (∃x) (F[x] ∨ H[x]) (2.3b),
(Q1x) F[x] ∨ (Q2x) H[x] = (Q1x)(Q2z) (F[x] ∨ H[z]) (2.4a),
(Q3x) F[x] ∧ (Q4x) H[x] = (Q3x)(Q4z) (F[x] ∧ H[z]) (2.4b)
para mover os quantificadores para a esquerda de toda fórmula paraobter uma forma normal prenex.
Exemplo 1.1: Transformar a fórmula (∀x) P(x) → (∃x) Q(x) naforma normal prenex.
8/20/2019 Prenex
3/3
(∀x) P(x) → (∃x) Q(x) = ~ ((∀x) P(x)) ∨ (∃x) Q(x) por (1.2)= (∃x) (~P(x)) ∨ (∃x) Q(x) por (2.2a)= (∃x) (~P(x) ∨ Q(x)) por (2.3b)
Portanto, a forma normal prenex de
(∀x) P(x)→ (∃x) Q(x) é (∃x) (~P(x) ∨ Q(x)).
Exemplo 1.2: Obter a forma normal prenex para a fórmula:
(∀x)(∀y) ((∃z) (P(x,z) ∧ P (y,z))→ (∃u) Q(x,y,u)).
= (∀x)(∀y) (~((∃z) (P(x,z) ∧ P(y,z))) ∨ (∃u) Q(x,y,u)) por (1.2)= (∀x)(∀y)((∀z) (~P(x,z) ∨ ~P(y,z)) ∨ (∃u) Q(x,y,u)) por
(2.2b) e (1.10b)= (∀x)(∀y)(∀z)(∃u) (~P(x,z) ∨ ~P(y,z) ∨ Q(x,y,u)), usando
(2.1a), move-se os quantificadores para a esquerda, obtendo por fim aforma normal prenex da primeira fórmula.