Escolar Documentos
Profissional Documentos
Cultura Documentos
1. Sintaxe
Introduo
1
A primeira frase fala de uma propriedade (ser homem) de um indivduo distinguido
("Scrates") de um domnio de discurso. A segunda frase fala sobre objetos distiguidos
"departamento de Cincia da Computao" e "lgica". Tais objetos podero ser
representados usando os smbolos , soc para "Scrates", cc para "departamento de
Cincia da Computao", lg para "lgica".Tais smbolos so chamados de smbolos de
constantes.
As propriedades "ser aluno de ", "estuda" relacionam objetos do universo de discurso
considerado, isto , "ser aluno de " relaciona os indivduos de uma universidade com os
seus departamentos, "estuda" relaciona os indivduos de uma universidade com as
matrias. Para representar tais relaes sero usados smbolos de predicados (ou
relaes). Nos exemplos citados podemos usar Estuda e Aluno que so smbolos de
relao binria. As relaes unrias expressam propriedades dos indivduos do universo
( por exemplo "ser par","ser homem"). A relao "ser igual a" tratata de forma especial,
sendo representada pelo smbolo de igualdade .
Desta forma podemos simbolizar as sentenas consideradas nos exemplos da seguinte
forma:
- "Todo mundo igual a si mesmo " por x xx;
- "Existem nmeros naturais que so pares" por xPar(x);
- "Scrates homem" por Homem(soc);
- "Todo aluno do departamento de Cincia da Computao estuda lgica"
porx(Aluno(x,cc) Estuda (x,lg)).
Definies
2
Daremos a seguir as definies dos conceitos discutidos acima.
Def Sin1
Uma assinatura de uma linguagem de primeira ordem (mono sortida)1 consiste de um
conjunto de seqencias cujos elementos so da forma
f: sns, com n0 e/ou da forma P: sn , com n>0.
Dada uma assinatura a linguagem de primeira ordem com assinatura , L(), tem
como alfabeto:
- conectivos proposicionais:
(~) negao, (&) conjuno, disjuno, dupla implicao e () implicao.
- quantificadores:
quantificador universal e quantificador existencial
- smbolo de igualdade (opcional):
- smbolos de variveis: um conjunto contvel infinito, VAR
- smbolos de predicados de :
o conjunto consistindo do primeiro elemento de cada um das seqncias da forma P: sn
que ocorrem em . Para cada n, se P: sn ocorre em P chamado de smbolo de
predicado n-rio.
- smbolos de funo de :
o conjunto consistindo do primeiro elemento de cada uma das seqncias da forma f:
sns que ocorrem em . Para cada n, se f: sns ocorre em f chamado de smbolo de
predicado n-rio. Os smbolos de funo 0-ria so chamados de smbolos de constantes.
- smbolos de pontuao: "(", ")", "[", "]", "{", "}".
Por conveno usaremos letras maisculas ou palavras da lngua portuguesa inicializadas
com letras maisculas para representar smbolos de predicados
e usaremos letras minsculas ou palavras da lngua portuguesa inicializadas com letras
minsculas para representar smbolos de funo e de variveis.
Como foi mencionado anteriomente, os smbolos de predicados pretendem representar
relaes entre objetos de um mesmo universo de discurso.
A definio de conjunto de frmulas bem formadas de um linguagem de primeira ordem
L() faz uso do conceito de termos. Os termos pretendem nomear os objetos do universo
de discurso.
Definio Sin2
Dada um assinatura , consideremos o conjunto U das seqncias finitas formadas pelos
smbolos de VAR, smbolos de pontuao e os smbolos de funo de . Para cada
smbolo de funo n-rio (n > 0) f, defina Ff : Un U por Ff(e1, ..., en) = f(e1, ..., en).
3
- todo smbolo de constante pertence a TERM(;
- se t1, t2, ..., tn esto em TERM( e f um smbolo de funo n-rio de , ento f(t1,
t2, ..., tn) est em TERM(.
Exemplo Sin1
Vamos mostrar que todo termo tem o mesmo nmero de abre parnteses "("e de fecha
parnteses ")" usando o princpio da induo em TERM.
Usaremos a notao na() e nf() para o nmero de abre e fecha parnteses de uma
expresso ,respectivamente.
Seja S= {TERM/ na()=nf()}
Vamos mostrar que S um conjunto indutivo, i.e.:
i) VARS
claro que na(x)=0=nf(x), para xVAR.
ii) Se c smbolo de constante na(c)=0=nf(c). Logo cS
4
Definio Sin5
Dada uma assinatura , seja W o conjunto das seqncias finitas de smbolos do alfabeto
de L() e de TERM().
Para x VAR, defina fx: W W por fx() = (x) e fx: W W por fx() =
(x)
Para cada frmula existe uma rvore cuja raiz a frmula e as folhas so as frmulas
atmicas que ocorrem na frmula. Em cada nvel, os ns da rvore desse nvel so as
subfrmulas que formam a frmula do nvel anterior pela aplicao de uma das regras
( 1-5 ) da definio de FORM.
Exemplo Sin2
(x((A(x) (yB(x, y))) (y((C(y)) (z(A(z, y) C(z, y)))))))
5
(A(z, y) C(z, y))
A(z, y) C(z, y)
Agora considere os termos f(x,y), g(x) e f(g(x),x). Note que f(g(x),x)) pode ser visto
como o termo f(x,y) quando substituimos simultaneamente g(x) por x e x por y.
Este um exemplo de aplicao simultnea de duas aplicaes simples, a saber, x:=g(x) e
y:=x.
6
Uma substituio um conjunto finito de substituies simples ={x1:=t1,x2:=t2xn:=tn}
tal que xixj para ij.
Uma substituio ={x1:=y1,x2:=y2xn:=yn} chamada de renomeao de variveis.
A aplicao da substituio = {x1:=t1, ..., xn:=tn} a um termo , denotada por , o
termo resultante da aplicao simultnea das substituies xi:=ti de em
Mais formalmente, temos uma definio recursiva da aplicao da substituio de
variveis em termos, i.e. vamos definir recursivamente.
Agora considere os termos f(x,y), g(x) e f(g(y),y). Note que f(g(y),y)) pode ser visto
como o termo f(x,y) quando substituimos x por g(y), que por sua vez o resultado da
substituio de x por y em g(x).
Este um exemplo de aplicao de duas substituies, uma aps a outra (substituio de
x por y em g(x) e de x pelo termo resultante em f(x,y)).
Exemplo Sin3
Sejam = {x:=y, z:=x} e = {y:=f(x), x:=v, v:=y}.
o = {x:=f(x), z:=v, y:=f(x), v:=y}
7
Definio Sin11 (ocorrncia de variveis livres e ligadas)
Uma ocorrncia da varivel v na frmula F ligada quando est dentro do escopo de
algum quantificador Q v ( v ou v). Isso ilustrado na figura abaixo.
F : __ Qv__v__) __
Figura CQ.DN.1.1: Ocorrncia ligadada da varivel v na frmula F
As ocorrncias livres da varivel v na frmula F so os que no so ligadas nem da forma
Q v ( v ou v)2.
Como exemplo, considere a frmula P(v)v [R(w,v)S(v,w)].
- As duas ocorrncias da varivel w (em R(w,v) e em S(v,w)) so livres.
- J a varivel u tm ocorrncias livres (em P(v)) e ligadas (em R(u,v) e em S(v,u)).
Exerccio ExSin4
Dados smbolos de predicados P e Q (unrios), R e S (binrios) e T (ternrio), smbolos
de operaes f (unrio), g (binrio) e h (ternrio); smbolos de constantes c e d, considere
as frmulas abaixo.
F1: u [(w R(u,g(v,w)))S(w,h(u,v,w))]; F2: v [R(u,v)u S(u,v)];
F3: v [u R(u,f(v))S(w,g(u,c))]; F4: P(u)v [S(u,v)S(v,v)];
F5: P(u)v [S(u,v)S(v,v)]; F6: v [(u T(u,v,w)(S(u,w)Q(v))];
F7: u [P(u)w (T(u,v,w)T(v,u,v))]; F8: u T(g(v,u),v,h(f(u),c,w));
F9: u [P(u)P(f(u))]; F10: P(c)u [P(u)P(h(f(v),g(v,c),d))];
F11: P(c)v [P(v)P(f(v))]P(u); F12: P(u)[v R(u,v)w S(u,w)];
F13: v u R(h(u,c,d),f(v)); F14: u v [w T(u,v,w)(R(u,v)S(v,u));
F15: v S(w,g(u,c))]; F16: u v [w T(u,v,w)(R(u,v)S(v,u));
F17: u v [w (P(f(u))T(u,h(c,v,w),w)Q(g(d,w)))(R(f(u),v)S(f(v),u)).
a) Identifique as ocorrncias ligadas e livres de variveis em cada frmula.
b) Quais frmulas tm ocorrncias ligadas e livres de uma mesma varivel?
2
Uma ocorrncia da varivel v combinada a um quantificador (da forma Q v) costuma ser chamada de
ligada ou ento recebe um nome especial, como ligante.
8
(iii) { F5, F6 , F10 }; (iv) { F11, F12 , F15 }.
CQ.DN.1.B Substituio de varivel por termo
Substituindo todas as ocorrncias livres de uma varivel v em uma frmula F por um
termo t, obtemos uma frmula, denotada F [v:=t]. Freqentemente simplificamos essa
notao, usando F(v) para a frmula original e F(t) para o resultado da substituio.
F(v) : __ v __ v __
} }
F(t) : __ t __ t __
9
F(v): Qu( v )
t(u)
F(t): Qu( t(u) )
Exerccio ExSin7
D a definio formal de substituio sensata.
3
As terminologias "v livre para t em F" e "v substitutvel por t em F" tambm so bastante comuns.
10
Lgica de primeira ordem
2. Semntica
Introduo
Definies
Def Sem1
Dada um assinatura , uma estrutura A para uma linguagem de primeira ordem L()
consiste de:
- um conjunto no vazio, A, chamado de universo de A;
- uma funo n-ria, fA: An A, para cada smbolo de funo n-ria f em L();
- uma relao n-ria, PA An, para cada smbolo de predicado n-rio P em L().
Considere a estrutura A= < N, {cA,dA, fA}, PA >, com cA =0 , dA =2, PA como a relao <
(menor que ) entre nmeros naturais e fA(n)= 2n. Parece razovel interpretarmos as
11
frmulas P(c,d) como 0<2 (que verdade), a frmula P(d,c) como 2<0 (que falso) e
f(c)d como 0=2 ( que falso). Mas como seria interpretada a frmula P(x,d) nesta
estrutura? primeira vista tentaramos como resposta x>2. Mas isto no nos d uma
assertiva verdadeira nem falsa. Parece razovel atribuirse um valor a x e a verificarmos
se com esta atribuio a x, a traduo da frmula P(x,d) uma assertiva verdadeira ou
falsa sobre os nmeros naturais. O mesmo tipo de questo aparece ao considerarmos a
frmula P(f(x),d).
Assim, se associarmos o valor 2 a x, a frmula P(x,d) interpretada como 2>2 (que
falso), se dermos o valor 3 a x, a frmula P(x,d) interpretada como 3>2 (que
verdadeiro). No caso da frmula P(f(x),d), ao associarmos o valor 0 a x, parece claro que
sua interpretao na estrutura dada 0<2, j que 2*0=0. Como vemos o significado de
uma frmula (verdade ou falso) numa estrutura depende do valor que seus termos
denotam dentro do domnio da estrutura.
Formalizando estas idias, temos primeiramente que ter uma maneira de avaliar os
termos dentro do domnio da estrutura. A definio desta avaliao faz uso do teorema da
recurso.
Note que pelo fato de TERM() ser livremente gerado a partir de VAR, o teorema
da recurso garante que existe e a nica extenso de v com as propriedaes descritas
acima. Por simplicidade, notaremos por v a extenso de v.
Exemplo Sem1
Para ilustrar o conceito de estrutura e atribuio de valores a termos, considere uma
lingugem de primeira ordem L() com smbolos f : ss, de funo unria e c: s0s, de
constante. Seja A a estrutura para esta linguagem tendo como universo N, o conjunto do
naturais, fA:N N definida por fA(n) = 2n e cA=3. Tome v:VAR N tal que v(x)= 2.
- o termo f(x) interpretado nesta estrutura com a atribuio v como o nmero 4;
- o termo f(f(x))) interpretado nesta estrutura com a atribuio v como o nmero 8;
- o termo f(c) interpretado nesta estrutura com a atribuio v como o nmero 6.
Exemplo Sem2
Observe que os termos f(x) e f(f(x)) podem ter outras interpretaes na mesma estrutura,
dependendo da atribuio de valores v, enquanto que f(c) sempre aponta para o nmero 6,
qualquer que seja a atribuio de valores v.
12
Exemplo Sem3
Considere os termos f(x) e f(c) e a mesma estrutura A= <N, fA,cA > do exemplo anterior.
Note que f(c)=f(x)onde ={x:=c}.
Tome uma atribuio de valores v:VARN, tal que v(x)= 2
Com esta atribuio, v(f(x))=46=v(f(c)).
Agora considere a atribuio u:VARA tal que u(x)=v(c)=3. Temos que
v(f(x)fA(cA)=6u(f(x))= fA(3)
O que ilustramos no exemplo Sem3 pode ser generalizado para todos os termos, isto :
Prop Sem1
Dados uma estrutura A para uma linguagem L(), v uma atribuio de valores para as
variveis, e dois termos t e s em TERM(considere a atribuio u:VARA tal que
u(x)=v(r), ento v(t[x:=r])=u(t)
Prova : Por induo na estrutura do termo t.
13
- se ( ), A |=( )[v] se e s se A | [v] ou A |= [v];
- se ( ), A |=( )[v] se e s se A |=[v]se e smente se A |=[v];
- se x, A |=x[v] se e s se para cada b A, A|=[v(x:=b)], onde , v(x:=b) a
atribuio definida por v(x:=b)(z)=v(z), para zx e v(x:=b)(x) =b. i.e., para cada b A
mantendo-se a mesma atribuio que v d s variveis distintas de x e atribuindo-se a x o
valor b, a frmula satisfeita na atribuio v(x:=b). Como isto ocorre para todo b A,
isto quer dizer que a frmula satisfeita deixando x tomar qualquer valor em A,
mantendo inalterado os valores que v d s outras variveis.
- se x, A |=x[v] se e s se para algum bA, A |=[v(x:=b)], i.e., a frmula
satisfeita na atribuio que d b a x, para algum b em A, mantendo-se inalterados os
valores que v d s outras variveis.
Exemplos
Considere a estrutura A = <N, PA, QA>, onde N o conjunto dos naturais, PA = {n N / n
primo} e QA = {(n, m) N2 / n > m} e a frmula : P(x) y (P(y) Q(x, y)).
Considere uma atribuio v tal que v(x) = 5 e v(y) = 6, ento temos A |=P(x) [v], j que 5
primo (v(x)=5 PA) e A |= y (P(y) Q(x, y))[v] (existe uma atribuio v', tal que
v'(x)=5 e v'(y) = 7, digamos, tal que A |= P(y) Q(x, y)[v']).
Considere a atribuio v tal que v(x) = 4 e v(y) =6. Como A | P(x)[v] temos que A |
P(x) y (P(y) Q(x, y))[v].
Considere A = <N, PA, QA , cA >, onde N o conjunto dos naturais,
PA = {n N / n primo}, QA = {(n, m) N2 / n > m} e cA =3.
Tome a sentena y (P(c) Q(c, y)) e uma atribuio v tal que v(y)=2.
Ento, A |=y (P(c) Q(c, y))[v], pois 3 primo (A |= P(c)) e existe um nmero
natural n, digamos 6, tal que 3 >n, i.e., a atribuio v' tal que v'(y)=6 e v'(z)=v(z), para z
y tal que A |= Q(c, y))[v'].
fcil ver que A |=y (P(c) Q(c, y))[w] para qualquer outra atribuio w.
Exerccios
Para cada caso considere a estrutura A e a frmula dadas e d atribuies v1 e v2 tais que
A |=[ v1] e A | [v2].
P(x) y(P(y) Q(x, y)) e A = <N, PA, QA>, onde
N o conjunto dos naturais, PA = {n N | n primo} e QA = { (n, m) N2 | n > m}.
2. : y (P(c) P(y) Q(y, c)) e A = <N, PA,QA, cA >, onde
N o conjunto dos naturais, PA e QA como acima e cA = 2.
Como foi observado no exemplo 2 se uma frmula uma sentena, isto , no tem
variveis livres, ento, dada uma estrutura A e uma atribuio v, se A |= [v] (A | [v])
ento A |=[w] (A | [w]), para qualquer outra atribuio w. Isto , uma sentena
satisfeita numa estrutura em todas as atribuies ou no satisfeita em nenhuma
atribuio.
14
Outra observao que a noo de satisfatibilidade numa atribuio s depende dos
valores que damos s variveis livres que ocorrem na frmula . Estas observaes so
formalizadas no seguinte teorema:
Teorema Sem1
Dada uma estrutura A e uma frmula com variveis livres x1, x2, ..., xn,
sejam v e w duas atribuies de valores de variveis a VAR no domnio de A tais que
v(xi) =w(xi) para i=1n.
Tem-se que A |=[v] sse A |=[w].
Prova
Por induo na estrutura da frmula .
Assim, dada uma frmula com n variveis livres, x1, x2, ..., xn e uma estrutura para uma
linguagem de primeira ordem, A, com domnio A, seja v uma atribuio de valores a
VAR em A tal que v(xi) = ai (i = 1, 2,,n). Usaremos as notaes A |= [a1, a2,,an] ou
A |= [xa, x a2,, xan] para A |=[v] quando quisermos explicitar os valores
atribudos por v s variveis livres de .
Usando esta notao alternativa as definies de A |=x[v] e de A |=x[v] podem ser
reescritas como:
Note que nestes dois casos a frmula pode ter no mximo n+1 variveis livres, j que x
pode ocorrer livre em .
Note que A |=[v] se e s se A |= x onde x uma abreviao para a lista x1x ...
xn e x1,x2,...,xn so as variveis livres de .
15
Note tambm que A |= significa que A |=x onde x uma abreviao para a lista
x1x ...xn onde x1,x2,...,xn so as variveis livres de .
Exemplo
Considere a frmula : Q(c,y) e A = <N, QA, cA >, onde
N o conjunto dos naturais, QA = {(n, m) N2 | n < m} e cA = 0.
Ento A |= .
Def Sem5 Estrutura satisfaz conjunto de frmulas com uma atribuio :A |=[v]
Dada um estrutura A e uma atribuio v, dizemos que A satisfazcom a atribuio v, A |
=[v], se e s se A |=[v], para toda frmula de .
Exemplos
P(c) x P(x) lgicamente vlida.
xP(x) P(y) lgicamente vlida.
Toda frmula que obtida pela substituio sistemtica das letras sentenciais de uma
tautologia por frmulas de lgica de primeira ordem uma frmula lgicamnte vlida,
por exemplo P(x)P(x)
Exerccio
1. x P(x) P(c) lgicamente vlida ?
2.xP(x) y P(y) lgicamente vlida ?
3.xy P(x,y) yx P(x,y) lgicamente vlida ?
4. yx P(x,y) xyP(x,y) lgicamente vlida ?
5. yx P(x,y) xy P(x,y) lgicamente vlida ?
6. yx P(x,y) xy P(x,y) lgicamente vlida ?
7. Se x no ocorre livre em mostre que as frmulas abaixo so lgicamente vlidas
a) x( )x e x( ) x
b) x( ) x e x( ) x
c) x( )x e x( ) x
d)x( ) x e x( ) x
8. Mostre que x x e xx so lgicamente vlidas
16
Exemplos
1) yx e xy so lgicamente equivalentes.
2) x e x so lgicamente equivalentes.
3) x e x so lgicamente equivalentes.
4) x( ) e x so lgicamente equivalentes se x no ocorre livre em
x( ) x so lgicamente equivalentes se x no ocorre livre em
6) x( ) e x so lgicamente equivalentes se x no ocorre livre em
7)x( ) e x so lgicamente equivalentes se x no ocorre livre em
8)x( ) e x so lgicamente equivalentes se x no ocorre livre em
9) x( ) e x so lgicamente equivalentes se x no ocorre livre em
Exemplos
{yx P(x,y)} |=xyP(x,y)
{xP(x)} |= P(f(x))
Se o conjunto vazio, usamos a notao |=Note que neste caso a definio coincide
com a de ser lgicamente vlida.
Como no caso proposicional, usaremos a notao | para indicar que no uma
conseqncia de .
Exerccios
Mostre que
| xy(f(x)=f(y)x=y) xQ(f(x),x)
{xyz(R(x,y)R(y,z)R(x,z)), xy(R(x,y) R(y,x))} | x R(x,x)
Exemplo
Considere o conjunto de sentenas
={xy(f(x)=f(y) x=y), xQ(f(x),x)} e a estrutura A = <N, fA, QA> onde N o
conjunto dos naturais, fA(n)= n+1e QA = {(n, m) N2 / n > m}. Temos A |=.
A definio da semntica para uma linguagem de primeira ordem (satisfao de frmulas
por estruturas) bastante tcnica, pois d o significado de um linguagem formal de
17
maneira precisa. Daremos a seguir uma aplicao menos formal da semntica, que o
uso da linguagem de primeira ordem para representao de conhecimento.
O que se pretende aqui , dada uma(s) sentena(s) em portugus (ou de outra linguagem
natural) obter uma frmula que a(s) represente(m) simblicamente, no sentido de que ao
interpretamos os smbolos de volta pelas palavras que eles simbolizam tenhamos uma
interpretao que satisfaa a frmula. No h uma nica forma de representao. Deve-se
identificar uma assinatura, isto quais os smbolos de constantes, funes e predicados
que sero usados, de forma que nomes prprios sejam simbolizados por smbolos de
constantes, enquanto que relaes e propriedades sejam simbolizados por smbolos de
predicados. Os fonemas algum, algum e seus sinnimos so simbolizados por x,
assim como nenhum, ningum(e seus sinnimos) so simbolizados por x; para
todo, cada e seus sinnimos so simbolizados por x.
Exemplos
Para simbolizar "o av de uma pessoa o pai da me ou do pai desta pessoa" temos
xy(Av(x,y) x=pai(y) x=me(y)), escolhendo Av como smbolo de predicado
binrio, pai e me como smbolos de funo unrios, com significados pretendidos:
Av(v,u) - v av de u
pai(u) - o pai de u
me(u) - a me de u.
Se escolhessemos Me e Pai como predicados binrios com significados pretendidos
Me(u,v) - u me de v e Pai(u,v) - u pai de v, teramos
xyz(Av(x,y) Pai(x,z)(Pai(z,y) Me(z,y)) simbolizando a mesma frase acima.
Para simbolizar "X primo" temos Primo(x), escolhendo Primo como smbolo de
predicado unrio com o significado pretendido bvio
Para simbolizar " A derivada de f definida " temos a frmula atmica
Definida(derivada(f)), escolhendo Definida como smbolo de predicado unrio, derivada
18
como smbolo de funo unria, e f como smbolo de constante com os significados
pretendidos bvios. Alternativamente, podemos ter y(y=derivada(f) Definida(y)).
Todo fantasma da regio mora na casa velha pode ser simbolizado por :
x(Fantasma(x) Mora(x,velha).
Existe um estudante que amigo de Jorge mas no amigo de Oscar pode ser
simbolizado por:
x(Estudante(x) Amigo(x, jorge) Amigo(x, oscar)
Todo estudante que amigo de Jorge amigo de Oscar pode ser simbolizado por:
x((Estudante(x) Amigo(x, jorge)) Amigo(x, oscar))
Exerccios
Simbolize as sentenas abaixo por sentenas de lgica de primeira ordem.
S os bravos sabem perdoar.
Nenhum homem uma ilha.
Todo pas tem o governo que merece.
No h nenhuma certeza, exceto a Lgica.
Misria gosta de companhia.
Nem tudo que reluz ouro.
Se voc agrada a todo mundo, voc no agrada a ningum.
Existe algo de podre no reino da Dinamarca.
Todo mundo ama algum.
Algum ama todo mundo.
Todo projeto em andamento tem um gerente.
Jos o gerente de todos os projetos.
Existe um gerente de todos os projetos.
19
Lgica de primeira ordem
3. Propriedades sintticas
Definio PS1(literal)
Um literal uma frmula atmica ou a negao de uma frmula atmica.
Lema PS1
As seguintes frmulas so lgicamente equivalentes
1.x e x;
2. x ex;
3. Qx( ) e Qx onde Q{,} e x no ocorre livre em ;
4. Qx( ) e Qx onde Q{,} e x no ocorre livre em ;
5. Qx( ) e Qx onde Q{,} e x no ocorre livre em ;
6. Qx( ) e Qx onde Q{,} e x no ocorre livre em
7. (x ) e x( ), se x no ocorre livre em ;
8. x ( ) e (x ), se x no ocorre livre em
9. (x ) e x( ) , se x no ocorre livre em
10. (x ) e x (), se x no ocorre livre em
11. (x ) e x (), se x no ocorre livre em
12. x e yx:=y], se {x/y} uma substituio sensata em e y no ocorre livre em
20
Prova
As equivalncias so obtidas diretamente a partir da definio de frmulas equivalentes.
Exerccio ExPS1
Demonstre o lema acima.
21
Existe um procedimento efetivo que, para cada frmula obtem uma frmula na forma
norma prenex que equivalente a
Prova
Como no caso proposicional, primeiramente elimine todas as ocorrncias de de isto
, substitua sucessivamente as subfrmulas da forma por at
que o conectivono ocorra mais.
Em seguida aplique as equivalncias 11 e 12 do lema PS1 renomeando todas as variveis
ligadas de forma que as variveis ligadas sejam difrentes e disferentes das variveis que
ocorrem livres na frmula de entrada.
Agora aplique as equivalncias do lema adequadamente para levar os quantificadores de
dentro para fora movendo-os para a esquerda. Note que como todas as substituies so
por frmulas equivalentes, a frmula resultante equivalente frmula original pelo
lema PS2.
Exemplo PS1
Tome =xy(xP(x)Q(x,y,z)) x(P(x)yR(x,y))
Eliminando-se obtemos
=xy[(xP(x)Q(x,y,z)) (Q(x,y,z) xP(x))] x(P(x) yR(x,y))
Renomeando as variveis ligadas obtemos
=xy[(vP(v)Q(x,y,z)) (Q(x,y,z) zP(z))] u(P(u) sR(u,s))
Aplicando as equivalncias 10 do lema para evitarmos que uma mesma varivel ocorra
livre e ligada na frmula obtemos
=xy[(vP(v)Q(x,y,z)) (Q(x,y,z) wP(w))]u(P(u) sR(u,s))
Aplicando as demais equivalncias, chegamos sucessivamente a
=xy[v(P(v)Q(x,y,z)) w(Q(x,y,z) P(w))] us(P(u) R(u,s))
=xy[v((P(v)Q(x,y,z)) w(Q(x,y,z) P(w)))] us(P(u) R(u,s))
=xy[v(w((P(v)Q(x,y,z)) (Q(x,y,z) P(w))))] us(P(u) R(u,s))
=xyvw((P(v)Q(x,y,z)) (Q(x,y,z) P(w))) us (P(u)R(u,s))
=suxyvw{(P(v)Q(x,y,z)) (Q(x,y,z) P(v)) (P(u)R(u,s))}
Exerccios
Ex PS2.1Obtenha outra frmula na forma normal prenex equivalente frmula do
exemplo anterior usando a mesma renomeao de variveis.
Ex PS2.2Demonstre a proposio usando induo na estrutura da frmula de entrada
22
' equivalente a em forma normal conjuntiva (disjuntiva). A frmula Qx' equivalente
a Qxpelo lema PS2
Exemplo PS2
Tome =xy(xP(x)Q(x,y,z) x(P(x)yR(x,y)).
O algoritmo anterior aplicado a d como sada a frmula
=suxyvw{(P(v)Q(x,y,z)) (Q(x,y,z) P(v)) (P(u)R(u,s))}
Para obter uma frmula na forma normal conjuntiva equivalente a basta tormarmos
{(P(v)Q(x,y,z)) (Q(x,y,z) P(v)) (P(u)R(u,s))}, e aplicando o algorimo
para obteno de forma normal conjuntiva a obtemos
'{(P(v)Q(x,y,z)) (Q(x,y,z)P(v)) (P(u)R(u,s))}
Assim, suxyvw{(P(v)Q(x,y,z)) (Q(x,y,z)P(v)) (P(u)R(u,s))}
uma frmula na forma normal prenex conjuntiva equivalente a
Exemplo Sklm1
Considere a frmula P(x), cujo significado pretendido : o valor atribudo a x tem a
propriedade expressa por P. Para isto ser verdade, temos que existe um objeto no universo
que tem a propriedade expressa por
P. Assim, a frmula xP(x) verdade neste contexto.
Por outro lado, se xP(x) verdade em um contexto, temos que existe um objeto no
universo que tem a propriedade expressa por P. Logo, a frmula P(x) verdade neste
contexto quando atribuimos este objeto a x.
Neste exemplo mostrarmos que P(x) satisfatvel se e s se xP(x) satisfatvel.
Exemplo Sklm2
Considere a frmula =xP(x) cujo significado pretendido que existe algum objeto no
universo que tem a propriedade expressa por P. Assim, se adicionarmos uma constante c
assinatura de P e interpretarmos c como este objeto que tem a propriedade P, a frmula
P(c) passa a ser verdade neste contexto.
Por outro lado, se P(c) verdade em um contexto, temos que a interpretao de c um
objeto que tem a propriedade que P expressa neste contexto. Logo, existe um objeto no
23
contexto que tem a propriedade expressa por P, isto , a frmula xP(x) verdade neste
contexto.
Neste exemplos mostramos que xP(x) satisfatvel se e s se P(c) satisfatvel.
Exemplo Sklm3
Agora considere a frmula =yxP(x,y) cujo significado pretendido que para
qualquer elemento do universo de discurso existe um objeto que est relacionado por P
com aquele elemento. claro que para cada elemento e que estivermos considerando, o
objeto que existe relacionado com e no precisa ser nico, nem ser o mesmo relacionado
com todos os elementos do universo. Isto , objetos diferentes podem estar relacionados
com elementos diferentes ou alguns objetos diferentes podem estar relacionados com o
mesmo objeto, alm disso pode haver mais de um objeto relacionado com o mesmo
elemento. De qualquer modo, podemos definir uma funo tal que, para cada elemento e
do universo, escolhe um dos objetos dentre os que esto relacionados com e. Observe que
esta escolha no precisa ser feita de forma efetiva, ( por exemplo, um sorteio uma
escolha no efetiva) mas que pode sempre ser feita pelo fato de sempre haver pelo menos
um objeto relacionado com cada elemento do universo. Isto , a frmula yP(f(y),y)
verdade neste contexto, quando f um smbolo novo de funo que interpretado como a
funo acima descrita.
Por outro lado, se yP(f(y),y) verdade em um contexto, temos que para cada elemento
e do contexto, o objeto nomeado por f(e) est relacionado com e (onde f a interpretao
de f no contexto), i.e. a frmula yxP(x,y) verdade neste contexto.
Neste exemplo mostramos que yxP(x,y) satisfatvel se e s se yP(f(y),y)
satisfatvel, onde f um smbolo novo d e funo.
Proposio PS3
Para cada frmula existe um procedimento efetivo para se obter uma frmula na forma
Qxonde s aparecem quantificadores universais no prefixo Qx e uma frmula sem
quantificadores na forma normal conjuntiva tal satisfatvel se e s se Qx
satisfatvel.
Prova
A frmula de sada poderia ser obtida a partir da frmula de sada do algoritmo de
obteno de forma norma conjuntiva, mas por questo de eficcia, daremos um algoritmo
alternativo.
Dada uma frmula :
1) Tome o fecho existencial de , i.e., se contiver uma varivel livre x, substitua por
x.
Repita este processo at que a frmula corrente no tenha mais variveis livres.
2) Elimine quantificadores redundantes, i.e. elimine todo quantificador x ou x que
no contenha nenhuma ocorrncia livre de x no seu escopo.
24
3) Renomeie as variveis ligadas de tal forma que as variveis governadas por
quantificadores sejam todas distintas.
4) Elimine as ocorrncias dos conectivos e .
5) Mova o conectivo para o interior da frmula at que preceda imediatamente
frmulas atmicas.
6) Mova os quantificadores para o interior da frmula
7) Elimine os quantificadores existenciais (Skolemizao), i.e,
Seja a frmula corrente. Obtenha a nova frmula corrente, ', substituindo a subfrmula
da forma y, que se situa mais `a esquerda em por [y/f(x1, ..., xn], onde:
x1, ..., xn uma lista de todas as variveis livres de y e f um smbolo de funo n-rio
(funo de Skolem) que no ocorre em .
Caso no haja variveis livres em y substitua y por [y/c], onde c uma constante
(de Skolem) que no ocorre em .
Repita o processo (de Skolemizao) at que todos os quantificadores existenciais
tenham sido eliminados.
8) Obtenha a forma normal prenex da frmula obtida no passo 6, i.e., mova os
quantificadores para a esquerda.
9) Obtenha a forma normal conjuntiva da matriz da frmula obtida no passo 7,
substituindo a matriz desta pela forma normal conjuntiva obtida.
10) Simplifique a frmula do passo 9 eliminando repeties de literais no mesmo disjunto
e disjunes que so tautologias.
Observe que:
- o fecho existencial da frmula obtido no passo 1 satisfatvel se e s se a frmula
original for satisfatvel. O argumento anlogo ao usado no exemplo Sklm1.
- os passos 2 a 6 produzem frmulas equivalentes formula obtida no passo 1. Assim, a
frmula obtida no passo 6 (equivalente do passo 1) satisfatvel se e s se a frmula de
entrada, , for satisfatvel.
- a cada introduo de smbolo de funo ou constante de Skolem, ocorrida no passo 7,
a frmula obtida satisfatvel se e s se a frmula antes da substiuio for satisfatvel.
O argumento anlogo ao usado nos exemplos Sklm2 e Skm3.
- os passos 8 a 10 obtm frmulas equivalentes frmula obtida no passo 7. Assim, a
frmula obtida pelo passo 10 (equivalente do passo 7) satisfatvel se e s se a
frmula de entrada, , for satisfatvel.
- os passos 6 e 10 so opcionais. O passo 6 se justifica por evitar que sejam
introduzidas no passo 7 funes com aridade maior do que o necessrio. (a aridade da
funo de Skolem introduzida da esquerda para direita vai depender do nmero de
quantificadores universais que estejam esquerda do quantificador existencial que
est sendo eliminado).
Exemplo PS3
Tome =y(xP(x)Q(x,y,z)) x(P(x) yR(x,y)).
Aplicando o passo 1 obtemos o fecho existencial de :
=zxy(xP(x)Q(x,y,z)) x(P(x)yR(x,y))
O passo 2 no se aplica.
25
Renomeando-se as variveis quantificadas temos:
=suy(xP(x)Q(u,y,s)z(P(z)vR(z,v))
Eliminando os conectivos e em temos:
=suy((xP(x)Q(u,y,s)(Q(u,y,s)xP(x)z(P(z)vR(z,v))
Movendo para o interior da frmula temos:
=suy((xP(x)Q(u,y,s)(Q(u,y,s)xP(x)z(P(z)vR(z,v)))
Passo 6 no se aplica.
Eliminando os quantificadores existenciais temos:
=((P(d)Q(b,c,a)(Q(b,c,a)xP(x)z(P(z)R(z,f(z)))
Obtendo a forma normal prenex temos:
=zx((P(b)Q(c,a,d)(Q(c,a,d)P(x)(P(z)R(z,f(z)))
A matriz da forma j est na forma conjuntiva e o passo 10 no se aplica.
Exerccios
Aplique o algoritmo de Skolemizao s frmulas abaixo
ExPSx[(yR(x,g(y,z)))S(z,h(x,y,z))]
ExPS2.y[R(z,y)zS(z,y)]
ExPSy[xR(x,f(y))S(z,g(x,c))]
ExPSxy[zT(x,y,z)(R(x,y)S(y,x))
ExPSxyz{[P(x, y)P(y,z)P(z,z)]
P(x,y)Q(x,y))Q(x,z)Q(z,z))
ExPSxz[P(z, y) xP(z,x)P(x,z)]
26