Вы находитесь на странице: 1из 207

Srie

Apontamentos

Maria do Carmo Nicoletti

A CARTILHA DA. L GICA

Universidade Federal de So Carlos

EdUfSCar

UNIVERSIDADE FEDERAL DE SO CARLOS

Oswaldo Baptista Duarte Filho


Reitor

Maria Stella Coutinho de Alcntara Gil


Vice-Reitora

Oswaldo Mrio SerraTruzzi


Diretor da Editora da UFSCar

EdUFSCar - Editora da Universidade Federal de So Carlos

Conselho Editorial

Joo Eduardo dos Santos


Jos Renato Coury
Nivaldo Nale
Paulo Reali Nunes
Oswaldo Mrio SerraTruzzi (Presidente)

Maria Cristina Priore


Secretria Executiva

Universidade Federal de So Carlos


Editora da Universidade Federal de So Carlos
Via Washington Lus, km 235 - 13565-905 - So Carlos, SP. Brasil
Telefax [16) 3351-8137
E-mail edufscar @ufscar.br
http://www.editora.ufscar.br

Maria do Carmo Nicoletti

A cartilha da lgica

So Carlos

EdUFSCar
2008

2008 Maria do Carmo Nicoletti

Coordenao Editorial
Luis Gustavo Sousa Sguissardi
Preparao e Reviso de Texto
Marina Venncio Grandolpho
Ingrid Pereira de Souza Favoretto
Editorao Eletrnica
Vtor Massola Gonzales Lopes
Impresso e Acabamento
Departamento de Produo Grfica da Universidade Federal de So Carlos

Ficha catalogrfica elaborada pelo DePT da Biblioteca Comunitria da UFSCar

N643c

Nicoletti, Maria do Carmo.


A cartilha da lgica I Maria do Carmo Nicoletti -- So
Carlos : EdUFSCar, 2008.
205p.

ISBN - 978-85-7600-117-1

1. Lgica. 2. Lgica proposicional. 3. Lgica de primeira


ordem. 4. lgebra booleana. 5. Interpretao. 6. Modelo de
Herbrand. 1. Ttulo.

CDD - 160 (20)


CDU-16

A professora Maria do Carmo Nicoletti docente do Departamento de Computao da UFSCar.

Todos os direitos reservados. Nenhuma parte desta obra pode ser reproduzida ou transmitida por
qualquer forma e/ou quaisquer meios (eletrnicos ou mecnicos, incluindo fotocpia e gravao)
ou arquivada em qualquer sistema de dados sem permisso escrita da editora.

SUMRIO

PREFCI0 .............................................................................................................................................7
1. A LGICA PROPOSICIONAL ...........................................................................................................8
1.1 INTRODUO ........................................................................................................................................8
1.2 FRMULAS BEM-FORMADAS (WFF) E INTERPRETAO ................................................................ 10
1.3 VALIDADE E INCONSISTNCIA ...................................................................................................1.7
1.4 CONSEQNCIA LGICA E EQUIVALNCIA LGICA ....................................................................... 23
1.5 LGEBRA DA LGICA PROPOSICIONAL..................................-----~
1..6 FORMAS NORMAIS-----

33

1.6.1 FORMA NORMAL CONJUNTIVA -------34


1.6.2 FORMA NORMAL DISJUNTIVA ...................................................................................................................... 35
1.6.3 OBTENO DA FNC SEM O USO DE TABELA-VERDADE .......................................................................... 37
1.6.4 A NOTAO CLAUSAL .................................................................................................................................... 40

1.7 INFERNCIA LGICA E SISTEMAS DE DERIVAO ......................................................................... 43


1.8 PROVA AUTOMTICA DE TEOREMAS - ALGORITMO DE WANG .................................................... 57
1.9 RESOLUO E PROCEDIMENTOS DE PROVA POR RESOLUO .................................... 66

2. A LGEBRA DE BOOLE ................................................................................................................ 78


2.1 CONCEITOS INICIAIS ............................................................................................................................ 78
2.2 FUNES BOOLEANAS ........................................................................................................................ 81
2.3 FRMULAS BOOLEANAS ..................................................................................................................... 86
2.4 MINIMIZAO DE EXPRESSES BOOLEANAS ................................................................................. 95
2.4.1 CONSIDERAES INICIAIS ........................................................................................................................... 96
2.4.2 O ALGORITMO DE QUINE-McCLUSKEY ......................................................................................................100
2.4.3 MAPAS DE KARNAUGH ............................................................................................................................... 109

3. A LGICA DE PREDICADOS ......................................................................................................114


3.1 CONCEITOS BSICOS .................................................................................................................114
3.2 A LGICA DE PREDICADOS COMO LINGUAGEM DE REPRESENTAO DE CONHECIMENTO .... 126
3.2.1 USANDO LGICA DE PREDICADOS PARA REPRESENTAR SENTENAS EM LNGUA NATURAL ....... 126
3.2.2 EXEMPLOS DE TRADUO DE SENTENAS PARA EXPRESSES DA LGICA DE PREDICADOS ....128

3.3 INTERPRETAES E MODELOS ..............................................................- . 133

4. SUBSTITUIO, UNIFICAO E FORMA NORMAL.. ................................................................ 143


4.1 O PROCESSO DE SUBSTTTUI0 ......................................................................................................143
4.2 O PROCESSO DE UNIFICAO ...................................................... '. ................................................... 147
4.2..1 EXEMPLOS DO PROCESSO DE UNIFICAO - O PROCEDIMENTO UNIFY ...........................................148

4.2.2 IMPLEMENTAO PROLOG DO ALGORITMO UNIFY ...............................................................................154


4.3 O PROCESSO DE CONVERSO PARA A FORMA CLAUSAL ........................................................... 157

5. RESOLUO EM LGICA DE PREDICADOS ............................................................................ 162


5.1 CONSIDERAES INICIAIS ................................................................................................................ 162
5.2 UM EXEMPLO ......................................................................................................................................162
5.3 USANDO RESOLU0 ........................................................................................................................164
5.4 ESTRATGIAS DE CONTROLE PARA MTODOS DE RESOLUO ................................................ 171
5A.1 ESTRATGIA EM LARGURA .........................................................................................................................172
5.4.2 ESTRATGIA DO INPUT LINEAR ................................................................................................................. 172

5.4.3 ESTRATGIA DO CONJUNTO SUPORTE .....................................................................................................173


5.4.4 ESTRATGIA DA PREFERNCIA POR CLUSULAS UNITRIAS.............................................................. 174

6. UNIVERSO, INTERPRETAO E MODELO DE HERBRAND .................................................... 176


6.1 CONSIDERAES INICIAIS ................................................................................................................ 176
6.2 O UNIVERSO E A BASE DE HERBRAND ........................................................................................... 176
6.3 INTERPRETAO E MODELO DE HERBRAND ................................................................................. 179

1 LISTA DE EXERCCIOS ...............................................................................................................186

2 LISTA DE EXERCCIOS ...................................................................................................189


3 LISTA DE EXERCCIOS ............................................................................................................... 192
4 LISTA DE EXERCCIOS ............................................................................................................... 194
5 LISTA DE EXERCCIOS .............................................................................................................. 196
6 LISTA DE EXERCCIOS ............................................................................................................... 198
7 LISTA DE EXERCCIOS ............................................................................................................... 200
BIBLIOGRAFIA E REFERNCIAS ...............................................................................................204

PREFCIO

A Lgica desempenha um papel central em muitas reas de conhecimento, particularmente em


Matemtica e Computao. A estreita ligao entre Lgica e Computao est principalmente relacionada ao desenvolvimento de linguagens para modelar situaes e problemas encontrados, com
vistas s suas solues. Raciocinar sobre essas situaes significa construir argumentos sobre elas
- o objetivo fazer isso formalmente, de maneira que a prova da validade de argumentos possa
ser automatizada. Para a especificao e o desenvolvimento de argumentos de maneira rigorosa
preciso primeiro o estabelecimento de uma linguagem na qual se possa expressar sentenas evidenciando sua estrutura lgica. A Lgica Proposicional e a Lgica de Predicados, os principais
assuntos tratados nestes Apontamentos, so duas dessas linguagens formais.
A principal motivao para a elaborao deste Apontamento foi a de disponibilizar material
impresso para o acompanhamento das aulas da disciplina Introduo Lgica, que faz parte do
elenco de disciplinas introdutrias dos cursos de Bacharelado em Cincias da Computao e de
Engenharia da Computao da Universidade Federal de So Carlos. Os assuntos tratados seguem
a ementa da disciplina. Acredito que a disponibilidade de material impresso sobre os assuntos discutidos em classe contribui para o melhor entendimento de conceitos apresentados; permite que a
ateno seja direcionada ao que est sendo discutido/apresentado em sala de aula; d segurana ao
aprendizado, uma vez que se toma uma referncia dos conceitos discutidos; abre perspectivas para
novas discusses/questes, por meio dos exemplos fornecidos e dos exerccios propostos.
Os conceitos e resultados descritos podem ser e encontrados em diversas referncias sobre os
assuntos tratados. A teoria descrita no Captulo 2, sobre lgebra de Boole, foi substancialmente
fundamentada em notao e definies encontradas em Berztiss (1975), publicao que, apesar da
idade avanada (como referncia a assuntos computacionais), precisa e formal em muitos de seus
captulos, o que a permite ser, at os dias de hoje, altamente apreciada e respeitada.
So Carlos, maro 2008
Maria do Carmo Nicoletti

1. A LGICA PROPOSICIONAL
A Lgica Proposicional (ou Clculo Proposicional) um dos mais simples formalismos lgicos
existentes e pode ser considerada a formalizao de formas simples de raciocnio. Apesar de simples e sem recursos para a representao de muitos problemas/situaes do mundo real, ainda
assim a Lgica Proposicional, como ser visto, conveniente e poderosa o suficiente para lidar
com muitos problemas e formalizar precisamente a busca de suas solues. Este captulo aborda os
principais elementos da Lgica Proposicional, tendo como objetivo, alm de fornecer e discutir os
fundamentos da Lgica Proposicional, estabelecer a conceituao necessria para a compreenso
dos captulos que o seguem.
A Lgica Proposicional lida apenas com enunciados declarativos, chamados proposies. As
sentenas exclamativas, imperativas e interrogativas so, pois, excludas.

1.1 INTRODUO
Definio 1.1 Uma proposio uma sentena declarativa que pode assumir os valores'.' verdade v

(com o significado de que a proposio verdadeira) ou f (com o significado de que a proposio


falsa), um excluindo o outro.
Exemplo 1.1 Exemplos de proposies:

1. A soma dos nmeros 5 e 6 igual a 11.


2. O nome do menino Pedro.
3. O programa tem problemas.
4. As refeies so saborosas e caras.
5. Um tringulo ABC retngulo se e somente se tem um ngulo reto.
6. Se eu como muito ento eu engordo.
7. A mesa de madeira ou o chapu de palha.
Exemplo 1.2 As quatro sentenas a seguir no so tratadas na Lgica Proposicional, uma vez que

as duas primeiras so interrogativas, a terceira imperativa e a quarta exclamativa.


1. Quando voc pretende viajar?
2. Que horas so?
3. Que Deus a acompanhe.
4. O relato de sua viagem incrvel!

A cartilha da lgica

Observao 1.1 importante mencionar que muitas sentenas comumente utilizadas no dia a
dia no so completamente verdade e tampouco so complemente falsas. Por exemplo, se um
programa computacional teve como sada um resultado inesperado, freqentemente no est claro
se o resultado foi efetivamente causado por um problema no programa ou se foi conseqncia de
problemas em programas subjacentes. A Lgica Proposicional, entretanto, lida apenas com proposies verdadeiras ou falsas; qualquer proposio que no se adequar a essa bivalncia no
considerada.
Observao 1.2 As proposies 1, 2 e 3 do Exemplo 1.1 so proposies atmicas (ou tomos),
uma vez que nelas no aparecem os conectivos e, ou, se .. ento e se e somente se, tratados a seguir. As proposies 4, 5, 6 e 7 so proposies compostas justamente porque nelas tais conectivos
aparecem. Toda proposio composta contm pelo menos um conectivo lgico.
Observao 1.3 A Lgica Proposicional lida apenas com proposies que tm valores-verdade v
ou f, isto , segue o princpio do terceiro excludo ou, equivalentemente, considerada uma lgica
bivalente. Qualquer proposio que no tenha o valor-verdade v necessariamente ter que ter o
valor-verdade f.
Observao 1.4 [Grassmann & Tremblay, 1996] Freqentemente sentenas em lngua natural (i.e.,
portugus, ingls, francs, espanhol, etc.) so ambguas uma vez que algumas palavras usadas
nas sentenas podem ter mais do que um significado. A especificao da linguagem lgica tem
como objetivo evitar essa ambigidade. Alm disso, os conectivos de muitas lnguas naturais refletem preocupao com causalidade, inteno, nfase, crenas e temporalidade. A palavra "se",
por exemplo, freqentemente implica algum tipo de causalidade. A lgica clssica, por outro lado,
apenas lida com verdade e falsidade, o que significa que a noo de causalidade no possvel de
ser expressa. Por essa razo, so introduzidos smbolos matemticos para representar os conectivos
da lgica. Esses smbolos podem ento ser definidos de maneira no ambgua.
Definio 1.2 O alfabeto da Lgica Proposicional constitudo por:
Smbolos de pontuao: ( )
Smbolos de verdade: verdade, falso
Smbolos proposicionais atmicos: p, q, r, s, t, u, ...
Conectivos lgicos:--,, /\, v,

~. H

1O

EdUFSCar -Apontamentos

1.2 FRMULAS BEM-FORMADAS (WFF) E INTERPRETAO


Como estabelecido na Observao 1.2, novas proposies podem ser construdas com base em
outras, por meio do uso de conectivos lgicos. Essas novas proposies, bem como as proposies
atmicas, so chamadas de frmulas bem-formadas (wff-well-formedformulas), desde que satisfaam a Definio 1.3.
Observao 1.5 Para representar proposies gerais (sejam elas atmicas ou compostas) so usadas metavariveis proposicionais, representadas por letras do alfabeto grego: a,~,

x,

o, E, etc.

Definio 1.3 Uma wff definida recursivamente como segue:


1. os smbolos de verdade (i.e., verdade e falso, como especificados em Definio 1.2) so wffs;
2. um tomo uma wff;
3. se a e

Pso wffs, ento as proposies compostas listadas na Tabela 1.1 tambm so wffs;

4. as nicas wffs so as definidas nos itens 1, 2 e 3 acima.


Tabela 1.1 Regras para a formao de wffs.
~~~~,.----~----..~~~~~~~~~~~~~

wff

lida como

(--a)

(a /\
(a v

p)
p)

no a

negao

p
a ou p

conjuno

ae

disjuno

(a ._

~)

se a ento

p)

a se e somente se

(a

wff chamada de

condicional
~

bicondicional

Observao 1.6 O operador --(no) um operador unrio, ou seja, aplicado a um nico operando.
Quando o operando em questo for um tomo (p, por exemplo), tanto o tomo quanto o tomo negado (ou seja, tanto p quanto --p), denominado literal. Os conectivos/\, v,

._e~

so conectivos

binrios, pois so usados para conectar duas wffs.


Observao l. 7 Se cuidados no forem tomados, expresses lgicas podem ser ambguas. Considere, por exemplo, as trs proposies atmicas:
p definida como "Maria termina o relatrio"
q definida como "Maria est feliz" e
r definida como "Maria vai ao cinema".

Censidere a proposio composta p -t q v r. Sem o estabelecimento de uma regra precisa, essa

exp

-o pode ser interpretada de duas maneiras:

A cartilha da lgica

( 1) pode significar (p

11

q) v r que, parafraseada em lngua natural, expressa "se Maria termina o

relatrio, Maria est feliz e ir, em qualquer circunstncia, ao cinema";


(2) pode significar p

(q v r) que, parafraseada em lngua natural, expressa "se Maria termina o

. relatrio Maria est feliz e Maria ir ao cinema".


~

Portanto, a expresso p

q v r ambgua. Uma maneira de evitar ambigidade por meio do

',/:,,..

:lif estabelecimento de regras, como as da Definio

1.3, que define a sintaxe da Lgica Proposicional.

~l'uma expresso lgica que segue as regras da Definio 1.3 no ambgua .


. :: :~.

f,.Observao 1.8 importante enfatizar que a Definio 1.3 recursiva, ou seja, para que uma
'~frmula seja uma wff preciso que suas "partes" tambm sejam wffs. Na expresso (_,a), a con-

)_siderada o escopo da negao e o conectivo_, chamado de conectivo principal da expresso _,a.

Em uma conjuno, i.e., uma expresso lgica da forma (a /\

~),

o conectivo principal o /\ e a e

Pso chamados respectivamente de escopo esquerda e escopo direita da conjuno. Uma nomeao similar se aplica s expresses (a v

~), (a~ ~)

e (a

~ ~).

Os escopos podem, por sua vez,

ser expresses compostas e, portanto, os conectivos encontrados nos escopos so subconectivos da


expresso em questo. Por exemplo, na exp;esso (p /\ q) ~ r o conectivo principal ~ e o subconectivo do escopo esquerda /\. O escopo direita do conectivo principal no tem conectivo.
Note que o /\ o conectivo principal do escopo esquerda.
Exemplo 1.3 Considere o procedimento para verificar se uma dada frmula a bem-formada ou no.

(a) Suponha que a frmula a seja ((p tt q) v (r /\ (-.s))) tt (-.p). O conectivo principal de a tt.

Seguindo as regras apresentadas na Tabela 1.1, para que a seja bem-formada, preciso mostrar
que ((p tt q) v (r /\ -.s)) e que (-.p) so bem-formadas. Para mostrar que ((p tt q) v (r /\ -.s)), cujo
conectivo principal v, bem-formada, preciso evidenciar que tanto (p tt q) quanto (r /\ -.s) so
bem-formadas.
Note que (p tt q) bem-formada uma vez que p bem-formada ( um tomo), q bem-formada
( um tomo) e a composio de duas frmulas bem-formadas, usando o conectivo tt bemformada (regra da Tabela 1.1 ).
Note que na frmula (r /\ (-,s)) a frmula r bem-formada, uma vez que um tomo e (...,.,s)
tambm bem-formada, uma vez que a negao de um tomo. Dado que ambas, tanto r quanto
(-.s), so bem-formadas, (r /\ (-.s)) bem-formada pois uma conjuno de duas frmulas bemformadas.
Como ambas, (p tt q) e (r /\ (-.s)), so bem-formadas, tambm o ser a disjuno dessas duas
frmulas, ((p tt q) v (r /\ (-.s))). Por outro lado, a frmula (-.p) bem-formada, pois a negao

12

EdUFSCar -Apontamentos

de um tomo. Dado que ambas so bem-formadas, a frmula composta de duas frmulas bemformadas por meio do uso do conectivo tt tambm bem-formada.
Cb) Suponha que a frmula a seja CCP

q) t t CP v)). Note que o conectivo principal de a tt, e

para a ser bem-formada, de acordo com a Tabela 1.1, ambas as frmulas, CP ~ q) e CP v ), precisam
ser bem-formadas.
A frmula

CP~

q) bem-formada uma vez quepe q so frmulas atmicas e a frmula resul-

tante, que a implicao

CP~

q), bem-formada. Dado que v o conectivo principal da frmula

CP v ), tal frmula s seria provada ser bem-formada se o conectivo estivesse conectando duas
frmulas bem-formadas. No caso, uma das frmulas a frmula atmica p, que bem-formada.
No entanto, no existe a segunda outra frmula, o que caracteriza CP v) como no bem-formada
e, conseqentemente, a frmula a no bem-formada. Outros exemplos de frmulas no bernformadas:
CCp

~ ~

q)

s)

CCP ~ /\ q) s)
CCp

C-.Cp ~ q)) /\ vq))

Definio 1.4 Seja a uma frmula da Lgica Proposicional. Uma subfrmula de a definida por:
1. a subfrmula de a;
2. se a: C.....,p) ento

p uma subfrmula de a;

3. se a urna frmula em qualquer dos padres:

CP/\ y), CP V
ento

y), CP~ y) ou CP t t y)

p e y so subfrmulas de a;

4. se a uma subfrmula de

p ento toda subfrmula a

subfrmula de

p.

Informalmente, urna subfrmula de urna frmula a uma parte de a que uma frmula Cde
acordo com a Definio 1.3).
Exemplo 1.4 Considere a frmula a: CP ~ q) t t r. As frmulas CP ~ q), p, q e r so todas subfrmulas de a.
Observao 1.9 Como pode ser evidenciado nas vrias referncias bibliogrficas ao final dessa
publicao, poucos autores usam expresses lgicas completamente parentizadas, dado que tais
expresses podem ser bastante longas e, freqentemente, so difceis de serem lidas. Os parntes
podem ser omitidos quando sua eliminao no introduzir ambigidade.

A cartilha da lgica

13

Particularmente, os parnteses externos de uma expresso lgica so, quase sempre, omitidos.
Por exemplo, ao invs de escrever (p v q) escreve-se p v q; ao invs de escrever ((p v q) H verdade) escreve-se (p v q) H verdade. Ao eliminar tais parnteses, no entanto, no deve ser esquecido
que eles devem voltar a ser introduzidos se a expresso em questo for composta com alguma outra
expresso.
Parnteses dentro de uma expresso tambm podem ser omitidos. A leitura da expresso resultante feita usando as chamadas regras de prioridade, que estabelecem uma hierarquia entre os
conectivos. A conveno que a maioria dos autores estabelece para os conectivos lgicos segue a
ordem decrescente de precedncia especificada na Tabela 1.2.
Tabela 1.2 Precedncia de conectivos lgicos.
~~~~-.-~~~~~

maior

menor

O conectivo-. tem sempre a maior precedncia. Por essa razo, a expresso lgica -.p v q deve
ser entendida como (-.p) v q e no como -.(p v q).
De acordo com a Tabela 1.2, na expresso p /\ q v r, o

tem precedncia sobre o v quando da

especificao de subexpresses. Portanto, p /\ q v r deve ser entendida como (p /\ q) v r. De maneira semelhante, p


sobre

o~.

q v r deve ser entendida como p

(q v r), uma vez que o v tem precedncia

O conectivo H tem a precedncia mais baixa de todas, o que significa que p H p

deve ser entendido como p H (p

r).

Em algumas expresses, entretanto, as regras de prioridade no so suficientes para remover todas as ambigidades. Por exemplo, a expresso p
ou como p
~.Todos
~

q ~ r pode ser entendida ou como (p ~ q)

(q ~ r). A escolha da interpretao usada depender da associatividade do conectivo

os conectivos lgicos binrios so associativos esquerda, e, conseqentemente, p

r deve ser entendido como (p ~ q)

r.

Definio 1.5 Cada uma das expresses envolvendo a e

na Definio 1.3 chamada de forma

sentenciai. Uma forma sentenciai uma especificao abstrata da sintaxe de um nmero infinito de
wffs compostas de smbolos que representam proposies atmicas. Uma wff que sintaticamente se
ajusta a uma forma sentenciai chamada de uma instncia de substituio da forma sentencia/.
Exemplo 1.5 A wff (p
formas sentenciais:

(q

r)) uma instncia de substituio de qualquer uma das seguintes

14

EdUFSCar - Apontamentos

1. a, tal que a (p

(q

r)).

2. (a

f3), tal que a p e f3 ( q

3. (a

(13 ~ y)), tal que a

r).

p, f3 q e y r.

Definio 1.6 A semntica - ou significado - de uma wff o valor-verdade a ela associado por
meio de uma interpretao. Uma interpretao I na Lgica Proposicional uma funo cujo contradomnio possui apenas dois elementos, como mostra a Figura 1.1, tal que:
o domnio de I o conjunto das wffs da Lgica Proposicional;
o contradomnio de I o conjunto {v,f};
os smbolos de verdade do alfabeto, verdade e falso, so interpretados por 1 como
I[ verdade]

v e !(falso]

Dado um smbolo proposicional p, I[p]

f;

{ v,f}.

Figura 1.1 lnterpretao de frmulas como uma funo em {v,f}.

Observao 1.10 A interpretao dos smbolos verdade fixa, ou seja, para qualquer interpretao 1,
I[ verdade] = v e I[falso] = f.
Definio l. 7 Seja y uma wff e considere uma interpretao I. O significado de y dado por 1, notado
por I[y ), determinado pelas regras:
1. Se y: p, tal que p um smbolo proposicional, ento I [y] = I[p] e l[p]
2. Se y: verdade ento l[y]
3. Seja

= v.

Se y: falso, ento I[y]

f.

13 uma wff. Se y: -,13, ento


l[y)

= l[-,j3) =

I[y] = l[-,f3J

v se I[f3] = f
f se I[j3] = v

4. Sejam a e 13 duas wffs. Se y: (a

j3), ento

I[(a

j3)] = v se I[a] = v e I[j3)

I[y]

E { v,f}.

A cartilha da lgica

15

I[a] =v el[j3]=f
I[y] = I[(a" j3)] = f se I[a] =f el[j3]=v
{
I[a] =f el[j3]=f
5. Sejam a e j3 duas wffs. Se y: (a v j3), ento
I[a] =vel[j3]=v
I[y] = I[(a v j3)] = v se I[a] =vel[j3]=f
{
I[ a] =f e I[j3] =V
l[y] = I[(a v j3)] = f se I[a]
6. Sejam a e j3 duas wffs. Se y:

(a~

f e I[j3] = f

j3), ento
I[a] =V e I[j3] =V

I(y] =

I[(a~

I[y] = I[(a

j3)] = v se I[a] =f el[j3]=v


{
I[a] =f el[j3]=f

j3)] = f se I[a] = v e I[j3] = f

7. Sejam a e j3 duas wffs. Se y: (a t t j3), ento


I[y] = I[(a

~ j3)] = v

I[y] = I[(a

~ j3)] = f

Exemplo 1.6 Considere a frmula a: ((-.p) "q)

se{I[a] =vel[j3]=v
I[ a] =f e I[j3] =f
se {I[a] =vel[j3]=f
I[ a] = f e I[j3] = v
~-.reuma

interpretao 1 dada por:

Para determinar o significado semntico de a de acordo com I (i.e., I[a]), considere:

ou seja, I[a] = v.
Exemplo 1.7 Considere a frmula a: ((-,p) v q)

((-,r)

(-,s)) e uma interpretao Idada por:

16

EdUFSCar -Apontamentos

Para determinar o significado semntico de a de acordo com l (i.e., l[a]), considere:

-.p

-.r

-.s

(-.p) v q

(-.r) ~ (-.s)

ou seja, I[a] = f.
Definio 1.8 Dada uma wff a, a tabela-verdade de a mostra a semntica de a sob todas as possveis interpretaes; cada lnha da tabela associada a uma possvel interpretao. O nmero de
possveis interpretaes funo do nmero de tomos presentes em a. A tabela-verdade de uma
frmula a com n tomos tem 2 possveis interpretaes, ou seja, 2n linhas.
Exemplo J.8 Considere a frmula a: ((-.p) v q) ~ ((-.r)

(-.s)). A Tabela 1.3 a tabela-verdade

de a. Note que a tem quatro tomos (p, q, r e s) e, portanto, sua tabela-verdade tem 24 = 16 possveis interpretaes.
Tabela 1.3 As 16 possveis interpretaes da expresso a : ((--,p) v q) ~ ((-.r) ~ (-.s)).

-.p

-.r

-,s

l,

12

13

14

15

16

17

18

19

110

I"
1,2

113

1,4

1,5

116

(-.p)

(-.r)

(-.s)

A cartilha da lgica

17

Note, na Tabela 1.3, que as 16 possveis interpretaes foram geradas sistematicamente, seguindo o padro adotado na literatura. A gerao sistemtica permite o controle e a fcil identificao
de uma particular interpretao. A interpretao l considerada no Exemplo 1.6 a interpretao
nomeada 13 na Tabela 1.3 .

Observao 1.11 Os conectivos

A,

v e ~ so simtricos no sentido de que a ordem das duas

expresses conectadas por eles no afeta o valor-verdade da expresso resultante. No entanto, o


conectivo

no simtrico, pois as expresses p

q e q ~ p tm diferentes valores-verdade em

uma mesma interpretao. Os valores-verdade de todos os conectivos esto sumarizados na Tabela

1.4, usando duas wffs atmicas.


Tabela 1.4 Resumo dos conectivos.

---,p

--,q

p /\ q

pvq

p~q

p~q

l,

12

13

14

1.3 VALIDADE E INCONSISTNCIA


O valor-verdade - ou simplesmente valor - de uma frmula sempre diz respeito a uma determinada interpretao. A Definio 1.9 estabelece um;i terminologia que se baseia no valor associado s
frmulas.

Definio 1.9
1. Se uma f nnula a tem valor v em uma certa interpretao l, diz-se que a verdadeira na

interpretao I.
2. Uma frmula a satisfatvel (ou consistente) se existe pelo menos uma interpretao l tal
que l[a]

v.

3. Uma frmula denominada vlida quando for verdadeira em todas as interpretaes possveis. Essas frmulas so conhecidas tambm como tautologias.
4. Se uma frmula a tem valor f em uma certa interpretao l , diz-se que a falsa na interpretao I.
5. Uma frmula a invlida se existe pelo menos uma interpretao I tal que I[a]

f.

6. Uma frmula a insatisfatvel (ou inconsistente) quando for falsa em todas as interpretaes possveis. Essas frmulas so conhecidas tambm como contradies.

18

EdUFSCar -Apontamentos

7. Na Lgica Proposicional, as frmulas que no so nem tautologias nem contradies so


comumente chamadas de contingentes.
8. Dada uma frmula a e uma interpretao 1, ento 1 satisfaz a se l[a]
9. Um conjunto de frmulas C={a 1, a 2, a 3,

v.

an} satisfatvel se e somente se existe uma

interpretao 1 tal que l[a,] = l[a2] = I[a3] = ... = I[an] = v. Neste caso, 1 satisfaz o conjunto
de frmulas

c.

Exemplo 1.9 Considere a frmula a: (p v q)

-4

(p " q). Como essa frmula possui dois tomos,

ela admite 2 = 4 interpretaes, como mostra a Tabela 1.5.


Tabela 1.5 Tabela-verdade da frmula a: (p v q) ~ (p /\ q).

(p vq)

(p /\ q)

11

12

13

14

Com relao frmula a, pode-se dizer que:


verdadeira nas interpretaes 11 e 14 ;
satisfatvel, dado que existe pelo menos uma (neste caso, existem duas) interpretao cuja
frmula v;
falsa nas interpretaes 12 e 13 ;
invlida, dado que falsa nas interpretaes 12 e 13 ;

uma frmula contingente, dado que no uma tautologia e tampouco uma contradio.
Exemplo 1.10 Considere a frmula~: (p /\ q /\ r)

-4

r. Como essa frmula possui trs

admite 2 = 8 interpretaes, como mostra a Tabela 1.6.


Tabela 1.6 Tabela-verdade da frmula j3: (p /\ q /\ r)

r.

P" q

(pAqAr)

I,

12

13

14

15

16

tomo~,

ela

A cartilha da lgica

19

Tabela 1.6 Continuao...

p Aq

(p /\ q /\ r)

17

18

IJPJ v, a frmula em questo uma tautologia.

Como para qualquer interpretao l i, i= 1, ... ,8,

Exemplo 1.11 Considere a frmula y: (p v --,p)

( q /\ --.q). Como essa frmula possui dois to-

mos, ela admite 2 2 = 4 interpretaes, como mostra a Tabela 1.7.


Tabela 1.7 Tabela-verdade da frmula y: (p v --,p)

(p /\ --,q).

--,p

--,q

II

12

13

14

Como para qualquer interpretao li, i= 1, ... ,4,

--,p q /\ --,q

IJPJ f, a frmula em questo uma contradio.

Exemplo 1.12 Considere o conjunto de frmulas C= {al' a 2, a 3, a 4 } , tal que:

a 2: ((-,p) /\ (--.q))

a3: ((-,q) /\ p)

O conjunto C no satisfatvel, pois, como pode ser visto na Tabela 1.8, no existe uma interpretao, entre as quatro possveis, que toma as quatro frmulas simultaneamente v.
Tabela 1.8 Conjunto C={a" a 2 , a 3 , a 4 }, tal que a, : (p

q), a 2 : ((--,p) /\ (--,q)), a 3 : ((--,q) /\ p) e a 4 : p no

so satisfatveis.

--,p

--,q

II

12

13

14

; Exemplo 1.13 Considere o conjunto de frmulas C= {a 1, a 2, a 3, a 4 }, tal que:

20

EdUFSCar -Apontamentos

1: (p ~ q)
a 2 : (r v (---,q))

a 3 : (s v (--.r))

O conjunto C satisfatvel, pois, como pode ser visto na Tabela 1.9, existe uma interpretao {1 1)
que torna todas as quatro frmulas v.
Tabela 1.9 Conjunto C={a 1, a 2 , a 3 , a 4 }, tal que a 1 : (p----)- q), a 2 : (r v (--,q)), a 3 : (s v (--,r)) e a 4 : p so satis-

fatveis.

---,q

---,r

I,

12

13

14

15

16

17

18

19

I,o

111

1,2

113
114

115

116

Exemplo 1.14 A Tabela 1.10 evidencia que a wff (--,(p /\ q) v q) uma tautologia.
Tabela 1.10 Tabela-verdade da wff (--,(p

q) v q).

(p /\ q)

I,

12

---,(p /\ q) (---,(p /\ q)

q)

A cartilha da lgica

21

Tabela 1.10 Continuao ...

(p /\ q) -,(p /\ q) (-,(p /\ q)

13

14

q)

Exemplo 1.15 A frmula tautolgica (p v (P)) tem por tabela-verdade a Tabela 1.11. Essa frmula chamada de lei do meio excludo, que estabelece que ou p verdade ou falso e todo o resto
excludo. A Tabela 1.11 prova essa lei mostrando que interpretada v sob toda possvel inter-

pretao. Como a frmula tem apenas um tomo, o nmero de possveis interpretaes para essa
frmula apenas 2 1 = 2.
Tabela 1.11 Tabela-verdade da wff (p v (--,p)).

(-,p)

II

12

(p

(p))

Exemplo 1.16 Duas frmulas a 1: (falso~ p) e a 2 : (p~ verdade) so evidenciadas como tautologias
na Tabela 1.12.
Tabela 1.12 Tabela-verdade das wffs aJ.:

(falso~

p) e a,= ( p~ verdade).

(falso~

p)

(p~

verdade)

Observao J.12 Se a for uma tautologia que contm uma subfrmula j3, uma nova expresso
lgica a ' pode ser construda por meio da substituio de todas as ocorrncias de

~por

uma ex-

presso arbitrria. A expresso lgica resultante a' continua sendo uma tautologia. Considere a
wfftautolgica a: (p v (-,p)) do Exemplo 1.15 (Tabela 1.11). Considere a substituio de todas as
ocorrncias de p em a por qualquer wff arbitrria, por exemplo, (p
v (-,(p

q). A nova wff, a'= ((p /\ q)

q))) tambm tautolgica, como mostra a Tabela 1.13.

Tabela 1.13 Tabela-verdade da wff a' = ((p /\ q) v (-.(p /\ q))).

a'

(p /\ q)

II

12

13

14

(P

q)

22

EdUFSCar -Apontamentos

Substituies semelhantes podem ser feitas em qualquer outra tautologia. Isso se deve ao fato
de que, na avaliao do valor-verdade de qualquer expresso, apenas o valor-verdade de suas
subexpresses imediatas tem efeito. O fato de o valor em questo ter sido obtido diretamente
pela interpretao ou por algum outro tipo de avaliao anterior irrelevante.
Definio 1.10 (O princpio de substituio) Se a for uma frmula tendo J3 como subfrmula, o
valor de a no muda se 13 for substituda por uma expresso que tenha os mesmos valores-verdade
que 13. Se a for uma tautologia, a permanece uma tautologia independentemente da interpretao
de J3 ser v ou f.
Exemplo 1.17 Considere a wff a: ((p v q) /\ (p v r)). Considere a subfrmula J3: (p v q) e considere
a frmula a': (({-,p) ~ q) /\ (p v r)) obtida pela substituio de 13 por uma frmula com os mesmos
valores que J3 em cada interpretao, no caso, a frmula 13 '= ( (-,p) ~ q). A Tabela 1.14 evidencia
que as frmulas a e a' tm o mesmo valor sob cada uma das oito interpretaes, evidenciando o
princpio de substituio.
Tabela 1.14 Tabela-verdade das wffs a e a', evidenciando o princpio da substituio.

-,p

(-,p)~q

(p vq)

II

I2

I3

I4

Is

I6

I7
Is

a'

(p

r)

Exemplo 1.18 O fato de a wff a: (-,(p /\ q) v q) ser tautolgica (ver Exemplo 1.14) permite dizer
que a wff a': (-,((p v q) /\ r) v q) tambm tautolgica, como evidenciado na Tabela 1.15. Observe que a forma sentenciai associada a ambas (-,(a 1 /\ a 2) v a 2). Na frmula a, a 1: p e a 2 : q. Na
frmula a', a 1: (p v q) e a 2:r.
Tabela 1.15 Tabela-verdade das wffs a e a', com a tautolgica e y:---, ((p v q) /\ r).

q) /\ r

a'

(pvq)

II

12

I3

(p

A cartilha da lgica

23

Tabela l.15 Continuao...

a'

(p vq)

14

15

16

17

18

(p

q) /\

1.4 CONSEQNCIA LGICA E EQUIVALNCIA LGICA

p1, p2, f3 3, ... , Pn e uma frmula a, diz-se que a conseqncia


lgica de p1, p2, f3 3, , Pn se e somente se em qualquer interpretao em que p1, f3 2, (33, ... , pn forem
simultaneamente v, a tambm v. Se a conseqncia lgica de P,, f3 2, f3 3, , Pn' diz-se que a segue logicamente de f3 1, (3 2, f3 3, ., Pn Para indicar esse fato, a seguinte notao usada:
Definio 1.11 Dadas as frmulas

Exemplo 1.19 Como pode ser comprovado na Tabela 1.16, a frmula (p v q) conseqncia lgica
da frmula p, ou seja, toda interpretao que torna p v, torna (p v q) v tambm. De maneira anloga,
pode-se dizer que (p v q) conseqncia lgica da frmula q, ou seja, toda interpretao que toma
q v, torna (p v q) v tambm.
t

Tabela 1.16 Tabela-verdade que evidencia p

j= (p vq) e tambm q 1= (p vq).


p

Exemplo 1.20 Considere as frmulas a: (p

q),

(p

q)

p: (r ~ s) e y: (p v r) ~ (q v s). Verificar se a, p

I= y, isto , se y conseqncia lgica de a e p. Para essa verificao, considere a Tabela 1.17, com
todas as 16 possveis interpretaes.
Tabela l.17 Evidenciando a conseqncia lgica (p

(p

q)

(r~

q), (r ~ s)

s)

(p

r)

1= (p v r) ~ (q v s).
s)

(p v r)

II

12

(q

(q v s)

+-

EdUFSCar-Apontamentos

24

Tabela 1.17 Continuao ...

(p

q)

(r~

(p

r)

(q

(p

r)

(q

13

14

15

16

17

18

19

110

111

112

I13

114

I,s

r16

s)

V S)

V S)

Note na Tabela 1.17 que, nas interpretaes nas quais ambas a e 13 so interpretadas v (ou seja,
interpretaes 11, I 3, 14 , 111 , 112 , I 13 , 115 e116' assinaladas na tabela com uma flecha), a frmula y tam-

bm interpretada v. Isto permite dizer que y uma conseqncia lgica de a e 13, ou seja, pode-s~
escrever a, 13

i= y. Por meio da inspeo da Tabela

1.17 pode-se dizer que a frmula a /\

p no

conseqncia lgica da frmula y. Isso se deve ao fato de existirem interpretaes que tomam y v
e, nessas mesmas interpretaes, a /\

p no v (interpretaes I2, 15, 17 e 110).

Definio 1.12 Diz-se que uma frmula a logicamente equivalente(=) a uma frmula 13 se e somente se a for conseqncia lgica de 13 e 13 for conseqncia lgica de a, isto :

a == 13 se e somente se a

!= 13 e 13 != a

Exemplo 1.21 Usando a Definio 1.12, mostre que (p

q) == (-.p v q). Para tal, preciso

mostrar que:
(1) (p ~ q)

!= (-.p v

(2) (-.p v q)

q).

!= (p ~ q), ou seja, que (p ~ q) conseqncia lgica de (-.p v

q).

q), ou seja, que (-.p v q) conseqncia lgica de (p

Mostrar (1) mostrar que, sempre que (p


tada v. Isso est evidente na Tabela 1.18.

q) for interpretada v, (-,p v q) tambm interpre-

A cartilha da lgica

Tabela 1.18 Tabela-verdade que evidencia (p ~ q)

25

i= (--.p v q).

(p~

(--.p

--.p

q)

q)

II

I2

I3

I4

Como pode ser visto na Tabela 1.18, a frmula (p

q) interpretada v nas interpretaes 11,

I3 e I 4 Note que nessas interpretaes a frmula (--.p v q) tambm interpretada v, o que permite
escrever (p

q)

i= (--,p v q).

Mostrar (2) mostrar que, sempre que (--,p v q) for interpretada v, (p

q) tambm interpre-

tada v. Isso est evidente na Tabela 1.19.


Tabela 1.19 Tabela-verdade que evidencia (---,p v q)

i= (p ~ q).

-,p

II

I2

13

14

(--.p

q) (p

~q)
~

Como pode ser visto na Tabela 1.19, a frmula (-,p v q) interpretada v nas interpretaes 11,
13 e I 4. Note que nessas interpretaes a frmula (p ~ q) tambm interpretada v, o que permite
escrever que (--,p v q) i= (p ~ q). Considerando que (1) e (2) foram provadas, pode-se escrever que

(p

q):: (--,p

q).

Teorema 1.1 Dadas as frmulas 13 1, 13 2, 13 3,... , 13 0 e uma frmula a, diz-se que a conseqncia
lgica de 13 1, 132, j3 3,... , 130 se e somente se a frmula

13 1 /\ 13 2 /\ 13 3 /\

/\

13

a for uma tautologia.

Prova

(1) Sejam as frmulas 13 1, 13 2, 13 3, .. ., 130 e a e considere que a seja conseqncia lgica de 13 1, j3 2, 13 3,.. .,
130 Seja I uma interpretao qualquer. Duas situaes podem ocorrer:
(1.1)

se 13 1, 132'

Pr., 13Jorem todas interpretadas vem 1, ento a

tambm vem 1, dado que

conseqncia lgica dos 13 1, j3 2 , 13 3, .. ., 13 0 Portanto, 13, /\ 13 2 /\13 3 /\ ... /\13 0 ~a vem I.


(1.2) se um dos

pi (i= 1, .. ., n) for f em I, 13, /\ 132 /\ 13 3 /\ ... /\ 13

ser tambm f em I. Independen-

temente de o valor de a em I ser vou f, a frmula 13, /\ 13 2

/\

j3 3

/\ /\

13

~a

vem I,

dado que uma implicao sempre interpretada v se seu antecedente for interpretado f.

26

EdUFSCar -Apontamentos

De (1.1) e (1.2) tem-se que

J3 2 /\ J33 /\ /\ J3n ~ a

J3, /\ J32 /\ J3 3 /\ /\ J3n ~a vem qualquer interpretao, ou seja, J3 1 /\

uma tautologia.

J3 1 /\ J3 2 /\ J3 3 /\ /\ J3n ~ a
vem qualquer interpretao. Para que isso acontea, se J3 1 /\ J3 2 /\ J3 3 /\ /\ J3n for vem 1, a tambm
deve servem 1, ou seja, a conseqncia lgica de J3 1, J3 2, J3 3 , , J3n.

(2) Do fato de

J3, /\ J3 2 /\ J3 3 /\ /\ J3n ~ a

ser uma tautologia, tem-se que

Exemplo 1.22 Considere novamente que (p


que (-,p v q)

1= (p ~ q)) s que,

q)

i= (-,p v

= (-,p v

q) (ou seja, que (p

q)

1= (-,p v

q) e

desta vez, usando o resultado estabelecido pelo Teorema 1.1. O

problema novamente mostrar que (p


1. (p

q)

q)

=(-,p v q). Para tal, preciso mostrar que:

q) o que, pelo Teorema 1.1, significa mostrar que (p

q)

(-,p v q)

uma tautologia (ver Tabela 1.20).

1= (p ~ q) o que, pelo Teorema

2. (-,p v q)

1.1, significa mostrar que (-,p v q)

(p

q)

uma tautologia (ver Tabela 1.21).


Tabela 1.20 Tabela-verdade que evidencia a tautologia (p ~ q)
(p

-,p

q)

(-,p

(---,p v q).

q) (p

11

12

13

14

Tabela 1.21 Tabela-verdade que evidencia a tautologia (---,p v q)

q)

-,p

11

12

13

14

q)

(p~q)

q)

q)

(p ~ q).

(-,p

(-,p

(-,p

q)

(p

Observao 1.13 A definio de frmulas equivalentes (Definio 1.12) pode ser reescrita considerando o estabelecido pelo Teorema 1.1. A Definio 1.12 estabelece que duas frmulas a e
equivalentes se ambas as conseqncias lgicas a
Considerando o Teorema 1.1, a

1= J3

1= J3 e J31= a

se e somente se a

J3 so

forem satisfeitas.

J3

for uma tautologia e

J3 1= a

se e

13 ~a for uma tautologia. Portanto, duas frmulas a e J3 so equivalentes (a= J3) se


e somente se a~ J3 for uma tautologia e J3 ~a for uma tautologia, ou seja,

somente se

(a

= J3) se e somente se a

J3 for uma tautologia.

A cartilha da lgica

Diz-se que duas frmu]as a e

Z1

P so equiva1entes se e somente se os valores-verdade de a

coincidirem para qualquer interpretao.


Exemplo 1.23 Considerando a Observao 1.13, uma outra abordagem para evidenciar a equi valncia lgica (p

q)

= (--,p v q) mostrar que a frmula (p

q)

(-.p v q) uma tautologia,

como feito na Tabela 1.22.


Tabela 1.22 Tabela-verdade que evidencia a tautologia (p

--,p

q) B (-.p v q).
~

11

12

13

14

(p

Teorema 1.2 Dadas as frmulas


lgica de

q)

(--,p

p1, p2, P3, .. ., Pn

q) (p

q)

(--,p

q)

e uma frmula a, diz-se que a conseqncia

p1, p2, p3,. .. , P se e somente se a frmula


0

P1 /\ P2 /\ P3 /\ ... /\ P
0

/\

-.a for uma contradio.

Prova Sabe-se pelo Teorema 1. 1 que a frmula a conseqncia lgica das frmulas

p1, p2, P3,. ,

P se e somente se p1 /\ p2 /\ p3 /\ ... /\ P ~ a for uma tautologia. Equivalentemente, a conseqncia lgica das frmulas p1, p2, P3, . .. , Pn se e somente se a negao de p1 /\ p2 /\ p3 /\ ... /\ P ~
0

a for uma contradio. Mas,

-.(P1 /\ P2 /\
-,(-,(pi /\

ou seja, p1 /\

p2 /\ P3 /\ ... /\ P /\ -, a
0

P3/\ ... /\ P ~ a)=

P2 /\ p3 /\ ... /\ Pn) V a)=

uma contradio.

Observao 1.14 No Exemplo 1.22, o Teorema 1.1 foi usado para evidenciar conseqncia lgica
como parte do processo de verificao de equivalncia lgica. A seguir, o Teorema 1.2 usado com
o mesmo propsito, para a mesma equiva1ncia lgica. Tem-se, pois, que:
1. (p

q)

\= (-.p v

q) o que, pelo Teorema 1.2, significa mostrar que (p ----; q) /\ (--,(--,p v q))

uma contradio (ver Tabela 1.23);

2. (--,p v q)

\= (p ~ q) o que, pelo Teorema 1.2, significa mostrar que (-.p v q) /\ (-.(p ~ q))

uma contradio (ver Tabela 1.24).

28

EdUFSCar -Apontamentos

Tabela 1.23 Tabela-verdade que evidencia a contradio (p

q) /\ (-, (-,p v q)).

(p---+ q)

-,p

II

12

13

14

(-,p

q) -,(-,p

q)

(p ---+ q) /\ (-,(-,p V q))

Tabela 1.24 Tabela-verdade que evidencia a contradio (-,p v q) /\ (-,(p

-,p

I,

12

13

14

(-,p

q)).

(p---+ q)

-,(p---+ q)

q)

(-,p

q) /\ {-i{p ---+ q))

Observao 1.15 Os dois metateoremas anteriores, Teorema 1.1 e Teorema 1.2, so muito importantes. Eles garantem que provar que uma frmula conseqncia lgica de um conjunto finito
de frmulas equivalente a provar que uma frmula relacionada uma tautologia ou contradio.
Para algumas estratgias de provas usa-se o Teorema 1.1, chamado de Teorema da Deduo ou de

Admisso de Premissas. Outra estratgia de prova, conhecida como Reduo ao Absurdo, estabelecida pelo Teorema 1.2.
Observao 1.16 importante deixar claro que os smbolos de conseqncia lgica(!=) e de equivalncia lgica(=) no so partes do conjunto de smbolos da Lgica Proposicional, mas sim parte
da metalinguagem (i.e. , uma linguagem usada para descrever outra) usada para descrever certas
\

situaes que nela ocorrem.

Exemplo 1.24 Considere as frmulas a: (p v q)---+ r e~: (p---+ r) " (q---+ r). A seguir, so abordadas
as vrias maneiras de provar que a

= ~ A Tabela 1.25 evidencia os resultados necessrios.

p para a: (p v q) ~ r e p: (p ~ r) /\ (q ~ r).
(q---+ r) f3 a-+~ aA(-.p) P-+a PA(-,a) ~~

Tabela 1.25 Tabela-verdade que evidencia a =

r (p V q) a (p---+ r)

1,

12

13

14

15

A cartilha da lgica

29

Tabela 1.25 Continuao ...


~

r) (q ~ r) 13

a~l3

UA(-,f3)

f3~a

f3/\(-.a)

a~p

r (pvq) a

16

17

18

(p

Usando a definio, a= 13 se

Pi= a (ou seja, a conseqncia lgica de f3) e


(b) ai= p (ou seja, p conseqncia lgica de a).

(a)

(a) Trs abordagens para evidenciar p i= a:


( a.1) considerando as oito interpretaes (I, ,... , 18), verifica-se na Tabela 1.25 que todas as interpretaes que tomam

p v (no caso, as interpretaes 11, 13' 15, 17 e1 8)

Pode-se dizer, pois, que a conseqncia lgica de

tomam a v tambm.

13;

(a.2) o Teorema 1.1 pode ser usado para estabelecer (ou no) a conseqncia lgica, em que

p ~a uma tautologia (12 coluna da Tabela 1.25);


(a.3) o Teorema 1.2 tambm pode ser usado, mostrando que p /\(-.a) uma contradio (13
basta verificar se

coluna da Tabela 1.25).


(b) Trs abordagens para evidenciar ai=

13:

(b. l) considerando as oito interpretaes (I, , ... , 18), verifica-se na Tabela 1.25 que todas as interpretaes que tomam a v (no caso, as interpretaes 11, 13, 15, 17 e1 8) tomam 13 v tambm.
Pode-se dizer, pois, que

p conseqncia lgica de a;

(b.2) o Teorema 1.1 pode ser usado para estabelecer (ou no) a conseqncia lgica, em que
basta verificar se a ~

p uma tautologia ( 1O coluna da Tabela 1.25);

(t.3) o Teorema 1.2 tambm pode ser usado, mostrando que a /\ (---,f3) uma contradio ( 11
coluna da Tabela 1.25).
Note que a equivalncia a=
a~

p tambm pode ser provada (ver Observao 1.13), mostrando que

13 uma tautologia (ltima coluna da Tabela 1.25).

Exemplo l.25 Considere as frmulas a: p ~ (q /\ r) e 13: (p ~ q) /\ (p


as vrias maneiras de mostrar que a

r). A seguir, so abordadas

=13. A Tabela 1.26 evidencia os resultados necessrios.

30

EdUFSCar - Apontamentos

Tabela 1.26 Tabela-verdade que evidencia a= 13 para a: p

II
I2
I3
I4
Is
I6
I7
I8

-4

(q Ar) e 13: (p

-4

q) A (p -4 r).

a.-tj3

U/\(-,j3)

j3-ta.

j3A(-,a.)

a.Bj3

(q /\ r) a. (p -t q) (p -t r) j3

f
f

Usando a definio, a.= j3 se


(a) j31= a. (ou seja, a. conseqncia lgica de j3) e
(b) a.1= j3 (ou seja, j3 conseqncia lgica de a.).
(a) Trs abordagens para evidenciar 131== a.:
(a.1) considerando as oito interpretaes (I 1, , 18), verifica-se na Tabela 1.26 que todas as interpretaes que tomam j3 v (no caso, as interpretaes 11, I 5 , 16 , I 7 e 18) tornam a. v tambm.
Pode-se dizer, pois, que a. conseqncia lgica de j3;
(a.2) o Teorema 1.1 pode ser usado para estabelecer (ou no) a conseqncia lgica, em que
basta verificar se j3 -ta. uma tautologia (12- coluna da Tabela 1.26);
(a.3) o Teorema 1.2 tambm pode ser usado, mostrando

que~/\

't>

(-.a.) uma contradio (13

coluna da Tabela 1.26).


(b) Trs abordagens para evidenciar a.1= j3:
~.

(b.1) considerando as oito interpretaes (I 1,

18), verifica-se na Tabela 1.26 que todas as

interpretaes que tornam a. v (no caso, as interpretaes 11, 15 , 16 , 17 e I 8) tornam j3 v tambm. Pode-se dizer, pois, que j3 conseqncia lgica de a.;
(b.2) o Teorema 1.1 pode ser usado para estabelecer (ou no) a conseqncia lgica, em que
basta verificar se a. -t j3 uma tautologia (1 O coluna da Tabela 1.26);
(b.3) o Teorema 1.2 tambm pode ser usado, mostrando que a. /\ (-.j3) uma contradio ( 11 i

coluna da Tabela 1.26).


Note que a equivalncia a. = j3 tambm pode ser provada (ver Observao 1.13 ), mostrando que
a.

j3 uma tautologia (ltima coluna da Tabela 1.26).

A cartilha da lgica

31

1.5 LGEBRA DA LGICA PROPOSICIONAL


A seguir, so discutidas equivalncias importantes usadas principalmente para a simplificao e
manipulao de expresses lgicas com vistas prova da validade de argumentos. Algumas dessas
equivalncias (s vezes referenciadas como leis) foram j provadas anteriormente usando o mtodo
de tabela-verdade.
Note que, com exceo da lei da dupla negao, todas as leis listadas na Tabela 1.27 so abordadas em pares, denominados pares duais. Para cada expresso, o dual encontrado substituindo
todas as ocorrncias dos smbolos verdade e falso por falso e verdade, respectivamente, bem como
substituindo todo conectivo /\ por v e todo conectivo v por /\. As substituies devem ocorrer simultaneamente. A lei da dupla negao seu prprio dual; todas as leis listadas na Tabela 1.27 tm
um dual, e o mesmo vale para todos os resultados derivados dessas leis.
Tabela 1.27 Leis da negao, conjuno e disjuno.

Leis

Nome

a /\ -,a = falso

Lei da contradio

a v -,a = verdade

Lei do meio excludo

a /\ verdade = a
a v falso= a
a /\ falso = falso
a v verdade = verdade
a/\a=a
ava= a
--,(-,a) = a
a/\13=13/\a
avl3=13va
(a /\
(a

13) /\ y =a /\ (13 /\ y)
13) V y = a V (13 V y)

a/\ (13 v y) =(a/\ 13) v (a/\ y)

13) /\ (a v y)
--,(a /\ 13) = -,a v -,13
--,(a v 13) =-,a /\ -,j3
a v (13 /\ y) = (a v

Leis da identidade
Leis da dominao
Leis idempotentes
Lei da dupla negao
Leis comutativas
Leis associativas
Leis distributivas
Leis De Morgan

Observao 1.17 Um procedimento usualmente adotado na manipulao de expresses a substituio (com base no princpio da substituio) de expresses envolvendo o conectivo condicional
( ~) e o bicondicional (~) por suas equivalentes lgicas, como mostra a Tabela 1.28.

32

EdUFSCar -Apontamentos

Tabela 1.28 Equivalncias da condicional e da bicondicional.


(a~l3)

-,a v 13

(1)

(aHIJ)

(a~IJ)A(IJ~a)

(2)

(a~

(a H j3)

~a)

13) /\ (13

(-.a v 13) /\

(-.13 v

(3)

a)

As equivalncias (1), (2) e (3) da Tabela 1.28 so provadas nas Tabelas-verdade 1.29, 1.30 e
1.31 respectivamente.
Tabela 1.29 Tabela-verdade que evidencia a equivalncia (1) da Tabela 1.28.

13

-,13

II

I2

I3

I4

(a~

13)

(-,a

13)

(a~

13) B (-.13 v

a)

Tabela 1.30 Tabela-verdade que evidencia a equivalncia (2) da Tabela 1.28.

13

-.a

-,13

II

I2

I3

I4

(a

13)

(a~

13) (13 ~a)

(a~

13) /\ (13 ~a)

(aHj3)H

((a ..~

13) /\ (13 ~a))

Tabela 1.31 Tabela-verdade que evidencia a equivalncia (3) da Tabela 1.28.

13)

13) /\ (-.j3 v

(aHl3)H

13

-,a

-,13

11

1i

~ f

I,

(a

13)

(-.a

(-.13 v a) (-.a v

a)

(-,a v

13) /\ (-.13 v

a)

A Tabela 1.32 mostra duas importantes leis (e respectivos duais) que tambm podem ser derivadas a partir das leis mostradas na Tabela 1.27. As Tabelas 1.33 e 1.34 provam as duas leis em
questo.

A cartilha da lgica

33

Tabela 1.32 Equivalncias importantes.

absoro

absoro

J3) v (-,a/\ J3) f3) /\(-,a v f3) -

f3
J3

a/\ (a v
(a/\
(a v

J3)
J3)

a v (a/\

Tabela 1.33 Prova das leis da absoro.


~~~~~~~~~~~~~~~~~~~~

a v (a/\

a/\ (a v

f3)

f3)

(a /\ verdade) v (a /\

a/\ (verdade v

J3)

identidade
distributiva

- a /\ verdade

dominao

=a

identidade

(a v falso)/\ (av

a v (falso /\

a v falso

f3)

- a
Tabela 1.34 Prova da lei (a /\

J3)

J3)

identidade
distributiva
dominao
identidade

p) v (---.a /\ p) =p e sua dual.

13) v 13)
((av (-.a))/\ (13 v (-,a)))/\ (J3 v (a/\ f3))
- (verdade/\ (f3 v (-.a)))/\ (f3 v (f3 /\a))
(a/\ f3) v (-,a/\ 13)
(f3 V (-.a))/\ J3
13 /\ (f3 V (-,a))
- f3
((a v f3) /\(-.a)) v ((av J3) /\ f3)
((a v 13) /\(-.a)) v ((av J3) /\ J3)
((a/\ (-.a)) v (J3 /\(-.a))) v (f3 /\(a v f3))
(falso v (J3 /\(-,a))) v W/\ W v a))
(a v f3) /\(-,a v J3)
(f3 /\(-.a)) V f3
J3 V (j3 /\ (-,a))
-

((a/\

f3) v

(-.a))/\ ((a/\

distributiva
distributiva~e

comutativa

meio excludo e comutativa


identidade e absoro
comutativa
absoro
distributiva
distributiva e comutativa
contradio e comutativa
identidade e absoro
comutativa
absoro

13

1.6 FORMAS NORMAIS


possvel observar que h vrias maneiras de escrever uma mesma frmula; as frmulas equivalentes, a seguir, so duas representaes lgicas do mesmo conceito: (a

f3) /\ y = (-.a v f3) /\ Y:

34

EdUFSCar - Apontamentos

Muitas vezes, conveniente adotar uma certa padronizao na notao, a fim de poder expressar
as frmulas de uma maneira nica; a padronizao facilita tanto a identificao de uma frmula
quanto a comparao entre duas ou mais frmulas.
Duas formas, denominadas Formas Normais - FN - , so particularmente utilizadas e conhecidas como Forma Normal Conjuntiva (FNC) e Forma Normal Disjuntiva (FND). Dada uma expresso da Lgica Proposicional, sempre possvel determinar uma expresso equivalente que esteja
representada tanto na Forma Normal Conjuntiva quanto na Forma Normal Disjuntiva. Como ficar
mais claro nas sees seguintes, freqentemente necessrio transformar a expresso de uma frmula para a forma normal.

1.6.1 Forma Normal Conjuntiva


Definio 1.13 Diz-se que uma frmula proposicional a est na Forma Normal Conjuntiva (FNC)
quando a for uma conjuno

f3 1 /\ f3 2 /\ f3 3 /\ /\ f3n, em que cada f3; (1

n) uma clusula, ou

seja, uma disjuno de literais ou um literal. Pode-se ento dizer que uma frmula a est na FNC
se e somente se:
1. contm como conectivos apenas /\, v e ---,;

2. ---, s opera sobre proposies atmicas, isto , no tem alcance sobre/\ e v;


3. no apresenta operadores de negao sucessivos como---,---,;
4. v no tem alcance sobre /\, ou seja, no existem expresses tais como p v ( q /\ r).

Se

.,

f3 uma frmula na Forma Normal Conjuntiva equivalente a a, ento f3 referenciada como

FNC(a).

Exemplo 1.26
(a) Para a frmula a: (-,p v q)

r, tem-se que:

FNC(a): (-,p v -,q v r) /\ (p v -,q v r) /\ (p v q v r).

fcil mostrar que uma FNC tautolgica se e somente se cada elemento da conjuno for
tautolgico.

(b) As seguintes frmulas da Lgica Proposicional esto na FNC:


(b.l)p /\ (q

r)

(b.2) p /\verdade

(b.3)---,p /\ (-,q V -,r) /\

A cartilha da lgica

35

J a expresso p /\ (r v (p /\ s)) no est na FNC porque a disjuno (r v (p /\ s)) contm uma


conjuno como subfrrnula. Para que uma expresso possa ser qualificada como uma expresso
na FNC, nenhuma disjuno deve ter uma conjuno como subfrmula.
Procedimento 1.1 Obteno da FNC.

Para a obteno da FNC de uma frmula no tautolgica a com n tomos, procura-se na tabelaverdade de a as interpretaes que avaliam a como f. Para cada uma dessas interpretaes li ( 1 ~
i ~ 2n) constri-se uma disjuno da seguinte maneira: se na interpretao li o tomo p da frmula

a avaliado como v, toma-se -,p e, se for avaliado como f, toma-se p. Em seguida, determina-se
a conjuno das disjunes obtidas em cada uma das interpretaes l i. Se a frmula a for uma
tautologia, determina-se que FNC(a): p v (:_,p), na qual p uma frmula atmica.
Exemplo 1.27

(a) Considere a frmula a: (-.p v q)

r e sua Tabela-verdade 1.35.

Tabela 1.35 Tabela-verdade da frmula (---,p v q)

r.

(--.p

q)

1,

12

13

14

Is

16

17

18

~ r

+-

..
+-

+-

Focalizando as interpretaes cujos valores-verdade de a so f, de acordo com o Procedimento


1.1, FN C( a): (-.p v ---,q v r) /\ (p v -,q v r) /\ (p v q v r).

1.6.2 Forma Normal Disjuntiva


Definio 1.14 Diz-se que uma frmula proposicional a est na Forma Nonnal Disjuntiva (FND)
quando a for uma disjuno ~ 1 v

p2 v p3 v

... v

Pn' em que cada ~i (1

~ n) uma conjuno de

literais ou um literal. Pode-se ento dizer que uma frmula a est na FND se e somente se:
1. contm como conectivos apenas

A,

v e -,;

2. -, s opera sobre proposies atmicas, isto , no tem alcance sobre /\ e v;


3. no apresenta operadores de negao sucessivos como-..,-,;

36

EdUFSCar -Apontamentos

4. /\no tem alcance sobre v, ou seja, no existem expresses tais como p /\ (q v r).
Se

B uma frmula na Forma Normal Disjuntiva equivalente a a, ento B referenciada como

FND(a).

Exemplo 1.28 As seguintes frmulas do Clculo Proposicional esto na FND:

p v verdade
-,p

(-,q /\ -,r)

V S

pv(q/\r/\S)
(p /\ q) v (r /\ p /\ -,q) v (-.s)

J a expresso -,(p /\ q) v r no est na FND, uma vez que ela contm uma subfrmula (no
atmica) negada. Apenas subfrmulas atmicas podem estar negadas na representao em forma
normal.
Procedimento 1.2 Obteno da FND.

Para a obteno da FND de uma frmula no contraditria a com n tomos, procura-se n'a tabelaverdade de a as interpretaes que avaliam a como v. Para cada uma dessas interpretaes l; ( 1 ~
i ~ 2n) constri-se uma conjuno da seguinte maneira: se na interpretao li o tomo p da frmula a avaliado como v, toma-se p e, se for avaliado como f, toma-se -,p. Em seguida, determinase a conjuno das disjunes obtidas em cada uma das interpretaes li. Se a frmula a for uma
contradio, determina-se que FND(a): p /\ (-.p), na qual p uma frmula atmica.

Exemplo 1.29 Considere uma frmula a cuja tabela-verdade seja Tabela 1.36.
Tabela 1.36 Tabela-verdade da frmula a.

l,

12

13

14

15

16

17

18

A cartilha da lgica

....

Focalizando as interpretaes cujos valores-verdade de a so v, de acordo com o Procedimento


1.2, FND(a): (p /\ q /\ r) v (p /\ q /\ --,r) v (--.p /\ --,q /\ -.r).

1.6.3 Obteno da FNC sem o uso de tabela-verdade


A obteno da FNC de uma dada frmula a pode ser conseguida por meio da substituio de
subfrmulas de a por suas frmulas equivalentes. Este processo repetido at que a frmula normal desejada seja obtida.
Procedimento 1.3

Para a obteno da forma normal conjuntiva de uma frmula a os seguintes passos devem ser
seguidos, quando passveis de serem aplicados.
( 1) repetidamente usar as equivalncias a seguir para a eliminao dos conectivos lgicos t t
e~.

a tt

B=((-,a) v ~) /\ ((--.B) v
a~ B=((-.a) v B)

a)

(2)
(a) repetidamente utilizar a lei da dupla negao para a eliminao de negaes mltiplas:
--,(-.a) = a

(b) repetidamente utilizar as leis De Morgan para a reduo do escopo da negao:


--,(a/\
--,(a v

B) =-,a v -.B
B) == -.a /\ -.B

(3) quando a expresso obtida no tiver subexpresses compostas negadas, as duas leis a
seguir so utilizadas para reduzir o escopo do v.

W /\ y) =(a v B) /\(a v y)
(a/\ B) v y =(a v y) /\ W v y)

(1.1)

a v

(1.2)

As duas leis anteriores seguem das leis comutativa e distributiva.

Exemplo 1.30 A obteno da FNC da expresso lgica --,((p v -.q)


1.37.

-.r) est mostrada na Tabela

38

EdUFSCar - Apontamentos

Tabela 1.37 Determinao da FNC de -,((p v -,q) /\ -,r).

---,((p

---,q) /\ ---,f)

---,(p

---,q)

V ---,---,f

De Morgan

---,(p

---,q)

V f

dupla negao

(---,p /\ ---,---,q)
(---,p /\ q)

De Morgan
dupla negao

V f

(--.p v r) /\ (p v r)

(l.2)

Exemplo 1.31 A obteno da FNC da expresso lgica (p /\ q) v (r /\ (s v t)) est mostrada na


Tabela l.38.
Tabela 1.38 Determinao da FNC de (p /\ q) v (r /\ (s v t)).
(p /\ q) v (r /\ (s v t))

(p v (r /\ (s v t))) /\ (q v (r /\ (s v t)))

(p

r) /\ (p

s V t) /\ (q

Exemplo 1.32 A FNC da expresso lgica a: (-.p v q)

r) /\ (q

(l.2)
V

t)

(1.1)

r obtida usando a regra da tabela (Ta-

bela 1.39) e, na seqncia, obtida usando equivalncias lgicas por meio do Procedimento 1.3.
Tabela 1.39 Tabela-verdade da frmula (-,p v q)

r.

---,p

II

12

13

14

15

16

17

18

(---,p

De acordo com o Procedimento 1.1, FNC((-.p v q)

q)

(---,p

q)-H

f-

f-

f-

r): (--.p v ---,q v r) /\ (p v --,q v r) /\ (p v

q V r).
A Tabela 1.40 evidencia a equivalncia das duas representaes, ou seja, ( (---,p v q)

r) = (---,p v

---,q v r) /\ (p v --.q v r) /\ (p v q v r). Para facilitar a visualizao, a seguinte nomeao foi adotada,
a: ((---,p v q)

r),

p: (---,p v ---,q v r), : (p v ---,q v r) e : (p v q v r), respectivamente.

Tabela 1.40 Tabela-verdade da equivalncia a = p /\ /\

---,p

---,q

1,

12

p
f

p /\/\

a B(P /\ 8 /\)

A cartilha da lgica

39

Tabela 1.40 Continuao ...


p

-.p

--,q

13

j3/\/\.

a H(l3 /\ /\)

13

14

15

16

17

Is

Por outro lado, usando o Procedimento 1.3, a FNC pode ser obtida por meio do uso de equivalncias lgicas, como mostra a Tabela 1.41.
Tabela 1.41 Determinao da FNC de ((-,p v q)

((-.p v q)

r)

r) usando equivalncias lgicas.

- -.(-.p v q) v r

equivalncia da implicao

- (-.(-.p) /\ -.q) v r

De Morgan

- (p /\ -.q) v r

dupla negao

(p v r) /\ (-.q v r)

(1.2)

A FNC obtida pelo Procedimento 1.3, mostrado na Tabela 1.40, equivalente FNC obtida por
meio de equivalncias lgicas, mostrada na Tabela 1.41 - a segunda expresso, entretanto, uma
verso simplificada da primeira. A Tabela 1.42 exibe a equivalncia entre as duas expresses, ou
seja:

13 /\ 8 /\ . =(p v r) /\ (-.q v r)
tal que

13: (-.p v -.q v r), 8: (p v -.q v r) e /...: (p v q v r).

Tabela 1.42 Tabela-verdade da equivalncia que evidencia(~/\ /\ )= ((p v r) /\ (-,q v r)).

--,p --,q

13/\8/\A p V r --,q V r

(p

r) /\

(--,q

r)

(13 /\ /\ .)

((p v r) /\ (-.q v r))

11

12

13

14

15

16

v.

17

18

40

EdUFSCar - Apontamentos

Existe um procedimento similar ao Procedimento 1.3 para a obteno da FNC, usando equivalncias lgicas. O passo 3 do Procedimento 1.3, entretanto, precisa ser alterado para:
(3)quando a expresso obtida no tiver subexpresses compostas negadas, as duas leis a seguir
so utilizadas para reduzir o escopo do v.
a/\ (J3 v y) =(a/\ J3) v (a/\ y)

(1.3)

(a v J3) /\ y =(a/\ y) v (J3 /\ y)

(1.4)

1.6.4 A notao clausal


A FNC de particular interesse no entendimento e uso da linguagem de programao Prolog.
Corno visto na Seo 1.6.1, urna frmula a representada na FNC uma conjuno de clusulas:

Uma clusula, por sua vez, uma disjuno de literais (ou seja, tomo ou tomo negado), isto :

Urna das vantagens de se ter a FNC de uma dada frmula a poder garantir que se o valor de a
em urna determinada interpretao for v, ento cada clusula tambm, separadamente, interpretada v, uma vez que a FNC uma conjuno de clusulas. Este fato torna a frmula mais facilmente
manipulvel.
Como a FNC de uma frmula a da Lgica Proposicional sempre uma conjuno de clusulas,
a ordem em que estas clusulas so escritas irrelevante - pela propriedade associativa da conjuno(/\). Assim, pode-se dizer que a FNC uma coleo de clusulas. Escreve-se, ento, a FNC de
uma frmula a corno:

sendo que a conjuno entre as clusulas fica implcita. Nomeia-se de coleo apenas para indicar
que a ordem no relevante. Neste sentido, pode-se dizer que qualquer frmula da Lgica Proposicional uma coleo de clusulas. Analogamente, uma clusula Ci ter a forma:

em que cada Li (1

k) um literal. Aplicando o mesmo raciocnio anterior, pode-se dizer que

uma clusula uma coleo de literais na qual a disjuno est implcita, ou seja,

A cartilha da lgica

41

Exemplo 1.33 Seja


a: ( ( -,p v q) /\ ( -,p v r))

e seja

p a FNC(a),

P: (p v -.q v s) /\ (-.p v -.r v s) /\ (-,q v -,r v s)


Pode-se escrever que:

C 1: (p

-,q

V S)

C2 : (-,p v -.r v s) e
C 3 : (-.q v -,r v s)

A FNC pode ser representada pela coleo das trs clusulas, na qual a conjuno est implcita,
isto :

Uma possvel conveno escrever a frmula como uma clusula aps a outra, lembrando que
elas esto conectadas por/\:

Como cada clusula uma coleo de literais que esto conectadas por v, para cada clusula
pode-se escrever primeiro os literais positivos e, logo aps, os negativos, obtendo-se:

Essa separao entre literais positivos e negativos prepara a clusula para a introduo da notao definida por Kowalski (1974). Na notao, as clusulas so representadas por:
CI: s, p ~q
C2: s ~r,p
Cj: s ~q,r

svp~q

significando

s ~r /\ p
s ~q /\ r

42

EdUFSCar - Apontamentos

ou seja, existe uma disjuno implcita nos literais esquerda


uma conjuno implcita nos literais direta

do~ .

do~.

chamados de concluses, e

chamados de condies (ou premissas). Deve

ser observado que a notao anterior equivalente a:

Observao 1.18 Uma clusula genrica na notao de Kowalski (1974):

equivalente a:

que equivalente a:

que equivalente a:

Dependendo do nmero de literais envolvidos na clusula, os casos especiais mostrados na Tabela 1.43 podem ocorrer.
Tabela 1.43 Tipos de clusulas.

m> 1

as concluses so indefinidas, isto , h vrias concluses.


so as chamadas clusulas de Horn, que tm como casos parti-

m :S 1

culares (a), (b), (e) e (d).


A 1 +- B 1, B2 ,

(a) m

= 1, n >O

Bn

chamada de clusula definida, isto , existe somente uma concluso.


AI+-

(b)m=l,n=O

chamada de clusula definida incondicional ou fato. Neste


caso, o smbolo +- abandonado.

A cartilha da lgica

43

Tabela 1.43 Continuao ...

m=O,n>O
(c)m=O,n>O

+-B"B2,

,Bn

conhecida como negao pura de B,, B 2 ,


(d) m =O, n =O

Bn.

chamada de clusula vazia e denotada por nil.

As nicas clusulas que podem ser representadas usando a linguagem de programao Prolog
so as clusulas de Horn (o

smbolo~

representado por:- na sintaxe do Prolog de Edinburgh).

Em uma situao em que um dado conhecimento pode ser representado utilizando Lgica Proposicional, apenas as expresses que forem clusulas de Horn sero passveis de serem representadas
em Prolog.

1.7 INFERNCIA LGICA E SISTEMAS DE DERIVAO


Padres de raciocnio podem ser expressos de vrias maneiras. Em portugus, por exemplo, a concluso tipicamente colocada aps as premissas e "anunciada" por palavras indicativas, tais como:
"ento", "logo", "portanto", "como conseqncia", "conclui-se", etc. Um argumento correto se a
concluso segue logicamente das premissas, como formalmente estabelecido na Definio 1.15.
Definio 1.15 Um argumento uma seqncia" a 2 , a 3 ,

an (n ~ 1) de proposies, na qual as

proposies ai ( 1 ::; i ::; n-1) so chamadas de premissas e a proposio a 0 chamada de concluso.


Indica-se um argumento por

Um argumento a 1, a2' a 3,. . .,

n-i

1- an um argumento vlido se e somente se a frmula

1 /\ 2 /\ 3 /\ .. /\ n-1

ou seja,

" a

~ an for uma tautologia,

a 3,. , an- 1 i= an. Essa afirmao justificada pelo Teorema 1.1, da Seo 1.4.

Um argumento vlido pode ser lido como:

Para n = 1, considera-se por extenso o argumento vlido se e somente se a 1 for tautolgica.

44

EdUFSCar -Apontamentos

Eventualmente, a verificao da validade de um argumento por meio de tabelas-verdade pode


ser um trabalho longo, dado que depende do nmero de tomos nele existentes. A verificao da
validade de um argumento que envolve sete tomos (ou seja, proposies atmicas), por exemplo,
envolve a construo de uma tabela-verdade com 2 7 = 128 linhas. Outra maneira de evidenciar a
validade de argumentos por meio de um procedimento descrito por uma seqncia de passos,
que faz uso de argumentos vlidos j conhecidos e de equivalncias, processo que leva noo de
derivao ou prova formal.
Observao 1.19 Existem diferentes sistemas para a realizao de derivaes. Todos os sistemas
tm as seguintes caractersticas em comum:
1. consideram uma lista de argumentos lgicos admissveis, chamada de regras de inferncia.
Essa lista referenciada como L;
2. a derivao uma lista de expresses lgicas. Originalmente, essa lista vazia. Expresses
podem ser adicionadas lista se forem premissas ou se puderem ser obtidas a partir das expresses anteriores, por meio da aplicao de regras de inferncia. Esse processo continua
at que a concluso seja obtida.
Definio 1.16 Considere as frmulas a,, a 2, a 3, ... , cx.0 e

pda Lgica Proposicional. Diz-se que uma

sequncia finita de (rmulas Cl' C2, ... , Ck uma prova (ou deduo ou derivao) de p a partir de

a 1, a 2, a 3, ... , a (consideradas premissas) se e somente se:


0

1. cada ci for uma premissa

aj

(1 ~j ~ n); ou

2. Ci provm das frmulas precedentes, pelo uso de um argumento vlido de L; ou


3. Ci provm do uso do princpio de substituio usado em uma frmula anterior; ou

4.

ck p.

Diz-se, ento, que p dedutvel a partir de a 1, a 2, a 3, , a 0 ou que P um teorema. Se a seqncia puder ser construda, isto , se existir uma derivao para a concluso p, dado que a 1, a 2, a 3, ... ,

a so as premissas e dado que L um conjunto de regras de inferncia admissveis, diz-se que o


0

argumento vlido, ou seja, ai' a 2 , a 3 , ... , a 0

!- P vlido.

Observao 1.20 Na maioria dos sistemas para derivaes formais o conjunto de regras de inferncia admissveis fixo - nenhuma outra regra de inferncia pode ser usada a menos que esteja
includa em L. Para os exemplos e discusses a seguir, o conjunto L de regras de inferncia considerado apresentado na Tabela 1.44.

A cartilha da lgica

45

Tabela 1.44 Regras de inferncia.

Nome da regra

Regra

a, a--t13j=13

modus ponens

a--tl3, ---,13 j= -,a

modus tol/ens

a--tl3, 13 --t y i= a --t y

silogismo hipottico (regra da cadeia)

a v 13, -,a j= 13
a v 13, ---,13 i= a

silogismo disjuntivo

a/\ 13 i= a
a/\ 13i=13

simplificao

a, 13i=a/\13
a--tj3, -,a--tj3 [= 13

conjuno (ou combinao)


de casos

a[= a v 13

adio

131= U

adio (variante)

silogismo disjuntivo (variante)


simplificao (variante)

13

a --t 13, y --t , a

a --t 13, y --t 8, ---,13


a --t

13

y j= 13

-,

j= -,a V -,y

i= -,13 --t -,a

a
a

H
H

dilema destrutivo
contraposio

a, -,ai= 13
a --t 13, 13 --t a [= a

dilema construtivo

da inconsistncia
H

13

13 [= a --t 13
13 i= 13 --t a

introduo da equivalncia
eliminao da equivalncia
variante da eliminao da equivalncia

A regra da inconsistncia segue do fato de que a /\ -,a sempre avaliada f e, portanto, a, -,a [= 13
trivialmente verdade. A lei da inconsistncia tem um grande impacto em sistemas lgicos, pois se uma
simples contradio pode ser derivada a partir das premissas (no caso, a derivao de a e tambm a
derivao de -,a), ento toda expresso lgica possvel e imaginvel 13 tambm pode ser derivada.
fundamental, pois, que as premissas no permitam a derivao de qualquer contradio, caso contrrio, em um tal sistema, tudo pode ser provado.
Regras de inferncia devem ser escolhidas de tal maneira que possam derivar apenas resultados
que estejam corretos. Isso significa que L no deve conter qualquer falcia. Uma falcia permite encontrar uma concluso que no possa ser derivada das premissas e, conseqentemente, no correta.
Observao 1.21 Um sistema para derivaes no deve ser apenas correto, mas tambm completo.
Por completo entende-se um sistema que viabiliza a derivao de toda concluso que logicamente
segue das premissas. O sistema de regras descrito na Tabela 1.44 no completo. Considere a lei
do meio excludo a v -,a. Essa lei vlida sem qualquer premissa, ou seja, J= a v -,a. fcil ver

46

EdUFSCar - Apontamentos

que, sem qualquer premissa, nenhuma das leis da Tabela 1.44 pode ser usada. Conseqentemente,
a v -,a no pode ser derivada se L for o conjunto de regras da Tabela 1.44. A seguir, so mostrados

alguns exemplos de verificao da validade de argumentos, usando argumentos vlidos j conhecidos e equivalncias.
Observao 1.22 Em Lgica, o que chamado de teoria dado por um conjunto de premissas e
por um conjunto de todas as concluses que podem ser derivadas a partir das premissas. Freqentemente, as premissas de uma teoria so chamadas de axiomas e as concluses que podem ser
derivadas dos axiomas so chamadas de teoremas.
Observao 1.23 Equivalncias representam uma regra especial nas derivaes. Toda equivalncia
pode ser tratada como uma regra de inferncia que permite substituir cada uma das wffs por sua
equivalente ou que permite substituir uma subfrmula de uma wff por sua equivalente.
Exemplo 1.34 Considere:
Se as uvas caem, ento a raposa as come.
Se a raposa as come, ento esto maduras.
As uvas esto verdes ou caem.
Logo,
A raposa come as uvas se e somente se as uvas caem.
Identificando as proposies atmicas nas sentenas em lngua natural escritas neste Exemplo 1.34
e nomeando-as com os smbolos convencionados para tomos na Lgica Proposicional, tem-se:
p: as uvas caem
q: a raposa come as uvas
r: as uvas esto maduras
Reescrevendo o enunciado anterior usando a linguagem da Lgica Proposicional, tem-se:
p~q
q~r

-,r

logo
p~q

A Tabela 1.45 exibe a prova da concluso como estabelecida na Definio 1.16.

A cartilha da lgica

Tabela 1.45 Construo da prova de p

Tem-se

Deduz-se

c1
c2
c3
c4
cs
c6
c7

q.

p~q

premissa

q~r

premissa

--,r V p

premissa

r~p

(C 3 : equivalncia)

q~p

(C 2+ C4+silogismo hipottico)

(p

q) /\ (q

p) (C 1 + C5 +conjuno)

(p tt q)

(C 6 : equivalncia)

A seqncia C 1, C2, C3, C4, C 5, C6, C7 uma prova da concluso p tt q e o argumento (p


(q

r), (--,r v p)

47

q),

1- (p tt q) vlido.

Exemplo 1.35 Considere:

Gabriel estuda ou no est cansado.


Se Gabriel estuda, ento dorme tarde.
Gabriel no dorme tarde ou est cansado.
Logo,
Gabriel est cansado se e somente se estuda.
Identificando as proposies atmicas nas sentenas em lngua natural escritas neste Exemplo 1.35
e nomeando-as com os smbolos convencionados para tomos na Lgica Proposicional, tem-se:
p: Gabriel estuda
q: Gabriel est cansado
r: Gabriel dorme tarde
Note que conveniente identificar, como tomos, sentenas que no envolvam a negao. No
caso particular deste exemplo, em vez de identificar como tomo a sentena Gabriel no dorme
tarde, identifica-se como tomo (r) a sentena Gabriel dorme tarde, e a sentena Gabriel no dorme tarde reescrita em Lgica Proposicional como -.r. Reescrevendo o enunciado anterior usando
a linguagem da Lgica Proposicional, tem-se:
p

--,q

p~r
1

--,r V q
logo
pttq

r.

1~

(r

~r-

48

EdUFSCar -Apontamentos

A Tabela 1.46 exibe a prova da concluso corno estabelecida na Definio 1.16.


Tabela 1.46 Construo da prova de p

e]
c2

Tem-se

c3

Deduz-se

c4
cs
c6
c7
cs

q.

--,q

premissa

p~r

premissa

--,r V q

premissa

q~p

(C 1 : equivalncia)

r~q

(C 3 : equivalncia)

p~q

(C 2 + C5 + silogismo hipottico)

(p

q) /\ (q

p) (C 6+ C4+conjuno)
(C 7: equivalncia)

(pttq)

A seqncia CI' C2 , C3 , C4 , C5 , C 6 , Cr C 8 urna prova da concluso p tt q e o argumento


(p v ---,q), (p ~ r), (--,r v q) 1- (p tt q) vlido.
Exemplo 1.36 Verificar a validade do argumento descrito em lngua natural corno:
Se a Terra redonda ento a Lua oval.
Se a Lua oval, ento Saturno no tem anis.
Se a Terra no redonda ento Saturno no tem anis.
Logo
Saturno no tem anis.
Identificando as proposies atmicas nas sentenas em lngua natural escritas neste Exemplo 1.36
e nomeando-as com os smbolos convencionados para tomos na Lgica Proposicional, tem-se:
p: a Terra redonda
q: a Lua oval
r: Saturno tem anis
Reescrevendo o enunciado anterior usando a Lgica Proposicional, tem-se:

--,p

--,r

logo
--,r
A Tabela 1.4 7 exibe a prova da concluso corno estabelecida na Definio 1.16.

A cartilha da lgica

49

Tabela 1.47 Construo da prova de -.r.

e,

Tem-se

Deduz-se

c2
c3
c4
cs

p~q

premissa

premissa

-,r

-,p---+ -,r premissa


p---+ -,r

(C 1 + C2 +silogismo hipottico)

-,r

(C 3+ C4+de casos)

A seqncia C 1, C2, C3, C4, C 5 uma prova da concluso -.r e o argumento (p---+ q), (q
(-.p ---+ -.r)

-.r),

1- -.r vlido.

Exemplo 1.37 Identificar a prova da concluso do argumento:


-,p ---+ q, q --+ r, ---,r V

S, -,S

1- p

A Tabela 1.48 exibe a prova da concluso como estabelecida na Definio 1.16.


Tabela 1.48 Construo da prova de p.

Tem-se

Deduz-se

e,

-.p-+ q

premissa

c2
c3
c4
cs
c6

q-+ r

premissa

-,r V

premissa

-,s

premissa

-,r

(C 3+ C4+silogismo disjuntivo)

-,q

(C 2 + C5 + modus tol/ens)

c1

-,(-,p)

(C 2 + C7 + modus tollens)

cs

(C 7 : equivalncia dupla negao)

A seqncia C 1, C2 , C3 , C4 , C5 , C6 , C7, C8 uma prova da concluso p e o argumento -.p--+ q,


q --+ r, -.r v s, -,s

1- p vlido.

Exemplo 1.38 Identificar a prova da concluso do argumento:


p

q, -.q, -,p--+ (r v s), r--+ t, u--+ ---,t, u 1- s

A Tabela 1.49 exibe a prova da concluso como estabelecida na Definio 1.16.


Tabela 1.49 Construo da prova de s.

Tem-se

cl
c2
c3

p-+ q

premissa

-,q

premissa

-,p

(r v s)

premissa

50

EdUFSCar - Apontamentos

Tabela 1.49 Continuao...

Deduz-se

c4
cs
c6
c7
cs
c9
c,
c"

r~t

premissa

u~-..,t

premissa

premissa

-..,p

(c 1+ c2 + modus tol/ens)
(C3+ C 7+ modus ponens)
(C 5+ C6+ modus ponens)
(C 4+ C9+ modus tol/ens)
(C8+ C 10 +silogismo disjuntivo)

rvs
-..,t
-..,r
s

A seqncia C 1, C2 , C3 , C4 , C 5 , C 6, C 7, C 8 , C 9 , Cw, C 11 uma prova da conclusos e o argumento


p

q, -.q, -..,p

(r v s), r

t, u

-.t, u

1- s vlido.

Exemplo 1.39 Identificar a prova da concluso do argumento:


p

q, r

~ S, ( q V S) ~

t, -..,t 1- -..,p /\

-..,f

A Tabela 1.50 exibe a prova da concluso como estabelecida na Definio 1.16.

Tabela 1.50 Construo da prova de -.p " -.r.


Tem-se

Deduz-se

c,
c2
c3
c4
cs
c6
c7
cs
c9
c,
c"

premissa

p~q
r~

(q

premissa

V S) ~

premissa
premissa

-.t

-..,(q

s)

(C3 + C4 + modus tollens)

-..,q /\ -..,s

(C 5 +equivalncia De Morgan)

-..,q

(C 6 +simplificao)

-..,s

(C 6 + simplificao)

-..,f

(C 2 + C 8 + modus tollens)

-..,p

(c 1+ c7 + modus tollens)
(C 10 + C9+conjuno)

-..,p /\ -..,r

A seqncia C 1, C2 , C 3 , C4 , C 5, C 6 , C 7, C 8, C 9 , Cw C 11 uma prova da concluso -..,p /\ -.r e o


argumento p

q, r

s, (q v s)

t, -.t 1- -..,p /\ -.r vlido.

Observao 1.24 Em Matemtica, para provar que

a~

13, o seguinte argumento informal usado:

1. assuma a, que adicionado ao conjunto de premissas;

A cartilha da lgica

2. prove

p, usando a

51

se necessrio;

3. descarte a, significando que no mais necessariamente verdade e conclua a~

p.

Exemplo 1.40 [Grassmann & Tremblay, 1996]. Um casal tem um menino e est esperando uma
segunda criana. Prove que se a segunda criana for uma menina ento o casal ter um menino e
uma menina.
Seja:
p: a primeira criana do casal um menino
q: a segunda criana do casal uma menina
O que se quer provar q ~ (p /\ q), dado que a premissa p. De acordo com o Teorema da Deduo (discutido a seguir), a prova pode ser conduzida como:
1. p verdade: a primeira criana do casal um menino;
2. assuma q: ou seja, assuma que a segunda criana do casal uma menina;
3. com base em p e em q, conclua p /\ q, pela regra de inferncia da conjuno;
4. nesse ponto, o Teorema da Deduo permite concluir que q
pode ser descartada, ou seja, q

(p /\ q). A suposio de q

(p /\ q) verdade mesmo que q seja falso: neste caso, q ~

(p /\ q) trivialmente verdade.

clara a razo pela qual esse padro de prova correto. Na prova de a ~


apenas o caso em que a avaliada v; se a for f, a

p preciso considerar

f3 trivialmente v. Se a

for v, ento pode ser

adicionada s premissas.
Essencialmente, a regra estabelece que uma suposio pode ser convertida no antecedente de
uma condicional; em algumas referncias o processo descrito tratado como uma regra de inferncia chamada de regra de introduo da condicional. Ela difere das outras porque emprega um
raciocnio hipottico, isto , uma estratgia de prova fundamentada em hiptese, que pode ser
considerada uma suposio feita no contexto do argumento, com o objetivo de mostrar que determinada concJuso segue da suposio. A maneira mais geral para provar uma condicional colocar
seu antecedente como hiptese (ou seja, admiti-lo como possibilidade no contexto do argumento)
e ento mostrar que seu conseqente deve se seguir.
Exemplo 1.41 Este exemplo e a discusso sobre ele foram extrados de Nolt & Rohatyn (1991) e
adaptados. Suponha que um corredor machucou seu tornozelo uma semana antes de uma grande
corrida, e a inteno seja persuadi-lo a parar de correr por alguns dias, a fim de que seu tornozelo
sare. Algum pode alert-lo fazendo a seguinte afirmao condicional: "se voc continuar a correr,
no estar apto a disputar a corrida". A resposta do corredor eventualmente pode ser: "prove isso".

,,~;;.~.:~' .~': 5~:-::

.: ..~; _ .;

52

EdUFSCar - Apontamentos

A maneira mais geral de provar uma condicional considerar seu antecedente como hiptese
(isto , admiti-lo no contexto do argumento) e ento mostrar que o conseqente do condicional
deve se seguir. Para fazer isso, o argumento pode ser elaborado da seguinte maneira:
Seu tornozelo est muito inchado. Suponhamos que voc continue a correr. Se ele est muito inchado
e voc continuar a correr, seu tornozelo no vai sarar em wna semana. Se ele no sarar em wna
semana, ento voc no estar apto a disputar a corrida. Desse modo, no estar apto a disputar a
corrida.

Este argumento um argumento hipottico. A palavra "suponhamos" um indicador de hiptese, assinalando que o enunciado "voc continue a correr" uma hiptese. Dessa hiptese, a concluso "voc no estar apto a disputar a corrida" descrita a seguir. O argumento est construdo
com base em trs suposies:
1. seu tornozelo est muito inchado;
2. se seu tornozelo est muito inchado e voc continuar a correr, ento seu tornozelo no ir
sarar em uma semana;
3. se seu tornozelo no sarar em uma semana, ento voc no estar apto a disputar a corrida.
As trs suposies anteriores so consideradas verdadeiras - diferentemente da hiptese, que foi
assumida em considerao ao argumento. Uma vez admitida as suposies, o argumento hipottico
mostra que se a hiptese "voc continuar a correr" for verdadeira, ento a concluso do argumento
hipottico, "voc no estar apto a disputar a corrida'', tambm deve ser verdadeira. Assim, mostrase que a expresso condicional:
Se voc continuar a correr, ento voc no estar apto a disputar a corrida.
verdadeira, o que exatamente o que se queria provar. A expresso condicional foi deduzida
colocando como hiptese seu antecedente e mostrando que seu conseqente segue-se do conjunto
formado pela hiptese com as premissas.

fato que a correo do argumento depende da veracidade das suposies - na vida real, a veracidade delas pode ser duvidosa. A correo do argumento, entretanto, no depende da veracidade da
hiptese. Considerando as suposies e independentemente de o corredor continuar ou no a correr,
deve ainda ser verdade que, se ele continuar correndo, ele no estar apto a disputar a corrida. A hiptese adicionada somente para mostrar que, dadas as suposies, ela implica a concluso "voc
no estar apto a disputar a corrida". Uma vez provado isso, a hiptese descartada e a expresso
condicional que representa a concluso estabelecida somente com base nas suposies. A formali7.ao do argumento est na Tabela 1.51, com a seguinte simbologia:
p: seu tornozelo est muito inchado.

A cartilha da lgica

53

q: voc continua a correr.


r: seu tornozelo no ir sarar em uma semana.
s: voc est apto a disputar a corrida.
O argumento pode ser reescrito em Lgica Proposicional como:

p, (p " q)

-.r, -.r ~ -,s

1- q ~ -,s

Tabela 1.51 Exemplo de uso da regra de introduo da condicional.

e,

c2
c3
c4
cs
c6

(p "q) ~ -.r premissa

premissa

-,r ~ -,s

premissa

hiptese

p /\ q

(C 1 + C 4 +conjuno)

-,r

(C 2+ C 5+ modus ponens)

c1

-,s

(C 3+ C6+ modus ponens)

cs

(C 4 - C 7 + introduo da condicional)

~-,s

Note na Tabela 1.51 que, a partir da introduo da hiptese q (inclusive ela), as frmulas so
endentadas direita na coluna, para indicar a durao do argumento hipottico, ou seja, a parte da
prova na qual a hiptese considerada. Como argumentos hipotticos so construdos com a introduo de uma hiptese com um escopo de atuao na prova, no que segue a seqncia de frmulas
que identifica a prova da concluso no apresentada. A prpria tabela evidencia a prova, com o
escopo da validade da hiptese assinalada via deslocamento direita.
Observao 1.25 A regra da introduo da condicional pode ser enunciada como: dada a derivao
de urna wff j3 a partir de urna hiptese a, pode-se descartar a hiptese e inferir a wff a

j3. A regra

estabelecida pelo Teorema da Deduo.

13 duas wffs e 8 1, 82, 83, ... premissas. Se juntos a,


8 1, 8 2, 8 3, ... logicamente implicam 13, ento 1, 8 2, 3, ... logicamente implicam a~ 13.
Teorema 1.3 (Teorema da Deduo) Sejam a e

Observao 1.26 As regras de inferncia da Tabela 1.44 com o Teorema da Deduo formam um
sistema completo.
Exemplo 1.42 Usando deduo natural, o argumento a seguir est provado na Tabela 1.52.
p ~ q, q ~ r

1- p ~ r

54

EdUFSCar -Apontamentos

Tabela 1.52 Prova usando a regra de introduo da condicional.


c1

p-;q

premissa

c2

q-;r

premissa

c3

hiptese

cs

(C 1 + C3 + modus ponem)

c6

(C2 + C5 + modus ponem)

p-;r

(C3 - C6 + introduo da condicional)

Exemplo 1.43 Considere a prova do argumento (p A q) -; r

1- p -.; (q -; r).

Este exemplo ilustra a situao na qual a concluso a ser derivada uma expresso condicional
que tem, como conseqente, outra expresso condicional. A derivao emprega a mesma estratgia
anterior. O antecedente da condicional mais externa assumido como hiptese. Como, no caso, o
conseqente outra expresso condicional, pode-se assumir como uma nova hiptese o antecedente dessa ltima condicional e derivar sua concluso, como mostra a Tabela 1.53.
Tabela 1.53 Prova usando a regra de introduo da condicional.
c1

(pAq)-;r

premissa

c2

hiptese

c3

hiptese

c4

pA q

cs

(C 2 + C3 +conjuno)
(C, + C4 + modus ponem)

c6

q-; r

c7

p-;(q-;r)

(C3 - C5 + introduo da condicional)


(C 2 - C6 +introduo da condicional)

Note que C2 o antecedente da concluso, inserido na prova como hiptese. Para derivar a concluso (que a condicional q -.; r), a partir desse ponto, coloca-se como hiptese o antecedente da
condicional, isto , q. Como uma nova hiptese, ela requer um deslocamento direita para indicar
que a segunda hiptese vigente. Como a concluso r derivada (C 5), a hiptese q pode ser descartada e a condicional q-.; r pode ser inferida pela regra de introduo da condicional. Foi mostrado
ento que q -.; r segue da hiptese original p. A hiptese p permanece vigente at ser descartada e
a concluso desejada (q-.; r) ser inferida.
Observao 1.27 Algumas wffs so passveis de serem provadas sem suposies (premissas)- so

os teoremas. A prova de um teorema se inicia com uma ou mais hipteses que sero descartadas
pela introduo da condicional, como mostra o Exemplo 1.44.

A cartilha da lgica

Exemplo 1.44 A Tabela 1.54 mostra a prova de

1- p

55

(p v q) usando a regra de introduo da

condicional.
Tabela 1.54 Prova de \-p

(p v q).

c1 p
c2 pvq
c3 p ~ (p V q)

hiptese
e,+ adio
(C 1- C2+introduo da condicional)

Exemplo 1.45 A Tabela 1.55 mostra a prova de p v q

1- q v

p usando a regra de introduo da

condicional.
Tabela 1.55 Prova de p v q \- q v p.

c1
c2
c3
c4
cs
c6
c7
cs
c9

pvq

premissa

hiptese

qvp

(C 2 +adio)

(q

(C 2- C3+introduo da condicional)

p)

hiptese

qvp

(C 5 +adio)

(q

p)

(q

(q

p)

(q

p)

(C 5 - C6 +introduo da condicional)
V

p) (C 1+ C4+ C 7+ dilema construtivo)


(C 8 +equivalncia - idempotncia)

Exemplo 1.46 A Tabela 1.56 mostra a prova de (p /\ q) v (p /\ r)

1- p /\ (q v r) usando a regra de

introduo da condicional.
Tabela 1.56 Prova de (p " q) v (p /\ r) \- p /\ (q v r).

e , (p /\ q)

c2
c3
c4
cs
c6
c7
cs
c9

(p /\ f)

premissa

(p /\ q)

hiptese

(C 2 +simplificao)

(C2 +simplificao)

qvr

(C4+adio)

p /\ (q v r)

(C3 + C5 +adio)

(p /\ q)

p /\ (q

r)

(C 2 - C6 + introduo da condicional)

(p /\ r)

hiptese

(C 8 +simplificao)

e, r

(C 8 +simplificao)

56

EdUFSCar -Apontamentos

Tabela 1.56 Continuao...


c11

qvr

(C 10 + adio)

c12

p/\(qvr)

(C 11 +adio)

c13

(p /\ r)

c14

p/\(qvr)

p /\ (q v r)

(C 8 - C 12 + introduo da condicional)
(C 1 + C 7 + C 13 +dilema construtivo)

Observao 1.28 Outra estratgia de prova que usa o raciocnio hipottico conhecida como reduo ao absurdo ou prova indireta. Para provar uma concluso, a concluso negada inserida como
hiptese e a estratgia busca derivar uma contradio - a derivao da contradio evidencia que
a hiptese negada falsa, o que permite inferir que a concluso segue das premissas. Como visto
anteriormente, uma contradio qualquer wff no padro a/\ (-,a). A wff pode ser um tomo ou,
ento, uma expresso composta. A regra da reduo ao absurdo estabelecida como: dada a derivao de uma contradio a partir de uma hiptese a, pode-se descartar a hiptese e inferir -,a.
Exemplo 1.47 A Tabela 1.57 mostra a prova do argumento p

q, ---,q 1- ---,p usando a reduo ao

absurdo.
Tabela 1.57 Prova de p

q, -.q 1- --,p por reduo ao absurdo.


c1

p~q

premissa

c2

---,q

premissa

c3

hiptese

c4

(C 1 + C 3 + modus ponens)

cs

q /\---,q

(C 4 + C 2 +adio)

---,p

(C 3 - C 5 +reduo ao absurdo)

c6

Exemplo 1.48 A Tabela 1.58 mostra a prova do argumento p

q, ---,q

1- ---,p usando a reduo ao

absurdo.
Tabela 1.58 Prova de p

q, -.q 1- --,p usando reduo ao absurdo.


cl

p~q

premissa

c2

---,q

premissa

c3

hiptese

c4

(C 1 + C 3 + modus ponens)

cs

q /\ ---,q

(C 4 + C 2 +adio)

c6

---,p

(C 3 - C 5 +reduo ao absurdo)

A cartilha da lgica

57

Observao 1.29 Quando um esquema de raciocnio hipottico usado, alguns cuidados devem
ser tomados:
1. cada hiptese introduz, em uma prova, um deslocamento nas frmulas inferidas a partir de
ento, at o ponto de a hiptese ser descartada pela aplicao da introduo da condicional
ou da reduo ao absurdo;
2. nenhuma ocorrncia de uma frmula deslocada pode ser usada em qualquer regra aplicada
aps o trmino do deslocamento. Isso garante que a frmula derivada da hiptese no seja
usada depois que a hiptese for descartada;
3. se duas ou mais hipteses estiverem ativas simultaneamente, ento a ordem na qual elas so
descartadas deve ser a ordem inversa na qual elas foram introduzidas;
4. uma prova no est completa at que todas as hipteses sejam descartadas.

1.8 PROVA AUTOMTICA DE TEOREMAS - ALGORITMO DE WANG


Lgica e Prova Automtica de Teoremas so de significativa importncia na rea de Inteligncia
Artificial - a primeira por ser uma linguagem formal utilizada na expresso de conhecimento e
representao de problemas e, a segunda, por ser uma possvel forma de obter solues de muitos
desses problemas de maneira automtica.
A Lgica Proposicional, embora aplicvel a um nmero restrito de problemas, fornece uma ferramenta simples, com a qual os conceitos bsicos de prova automtica de teoremas podem ser ilustrados. Nesta seo, apresentado o mtodo sinttico para a prova automtica de teoremas da Lgica
Proposicional, conhecido como Algoritmo de Wang, proposto e descrito em Wang (1960, 1964).
A referncia Monard & Nicoletti (1990) apresenta e discute em detalhes duas conhecidas implementaes deste algoritmo (ver Coelho & Cotta (1988)), escritas na linguagem de programao
Prolog, abordando tanto a estrutura de dados utilizada quanto a eficincia de execuo de cada uma
delas, procurando evidenciar seus aspectos positivos e negativos. Com base na discusso, proposta
e descrita uma terceira implementao em Prolog do algoritmo de Wang, que introduz diversas otimizaes em relao s duas outras verses descritas na literatura. As trs implementaes so comparadas com relao eficincia medida em tempo de execuo, usando um conjunto de 50 teoremas
e 21 no-teoremas. As medidas obtidas evidenciaram a superioridade da implementao proposta na
referncia que, em mdia, executa aproximadamente duas vezes mais rpido que a mais eficiente das
outras duas implementaes.
O algoritmo de Wang espera como entrada uma wff, e, usando um conjunto de oito regras sintticas, conclui-se que a wff fomecida ou no um teorema. Dependendo dos conectivos presentes na wff
o algoritmo a quebra em subexpresses que, recursivamente, devem ser provadas teoremas tambm.

58

EdUFSCar - Apontamentos

Seis das oito regras usadas pelo algoritmo so manipulaes simblicas fundamentadas no conectivo principal de subfrmulas. As duas regras restantes regulam os critrios de parada do algoritmo: uma detecta quando uma expresso um teorema, e a outra quando a expresso no um
teorema. A entrada para o algoritmo pode ser a wff fornecida como um todo ou, ento, j dividida
entre as subfrmulas que representam as premissas e as que representam as concluses.
Antes da discusso do algoritmo so apresentadas algumas equivalncias lgicas na forma de
exemplos, que subsidiam o entendimento da motivao para o estabelecimento de algumas das
regras utilizadas no Algoritmo de Wang.
Exemplo 1.49 A Tabela 1.59 mostra a equivalncia entre as frmulas a: (p /\ -.q) ~ r e
v q), evidenciando que a frmula a B

f3 uma tautologia.

Tabela 1.59 Tabela-verdade da tautologia a

13 para a: (p /\ -.q) ~ r e 13: p ~ (r v q).


-,q p /\ -,q
rvq
a
f3 a~f3
B

II

12

13

14

15

16

17

18

A Tabela 1.60 mostra a equivalncia entre as frmulas a: p ~ (r v -.q) e


ciando que a frmula a

f3: (p /\ q) ~ r, eviden-

f3 uma tautologia.

Tabela 1.60 Tabela-verdade da tautologia a

13 para a: p ~ (r v -,q) e 13: (p /\ q)~ r.

-,q

r v-,q

PI\ q

f3

aB f3

II

J,

's .. "f

"

f3: p ~ (r

I,.

'1

I,

A cartilha da lgica

Exemplo 1.50 A Tabela 1.61 mostra a equivalncia entre as frmulas a: (p v q)


(q

r), evidenciando que a frmula

a~

II
I2
I3
I4
I5
I6
I7
I8
~

pv q

p~r

q~r

J3

r), evidenciando que a frmula

Tabela 1.62 Tabela-verdade da tautologia

II
I2
I3
I4
I5
I6
I7
I8

J3: (p ~ r) /\

f3 para a: (p v q) -t r e f3: (p-t r) A (q -t r).

Exemplo 1.51 A Tabela 1.62 mostra a equivalncia entre as frmulas a: p


/\ (p

re

J3 uma tautologia.

a~

Tabela 1.61 Tabela-verdade da tautologia

59

a~

J3

(q /\ r) e

J3: (p ~ q)

a ~ J3 uma tautologia.
a~

f3 para a: p -t (q Ar) e f3: (p -t q) /\ (p -t r).

q /\ r

p~q

p~r

J3

a~J3

Exemplo 1.52 A Tabela 1.63 mostra que a frmula a: (p /\ q)

( q v r) uma tautologia.

Tabela 1.63 Tabela-verdade da tautologia a: (p A q) -t (q v r).

p /\ q

qvr

II
I2
I3

14

60

EdUFSCar -Apontamentos

Tabela 1.63 Continuao ...

.p

p /\ q

q vr

15

16

17

18

O Algoritmo de Wang se aplica a uma expresso no esquema


(1.5)

no qual:
1. os pi1 (1

i ~ n) so identificados como premissas e os cis (1

~j ~

k), como concluses;

2. o smbolo ~ a implicao de Wang, que tem a semntica da implicao lgica e que~


sintaticamente, funciona como um separador entre as premissas e as concluses durante a
manipula<? de subfrmulas pelo algoritmo;
3. as vrgulas entre as premissas so interpretadas como o conectivo lgico /\ e as vrgulas
entre as concluses so interpretadas como o conectivo lgico v~
O esquema (1.5) ento interpretado como a wff:
(1.6)

Em termos de valor-verdade -:-- abordagem semntica -, tem-se um teorema se o valor-verdade


da wff (1.6) for v. _Embora no algoritmo de Wang de prova automtica de teorema os valoresverdade no sejam utilizados, uma vez que se trata de uma abordagem puramente sinttica, uma
compreenso semntica se faz necess.ria para um completo entendimento do algoritmo.
Para iniciar a prova de um teorema usando o algoritmo de Wang~ todas as premissas so escritas
esquerda do smbolo~ e a concluso escrita direita do smbol~. Note que tanto premissas
quanto concluses, quando inseridas no esquema, so separadas por vrg~as. As vrgulas que separam as premissas so "entendidas" como o operador lgico A e as que separam as concluses, omo
o operador lgico v. Por~exemplo, se as premissas forem: (p ~ q), (q ~ r) e --.r e se a concluso
for --.p, o esquema inicial de representao fica:
(p

q), (q ~ r), --.r ~ --.p

A seguir, o algoritmo aplica um conjunto de transformaes s subfmulas, de maneira a dividilas em outras mais simples que, por sua vez, sero recursivamente submetidas ao mesmo processo.

A cartilha da lgica .. 61

O algoritmo de Wang sempre termina em um nmero finito de passos, provando ou no o teorema


em questo.

Como comentado anteriormente, o Algoritmo de Wang consiste na aplicao de regras de trans'


formao e de condies de parada. A seguir, so descritas as oito regras que compem: algprit-;"~;
<

!:'"=" ... :;.. :

mo; seis regras so de transformao, identificadas como R1 a R6 e as duas regras restantes so de.
trmino, nomeadas de R, e Ra O objetivo dos procedimentos recursivos - regras de transformao
- remover conectivos de maneira que as regras de trmino possam ser aplicadas.
. .

! ..

Regra R1: se uma das frmulas tem a forma -.a., ento se pode tirar a negao e mover a frmula
para o outro lado do smbolo ::::::::>.A wff a pode s~r qualquer uma e estar em qualquer um dos lados
de=>, como mostrado a seguir. O Exemplo 1.49 mostra que tal "movimentao" vivel uma vez
que no interfere no valor semntico da frmula.
p v q, -.(r /\ s), p v r => s, q

.u. RI
p v q, p v r => s, q, (r " s)

p, q, r, s => q

Regra R2 : se uma frmula esquerda de => tem a forma a " f3, ou se uma forma direita de => tem ..,
a forma a V ~' O conectivo pode ser substitudo por uma vrgula. conectivo A a ser substitue
deve ser o conectivo principal da sentena esquerda de =>. Observao anloga vale para o conectivo V com relao sentena direita de =>.
p, r /\ (-,p v s) ::::::::> -.p" -ii'

.u.~
p, r, (-.p v s) => -,p" -,r

=> -,S V q

.U.~
r => -,s, q

Regra R3: se uma frmula esquerda de=> tem a forma a v ~'pode-se remover o operador v e
separar seus dois operandos, de forma a dividir o teorema sendo provado em dois novos teoremas.
Cada um dos dois teoremas obtidos pela separao deve ser provado individualmente. O veve,ser
o conectivo principal esquerda. O Exemplo 1.50 mostra, em um caso particular, a equivalncia
entre a expresso lgica e a conjuno das duas subexpresses obtidas pela ,diviso .

..

r, -.,p V S => t V -,S

I~

~
r, s => v-,s

-,p => t

V -,S

62

EdUFSCar -Apontamentos

Regra R4 : se uma frmula direita de=> tem a forma a

p, pode-se remover o operador A e se-

parar seus dois operandos, de forma a dividir o teorema original em dois novos teoremas. Cada

um dos dois teoremas obtidos pela separao deve ser provado individualine?te. O A deve ser o
conectivo principal direita. O Exemplo 1.51 mostra, em um caso particular, a equivalncia entre
a expresso lgica e a conjuno das duas subex.presses obtidas pela diviso ...

r, t => -,q, -,r A s

r, t

~
t -,q,

=> -,q, -,r

r, =>

importante.observar que a aplicao das regras~ ou R4 provoca .u m crescimento exponencial


do nmero de teoremas a serem provados. Em geral, se .existirem um total de m operadores v e
A como conectivos principais esquerda e direita de =>, respectivamente, um total de 2m novos
teoremas resultam como conseqncia da aplicao dessas duas regras.

Regra Rs: uma frmula em qualquer nvel, que tenha a forma (a-+ J3), pode ser substituda pela
frmula equivalente (-,a v J3), eliminando com isso a implicao.

p-+ q, r /\ (-,p v s) => r, s

t, W => p -+ q,-,s

.U.Rs .
-,p v q, r A (-,p v s) => r, s

.U.Rs
t~

=> -,p V q, -,s, q

Regra R6 : uma frmula em qualquer nvel, que tenha a forma (a


frmula equivalente (a~

f3), pode ser substituda pela

J3) "(~~a), eliminando com isso a dupla implicao.

r, (-.p v s), p

q => r, s

UR6

t,

=> p ~ q,-,s

UR6

.r, (-,p v s), (p ~ q)" (q-+ p) => r, s t, w => (p-+ q) "(q

p), -,s, q
/,/

As regras R 1; ~' ~' R 4, R 5 e~ devem ser aplicadas quantas vezes forem necssrias para remover os conectivos B, ~,....,,A e v , at que:

Regra R7: um teorema considerado provado se alguma frmula a ocorre em ambos os lados de=>.
Tal te0rema chamado de axioma. Nenhuma transformao ser mais necessria nesse teorema,
muito embora possam existir outros a serem provados. O teorema original no estar provado at
que todos os teoremas obtidos a partir dele tenham sido provados. Portanto, esta regra deve ser verificada para todo novo teorema que eventualmente resulte da aplicao das regras de transformao.

A cartilha da lgica

63

O Exemplo 1.52 mostra uma situao de ocorrncia de uma mesma frmula em- ambos os lados de
uma implicao lgica.
, -'; $,

r, (-ip v s), p => p, r, s

(s v q), t, w => (s v q)

u~

u~

teorema

teorema

, ir

:1. {?.

Regra R8: um teore~a provado invlido se todas as frmulas que nele comparecem so smbolos
atmicos individuais - isto , no existem mais conectivos - e um mesmo smbolo no ocorre em
ambos os lados de~. Se um teorema como este encontrado, o algoritmo termina. A concluso
inicial no uma conseqncia lgica das preiissas, ou seja, a expresso fornecida ao algoritmo
no um teorema.
r,s,p=>q, w

JJR.
no-teorema
O Algoritmo de Wang sempre converge para a soluo de um dado problema. Toda aplicao
de uma transformao conduz a algum -progresso no sentido de eliminar um conectivo e, assim,
diminuir sintaticamente o tamanho do te~rema - mesmo que com isso sejam criados outros teore- :
mas, como acontece no caso da aplicao das regras~ e R4 A Tabela 1.64 resume os padres de
transformaes do Algoritmo de Wang.
Tabela 1.64 Regras do Algoritmo de Wang.

R1

,-.a, ... =>... ,p)

toma-se

(... =>... ,p,a)

RI

(a., ... => ... ,-.f3, ...)

toma-se

(p,a, ...=> ...)

~ (... ,a /\ p, ... => ...) toma-se (... ,a,p, ... => ...)
~ (... => ... ,a V p, ...) toma-se (... => .. .,a,~,. .. )
~ (... ,a V

f3, ... =>... )

R4 (... => ... ,a /\

p, ...)

toma-se

(... ,a,. .. =>...) e


(... ,p,... =>...)

toma-se

(... ~ ... ,a, ...) e


(... :::)... ,~, ...)

Rs (... =>... ,a~ p, ...) toma-se ( ... ::> ... ,-.a V J3, ...)
Rs (... ,a ~ p, ... => ... ) toma-se (... ,-.a V ~, :::::!> )
R6 ( ...,a.~ ~, ... => ...) toma-se ( ...,(a~~)/\ (a~~), ...=> ...)
R6 (... =>... ,a~ p, ...) toma-se (... => ... ,(a~ p) /\(a~ p), ...)

R, (... ,a, ... =>... ,a~ ...) toma-se v, ou seja, um teorema.


.

- .---~ :

64

EdUFSCar - Apontamentos

Exemplo 1.53 A Figura 1.2 mostra os passos do algoritmo de Wang para provar que a concluso
(p /\ q) segue das duas premissas (p 1) (p /\ q) 4 r e (p2) q. Durante a prova, o algoritmo evidencia
que (p /\ q) 4 r, q=> p /\ q no um teorema, ao tambm evidenciar que uma das subexpresses
geradas durante a prova (r, q => pJno um teorema.
(p

q) ~ r, q => p A q

--. (p /\ q) V r, q :::::> p /\ q

--.(p /\ q)

r, q => p

--. (p /\ q)

~
r, q =:> p

--.(p /\ q), q =:> p

r, q =:> q

...

R1

teorema

--------- ..

,,-...... ,
\ No teorema :
'

..... _:_--~------"

Figura 1.2 A expresso ((p /\ q) -+ r /\ q) -+ (p /\ q) no um teorema, uma vez que, durante sua tentativa
de prova, uma das subexpresses geradas no qualificada como teorema.

Como pode ser evidenciado na Tabela L65, a expresso (p /\ q) no conseqncia lgica das
premissas (p /\ q) 4 r e q.
Tabela 1.65 Tabela-verdade que evidencia que p " q no conseqncia lgica de (p /\ q)-+ r e q.

(pAq)4r ((p /\ q) 4 r) /\ q

((p /\ q) 4 r) /\ q 4 (pAq)

p q

(p /\ q)

II

I2

13

14

15

16
I7

.v

.f

Is

A cartilha da lgica

65

Exemplo 1.54 A Figura 1.3 ilustra o uso do algoritmo de Wang para provar que a concluso -,p
segue das trs premissas (p 1) p ~ q, (p2) q ~ r e (p3)-.r.
.

~'-.:.

p ....,. q; q ....,. r, -ir :::::> -.,p

iRs

-,p v--q;--q...a.+ r; ;

:::::> -ip

-ip V q, -.,q V r, -,r :::::> -ip

iR1
-.p v q, -.q v r :::::> -,p, r

-,p, -,q v r :::::> -,p, r

i2xR1
p, -,q v r :::::> p, r

q, r => -,p, r

iR1
teorema

teorema

q, -,q => -,p, r

iR

q => -,p, r, q

'1J-1
teorema

Figura 1.3 Prova da validade do teorema ((p ~ q) /\ (q ~ r) /\ -,r) ~ (-,p) usando Wang.

Exemplo 1.55 A Figura 1.4 ilustra o uso do algoritmo de Wang para provar que a expresso (p /\ '1)
H

(p A p) um teorema. Note que, nesse caso, o algoritmo iniciado com a expresso toda colo-

cada direita do smbolo de Wang (~).

66

EdUFSCar - Apontamentos

::::> (pA q) ++ (qA p)

i~
~

((p /\ q)-t (q /\ p)) /\ ((q /\ p) -t (p /\ q))

i2 xRs
~

{-.(p /\ q) V (q /\ p)) /\ (-i(q /\ p) V (p /\ q))

=> -,(p /\ q) V (q A p)

tR2
iR1
iR2

=> -,(p /\ q), (q /\ p)

=> -i{q /\ p) V {p /\ q)
~

tR2
(p /\
tR1
iR2

-,(q /\ p),

q)

pAq~qAp

qAp~pf\Q

p, q ~q/\p

q,p~p/\q

~
p,qrq

teorema

p.qrp

teorema

~
q,p~p

teorema

q,p::)q

teorema

Figura 1.4 Prova da validade do teorema (p" q) ~ (p /\ p) usando o algoritmo de Wang:

1.9 RESOLUO E PROCEDIMENTOS DE PROVA POR RESOLUO


O procedimento de prova por resoluo bem geral. Ele um mtodo si.D.ttico de prova que se
fundamenta no uso de uma simples regra de inferncia, o que toma sua aplicao fcil, vantajosa e
computacionalmente conveniente.
Resoluo pode ser aplicada apenas quelas wffs denominadas ~lusulas - que, como yisto,
so wffs que consistem em uma disjuno de literais, i.e., disjuno. de tomos/tomos negados.
A regra da resoluo, quando aplicvel, aplicada a um par de clusulas-pais e produz, como reM
sultado, uma clusula derivada, chamada de resolvente - a regra da resoluo permite combinar
duas frmulas em uma terceira, por meio da eliminao de tomos complem~ntares. O princpio de
resoluo em Lgica Proposicional estabelecido no Teorema 1.4.

Definio 1.17 Considere duas clusulas a e ~ (conjuntos de literais). Se existe um literal p tal que
p e a e -,p e p, ento o resolvente (a,~;p) de a e ~ com relao ao literal p (ou -,p) a clusula
(a- {p}) u (~ - {-,p}).

A cartilha da lgica . 67

Exemplo 1.56 Considere duas clusulas a. e

f3 representadas como conjuntos de literais. Se

a: {-,p, r} e f3: {q, -,r} ento resolvente(a,f3;r): {-ip,q}. Se a.: {-,p, q, r} e


resolvente(a,f3;r): {-,p,q, -.q} e resolvente(a.,13;q): {-ip, r, -ir}.

~:

{-,q, -,r} ento


,.,

.
f ~
Teorema 1.4 (Princpio de Resoluo para a Lgica Proposicional) Considere duas clusula.f a<

e J3 e seja p um literal tal que p e a e ~ e ~ Ento:

{a.,f3} i= resolvente(a.,J3;p)
ou seja, o resolvente de duas clusulas a e ~ conseqncia lgica das duas clusulas.
Exemplo 1.57 Considere as duas clusulas cl: ~-.p V q e C2: r V -,q. Note que a frmula atmica q

comparece em C 1 (como q) e em C2 (como -,q), OU seja, q est DCOrrendo em C1 como literal positivo e em C2 como literal negativo, o que uma pr-condio para o .uso de resoluo. A regra da
resoluo aplicada a C1 e C2 produz como resolvente(C 1,,C2;q) a clusula C3: -,p v r, como mostra
a Figura 1.5.

Figura 1.5 Resoluo aplicada s clusulas C 1 e C2, produzindo a clusula C3 :resolvente(C 1,C2 ;q).

Exemplo 1.58 Considere duas wffs: a: -,p ~ q e J3: q -t r s ~uais se pretende aplicar resoluo. A
regra da resoluo aplicada a clusulas e, conseqentemente, as frmulas em questo devem estar
representadas como clusulas. A maneira de fazer isso reescrev-las na Forma Normal Conjuntiva, como foi visto na Seo 1.6.1. Portanto, FNC( ix): p v q e FNC(f3): --,q v r. A Figura 1.6 mostra
o uso de resoluo nas duas w:ffs.

Figura 1.6 Resoluo aplicada a ~as wffs cujas respectivas expresses na forma normal conjuntiva tm
apenas uma clusula.

68

EdUFSCar -Apontllmmtos

O uso de resoluo para a prova de teoremas est conjugado estratgia de prova por reduo
ao absurdo. A prova pode ser conduzida de duas maneiras: (1) negao da concluso e (2) negao
de todo o teorema. Os procedimentos so praticamente os mesmos; no caso (1 ), entretanto, lida-se
caso (2), lida-se com todo o
com cada premissa individualmente e com a concluso negada e,
teorema negado. Os passos para o caso (1) so:

no

1. achar para cada premi~sa e para a concluso negada (adotada como premissa) a respectiva
FNC, como descrito na Seo 1.6.1;
2. cada premissa agora uma conjuno de uma ou mais clusulas. Individualizar cada clusula;
3. cada blusula uma disjuno de um ou mais literais; esto, portanto, na forma correta
para a aplicao de resoluo. Procurar, ento, por duas clusulas que contenham o. mesmo
tomo com sinais opostos. Nas duas clusulas a seguir, p o tomo em questo. Em e, ele
aparece negado (i.e., um literal negativo) e em c2 ele aparece sem o sinal de negao (i.e.,
um literal positivo).
cl:

qV rV t

P e Ci: r V p

V 1S

Aplicando resoluo a C1 e C2, o literal em questo eliminado; e o que resta em ambas as


clusulas combinado em uma nova Clusula; no caso, a clusula C3 : q v r v t v r v p v ....,s
passa a ser tambm uma nova candidata ao uso de resoluo, junto a toda~ as anteriores. A
regra bastante simples de ser aplicada, mesmo porque ela pode ser vista como um simples
processo de cancelamento;
4. continuar o processo descrito no item 3 at que se tenha derivado um tomo qualquer e, tambm, a negao desse tomo (por exemplo, at que se tenha derivado o tomo p e tambm
a sua negao 1p). Ao aplicar resoluo a essas duas clusulas, i.e., Ci: p e Ci: P (ou seja,
clusulas descritas por um nico e mesmo literal que comparece em cada uma delas com
sinais opostos), obtm-se a clusula vazia, denotada pelo tomo nil, que representa uma
contradio, finalizando, ento, o uso da resoluo para a prova da concluso. O absurdo
(representado pela contradio da derivao de p e tambm de -,p) decorre da suposio de
a concluso no seguir das premissas. Portanto, a concluso segue das premissas.
Comparando com a prova da Lgica clssica que faz uso de vrias regras de inferncia, o mtodo de resoluo tem vrias vantagens, entre elas:
1. no necessrio o uso de equivalncias para rearranjar p V q como q V p, etc. Isso se deve
ao fato de que todas as frmulas envolvidas so colocadas na FNC antes de o mtodo comear a ser aplicado e, particularmente, porque para o mtodo indiferente a posio, na
clusul~do

tomo a ser eliminado;

A cartilha da lgica

69

2. existe apenas uma regra de inferncia a ser aplicada, i.e., a resoluo; e


3. fcil ser mecanizado.

}.~~:
A linguagem Prolog est fundamentada no princpio de resoluo aplicado a clusulas de If,m
e utiliz.a em suas provas a estratgia de busca em profundidade.
'if!fl
Exemplo 1.59 Prove, usando resoluo, que a concluso r v s segue das premissasp v q, p -->. r e
q~s.

1. Converta cada uma das premissas para a FNC e individualize cada uma das clusulas obtidas,
escrevendo-a em uma linha separadamente.
FNC(p

pvq

q):

FNC(p --> r):

FNC(q--> s):

-,q VS

Tem-se, pois, as seguintes clusulas:


c.:pvq

C3: -,q V s .
2. Negue a concluso e ache a FNC da concluso negada. Tem-se, pois, que:
Concluso negada: -.(r v s)
FNC(-,(r v s)):
---i(r v s)

=-,r /\ ...:..,s

ou seja, a FNC da concluso negada consti!Wda por duas clusulas, C4 : -:-ir e C5 : -,s. Essas duas
clusu~as so, ento, adicionadas s demais, que descrevem as premissas. O conjmrto todo de clusulas passa ento a ser {C 1, c2, C3, C4, C5}, e a regra de resoluo aplicada a pares de clusulas
que contenham literais de sinais opostos, como mostra a Tabela 1.66.
Tabela 1.66 Uso'l!e resoluo com negao da concluso

Clusulas
CI:

Comentrio

pvq Clusula da 11 premissa

C2: -,pvr Clusula da 21 premissa


C3: -,q V S Clusula da 31 premissa
~ .

.~

70

EdUFSCar ..;.Apontamentos

Tabela 1.66 Continuao:.. -

Comentrio

Clusulas
C4:

-,r

Clusula da negao da concluso

Cs:

-,s

Clusula da negao da concluso

C6:

-,p

Resolvente da resoluo de C2 e C4

C1:

Resolvente da resoluo de C, e C6

Cs:

q
-,q

Resolvente da resoluo de C3 e C5

C9:

nil

Resolvente da resoluo de C7 e C 8

Observao 1.30 A refutao mostrada na Tabela 1.66 pode

~bm ser mostrada por meio da

construo de um grafo direcionado acclico (DAG), como mostra a Figura 1.17:

pvq

-.pvr

-.r

-,qvs

nil
Figura 1. 7 rvore de refutao, cujas folhas so as clusulas que definem as premissas e a concluso negada. A cada nvel uma clusula adicionada como um vrtice da rvore por meio do uso de resoluo a
duas clusulas pai.

Exemplo 1.60 Verificar se o argumento -,p ~ q, q

r, -,r v s, -,s

1- p vlido (ou no) usando

(1) regras de inferncia; (2) o princpio de resoluo (com negao da concluso); e (3) o princpio

de resoluocom negao do teorema todo.


(1) Uso de regras de ~erncia. A Tabela 1.67 exibe a prova da concluso como estabelecida
na Definio 1.16. Note que no uso de regras de inferncia para derivar a concluso de
um argumento, a notao Ci usada para indicar as frmulas que so premissas e as que
so derivadas durante o processo, sem que essa notao signifique que a frmula em questo seja uma cl~a. Isso muda, entretanto, quando o processo de resoluo utilizado,
quando

ci indica uma clusula.

A cartilha da lgica . 71

Tabela 1.()7 Construo da prova de p por meio de regras de inferncia.

e,
c2
c3
c4
cs
c6

Tem-se

Deduz-se

-.p-+q premissa
q-+r

premissa

-.r V S

premissa

-.s

premissa

-,r

(C3 + C 4 +silogismo disjuntivo)

-.q vr

c1

-.q

cs
c9

pvq

(C3 +equivalncia lgica)


(C5 + C6 +silogismo disjuntivo)
(C,: equivalncia)
(C 7 + C 8 +silogismo disjuntivo)

A seqncia C 1, C2 , C3 , C4, C5, C6, C 7 ~ C 8, C 9 uma prova da concluso p e o argwnento -,p-+ q,

q -+ r, -,r v s, -,s

1- p vlido.

(2) Prova do argumento usando o princpio de resoluo (negando a concluso)


FNC(-:-ip-+ q):

(-.p -+ q) :: -.(-,p) V q E p V q

FNC(q-+ r):

(q-+ r) ::-.q v r

FNC(.r

vs):

-,r V S

-,s

FNC(-,s): -,s
Concluso negada: -.p

-,p

FNC(-,p):

A Tabela 1.68 mostra a prova usando resoluo e a Figura 1.18 mostra o DAG associado
refutao.
Tabela 1.68 Uso de resoluo com negao da concluso.

Clusulas

Comentrio

pvq

Clusula da 11 premissa

C1:

C2: -,q vr Clusula da 21 premissa


C3: -.r V S Clusula da 31 premissa
-,s . Clusula da 41 premissa
C4:

Cs:

-.p

Clusula da negao da concluso

C6:

~esolvente da resoluo de e, e cs

.72

EdUFSCar - Apontamentos

Tabela 1.68 Continuao ...

Comentrio

Clusulas

c,:
e.:

Resolvente da resoluo de C2 e C6

Resolvente da resoluo de C3 e C7

C9:

nil

Resolvente da resoluo de C4 e C9

pvq

--.p

--.q V r

--,r V S

--.s

nil

Figura 1.8 rvore de refutao associada Tabela 1.68.

A provapor resoluo no nica. A Tabela 1.69 mostra uma outra prova, diferente da mostrada

na Tabela 1.68.
Tabela 1.69 Uso de resoluo com negao da concluso.

Clusulas
C1:

Comentrio

pvq Clusula da 11 premissa

C2: -,q vr Clusula da 21 premissa


C3: -.rv s Clusula da 31 premissa

C4:

-,s

Clusula da 41 premissa

Cs: .

-,p

Clusula da negao da concluso

C6:

pvr Resolvente da resoluo de C1 e C2

C1:

pvs

Resolvente da resoluo de C3 e C6

CB:

Resolvente da resoluo de C4 e C7

C9:

nil

Resolvente da resoluo de C5 e C8

(3) Prova do argumento usando o princpio de resoluo (negando todo o teorema), ou seja,
negfil?-do: ((-.p-> q) /\ (q ->_r)

(-ir v s) /\ -.s)-> p e colocando a frmula resultante na

FNC. Tem-se, pois, que:

'

A cartilha da lgica

73

. -,(((-,p ~ q) /\ (q ~ r) /\ (-.r v s)" --,s) ~ p) =


-,(-,((-,p ~ q) /\ (q ~ r) /\ (-,r v s) /\ -,s) v p) =
-,(-,((-,p ~ q) /\ (q ~ r)

(-.r v s)

((-,p. ~ q) A {q ~ r) /\(-ir v s) A

-,s)) /\ -,p

-,s) A -,p

((p v q) /\ (-,q v r) /\ (-.r v s) A -,s) /\ -,p =


(p v q) /\ (-,q v r) /\ (-.r v s) /\ -,s /\ -,p
C1 ~ p V

C3: -,r V s

Cs: -,p
que so as mesmas obtidas quando da negao da concluso (Tabela l.68).
Exemplo 1.61 Considere novamente o .~gumento que foi provado usando regras de inferncia,

no Exemplo 1.34, representado em Lgica Proposicional por:


p

q, q ~ r, -,r v p

1- p ++ q

O mesmo argumento provad na Tabela 1.70, usando resoluo com a negao da concluso.
Para isso, a FNC de cada uma das premissas e da concluso negada so determinadas, como segue:
FNC(p

FNC(q

~r):

FNC(-.r

q):

p):

(q ~ r)
-,r

vp

=-,q v r

74

EdUFSCar-Apontammtos

-,(pBq)::
-,((p 4 q) /\ (q 4 p)) =
--i{p 4 q) V (-,(q 4 p)) :=
-,(-,p V q)

(-i(--iQ V p))::

Concluso negada: -,(p B q) (-,(-,p)" (-,q)) v (-,(-,q)

(-.p)) =

(p f\ (-,q)) V (q f\ (-ip)) =

FNC(-,(p B q)):

{p V (q f\ (-,p)) /\ ((-,q) V (q /\ (-,p)) .E

({p V q) 1:.{p V-ip)) A ((-,q) V q) A {(-,q) V (--,p)) E


(p v q) /\verdade/\ verdade/\ (-,q v (-,p))

{p

q) /\ (-,q

(-.p))

Tabela 1.70 Uso de resoluo com negao da concluso.

Clusulas

Comentrio

C1:

-,pvq

Clusula da I premissa

C2:

--iQ V r

Clusula da 2 premissa

vp

Clusula da 3 premissa

-,r

C3:
C4:

pvq

Clusula da negao da concluso

Cs:

-,q V -,p

Clusula da negao da concluso

C6:

-,q vp

Resolvente da resol1:1o de C2 e C3

C1:

--,p V -.p := -.p Resolvente da resoluo de C 1 e C 5

Ca:

-.q

Resolvente da resoluo de C6 e C~

C9:

Resolvente da resoluo de C~ e C1

CIO:

nil

Resolvente da resoluo de C7 e C9

Exemplo 1.62 Considere ~ovamente o argumento do Exemplo 1.39, representado em Lgica Proposicional por:

q, r 4 s, (q v s)

t, -,t 1- -,p A -.r

A seguir, o argumento provado usando resoluo com a negao da concluso. Para a prova, a

FNC de cada uma das premissas e da concluso negada so determinadas.


i't-.

A cartilha da lgica 75

FNC(p~q):

FNC(r~

s):

(r ~ s)

FNC((q v s) ~ t):

=-,r v s

((q v s),-. t)=

-,(q V

S) V t=:

(-,q A (-,s)) V t E

(-,qvt)A(-,svt)
FNC(-,t):

-,t

Concluso negada: -,(-,p /\ -,r)


FNC(-,(-,p A -ir)):

-,(-,p /\ -,r)
.:_,(-,p) V -,(-,r)

pvr

A Tabela 1. 71 01ostra a prova usando resoluo e a Figura 1.19 mostra a correspondente rvore
de refutao. Outra prova mostrada na Tabela 1.72.
Tabela 1.71 Uso de resoluo com negao da concluso.
Clusulas

Comentrio

c,:

-,pv q Clusula da 11 premissa

C2:

-,rv s

C3:

-,q vt Clusula da 31 premissa

C4:

-,S V

Cs:

-,t

C6:

pvr

C1:

Clusula da 21 premissa

Clusula da 31 premissa
Clusula da 4I premissa
Clusula da negao da Concluso

-,pvt Resolvente da .resoluo de C 1 e C3

Cs:

-,p

Resolvente da resoluo de C5 e C7

C9:

-,s

Resolvente da resoluo de C4 e C5

CIO:

-,r

Resolvente da resoluo de C2 e C9

C11:

Resolvente da resoluo de

c,2:

ni/

Resolvente da resoluo de C8 e C,,

C::6 e C 10

~ .

76

EdUFSCar -Apontammtos

-,rv s

-,svt

-.pvq

-.q vt

p vr

nil
Figura 1. 9 rvore de refutao associda Tabela 1.68 ..
Tabela 1.72 Uso de resoluo com negao da concluso.

Clusulas

Comentrio

C1:

-,pvq Clusula da 11 premissa

C2:

-,rv s Clusula da 21 premissa

C3:

-,q vt Clusula da 31 premissa

C4:

-iS V

Cs:

-,t

C6:

pvr

Clusula da negao da concluso

C1:

-,s

Resolvente da resoluo de C4 e C5

Cs:

-,r

Resolvente da resoluo de C2 e C7

C9:

Resolvente da resoluo de C6e C8

CIO:

Resolvente da resoluo de C1 e C9

C11:

-,q

Resolvente da resoluo de C3 e C5

C12:

nil

Resolvente da resoluo. de C 1 ~ C11

Clusula da 31 premissa
Clusula da 41 premissa

Para o uso de resoluo com negao do teorema, o teorema:


((p ~ q) /\ (r ~ s) /\ (q v s) ~ t

/\-it) ~

(-,p

/\-ir)

negado e reescrito na FND. Como pode ser visto a seguir, a negao do teorema produz o mesmo
conjunto de clusulas que o produzido quando da negao apenas da concluso.

A cartilha da lgica

-i(((p ~ q) A (r ~ s) A (q v s)

~tA

--,(--,((p ~ q) /\ (r ~ s) A (q v s) ~ t
((p ~ q) A (r ~ s) /\ (q v s)

=
--,t)) v (--,p /\ --,r)) =

--,t) ~ (--,p A .r))

t /\ --,t) /\ --,(--,p /\ --,r)) =

(--,p V q) /\(-a: V s) /\ (--,(q '\/ s) V t) /\ --,t /\ (p V r) =


(--,p V q) /\ (--,r V s) /\ ( (--,q) /\ (--,s)) V t) /\ --,t /\ (p

r)

(--,p V q) /\ (--,r V s) /\ (--,q V t) /\ (--,s V t) /\ --,t /\ (p V r)

C3 : --,q v.t

C4: --,s V t

2. A LGEBRA DE BOOLE
2.1 CONCEITOS INICIAIS
Definio 2.1 Seja A um conjunto tal que

IAI =

n. Se <a 1, 8i' ..., am> e Am, a m-tupla 1.llna m-

amostra de A. Se todos os ~ da m-amostra forem distintos, ento a m-amostra uma m-permutao


de A. Particularmente, uma n-permutao chamada simplesmente de permutao de A.
Observao 2.1 Dado um conjunto A, a seguinte notao adotada: Sm(A): conjunto de todas as
m-amostras de A; Pm(A): conjunto de todas as.. m-permutaes de A; e P(A): conjunto de todas.

as p(!_rmutaes de A.
Exemplo 2.1

(a) Considere o conjunto A={a,b,c}. A Tabela 2.1 mostra os conjuntos SiA), P2 (A), SiA) e
P3(A), respectivamente;
(b) Para todo k, Pk(A) ;; Sk(A). Especificamente, PiCA) = S1(A), e P1(A) e S1(A), para k > 1.
Caso k > IAI, ento Pk(A) = 0.
TaMhl 2.1 Conjuntos das 2-amostras, das 2-permutaes, das 3-amostras e das permutaes do conjunto A

= {a, b, e}.
S:z(A)

{ <a,a>, <a,b>, <a,c>, <b,a>, <b,b>, <b,c>, <c,a>, <c,b>, <c,c> }

P2(A)

{ <a,b>, <a,c>, <b,a>, <b,c>, <c,a>, <c,b> } ~

SiA)

{ <a,a,a>, <a;a,b>, <a,a,c>, <a,b,a>, <:a,b,b>, <a,b,c>,


<a,c,a>, <a,c,b>,<a,c,c>, <b,a,a>, <b,a,b>, <b,a,c>,
<b,b,a>, <b,b,a>, <b,b,c>, <h,c,a>, <b,c,b>, :<b,c,c>,
<c,a,a>, <c,a,b>, <c,a,c>, <c,b,a>, <c,b,b>, <c,b,c>,
<c,c,a>, <c,c,b>, <c,c,c>}

PlA) = P(A) { <a,b,c>, <a,c,b>, <b,a,c>, <b,c,a>, <c,a,b>, <c,b,a>}


Definio 2.2 (lgebra de Boole B) Considere:

ConjuntoB
Operaes binrias E9 e com relao s quais B fechado.
Operao unria ' com relao qual B fechado.

Elementos distintos Oe 1 de B (por distintos entende-se que, enquanto os smbolos a, b, e... representam quaisquer elementos, os smbolos Oe 1 representam eles prprios).

A cartilha da lgica.

79

Axiomas:
Para todo a,b,c e B,
IA- a E9 b = b E9 a
~.

IB-ab = ba

2A-aE9(bE9c)= (aE9J>)$c
2B-a(bc)= (ab)c
3A-aE9(bc)= (aE9b)(a$c)
3B:....a(bE9c)= (ab)$(ac)
4A- a El3 O = a
4B-a 1 =a
SA - a El3 a'

5B-aa' =O
.;-

Definio 2.3 Seja Suma assertiva na lgebra booleana B. Se em S os smbolos E9 , , 1 e Ofoith~'


substitudos de acordo com:
Smbolo Toma-se
ffi

E9

a assertiva resultante a sentena dual de S.

._,

Exemplo 2.2 Cada axioma em cada um dos cinco pares de axiomas da lgebra de Bole (Definio 2.1) , de fato, dual. do outro. A Tabela 2.2 mostra exemplos de assertivas duais .
. Tabela 2.2 Assertivas e suas duais.

Du~l

de S

aE9b=bE9a

ab=ba

ab=ba

aE9b=bE9a

1E9(aE9b)c=O O(ab)E9
OE9a=l

c~l

la=O

Teorema 2.1 (Princpio da dualidade) Se S for um teorema na lgebra de Boole B, ento seu dual
tambm um teorema em B.

80

EdUFSCar -Apontamentos

Teorema 2.2 Em uma lgebra booleana B:


(1) se, para todo a, a

e b = a, ento b = O;

(2) se, para todo a, a b = a, ento b = 1.


Prova de (1): Considere que para todo a e B, a e b =a. Particulannente,
(i) a EB b 1 =a
(ii) a EB b2 =a

Substituindo.a por b2 em (i) e a por b 1 em (ii) (o que pode ser feito, uma vez que a assertiva foi
estabelecida para todo a), tem-se,.respectivamente,
(iii) b2 e b 1 = b2

(iv) b 1 ED b2= b 1
De (iv), usando o axioma IA pode-se escrever que:
(v) b2 e bl= bl
De (f) e (v) segue que b2 = b 1 Assim, o elemento bem a ffi b =a nico. Pelo axioma 4A, en.,.
tretanto, a ffi O= a. Portanto, o nico elemento o O. A prova de (2) segue do resultado estabelecido
em (1), usando o princpio da dualidade.
Observao 2.2 Os axiomas 4Ae 4B estabelecem as propriedades do O e do 1, mas no estabelecem que o Oe o 1 so os nicos elementos que tm essas propriedades. Considere o axioma 4A o
qual estabelece que, para todo a e B, a ffi O= a. Note que a possibilidade de existir outro elemento
b E B, tal que, para todo a e B, a ffi b = a, deixada em aberto. A parte (1) do Teorema 2.2, entre~
tanto, exclui a possibilidde de existncia desse outro elemento. O Teorema 2.2 estabelece que Oe
1 so os nicos elementos de B, no sentido de que, nas assertivas a b = a e a e = a," o elemento
b s pode ser O e o elemento s pode ser 1. O Teorema 2.3 estabelece a unicidade de a' para o
. elemento a E B (isto , para todo a e B, existe a', uma vez que B fechado sob a operao ').

Teorema 2.3 Em uma lgebra booleana B, para todo a, se a ED b = 1 e a b =O, ento b =a'.
Teorema 2.4 Em uma lgebra booleana B,
(1) para todo a, a ED a= a;

(2) para todo a, a E9 1 = 1;


(3) para todo a e b, a ffi (a b) =a.
:

.~

, ....

11. J
t

ri

_t:.;.

.)..

f '

: ")

A cartilha da lgica . 81

'

Prova de (1):

aE9a

= (aE9a) 1

(4B)

(a E9 .a) -(a~~') "(SA)

a$ {a
,---a'L.
.
-a ffi tb.

(3A)

--
=
=

ro. .1. r .::r /

f4)1i>~

:J,.

(t.,lJd '.

(5B)

a
ti.+- ( J J

. ..' .::. r .rJ.. ......, ?

.J

Prova de (2):
. . \ ;.
.-.,.

-.

-~

a e 1.

(a E9'~)

~.

e (a e a'}
~a'

. ~~ 9 a'

(SA)
(2A)

-{l)

l.....

(SA)

Teorema 2.5 Em uma lgebra booleana B,

(1) para todo aJ,_~-~ ~=a; {

(2) para todo a, a O= O;


(3) para todo a e b~ a (a E9 b) =a.
Prova: Segue a partir do Teorema 2.4, usando o princpio de dualidade.
Teorema 2.6 Em uma lgebra booleana B,
(1) para todo a, (a')'= a;
(2) O'= 1 e 1' =O;

(3) para todo a e b, (a E9 b)' =a' b' e (a b)' =\i' E9 b'.


Os dois teoremas estabelecidos em (3): (a 9 b)' =a' b' e (a b)' =a' EB b' so conhecidos
como Leis De Morgan.

2.2 FUNE$ BOOLEANAS


Apesar'. de a definio de lgebra de Boole dada na Seo 2.1 ter sido bem geral, o tpico de funes e .frmulas booleanas ser desenvolvido utilizando a lgebra de Boole dada pelo sistema .

<{0,1} ,E9,,' ,o, l>.


Teorema 2.7 O sistema <{0,l},EB,,',0,1> uma lgebra de Boole. . ,

82 EdUFSCar -Apontttmmtos

Prova: O sistema dado precisamente a lgebra de Boole <B,9,,',0,l> da Seo 2.1, com o

conjunto B tendo apenas dois elementos, os elementos distintos Oe 1. Para provar que o sistema
uma lgebra de Boole, suficiente provar que {0,1} fechado sob EB, e'. Na prova sero .usados
os seguintes resultados:
para todo a, aEB a = a; .
para todo a, a

e.1 = 1; /

para todo. a, a a = a;..


;

para todo.. a, a .O = O;
I

O'= 1 e l' =O.

Como os nicos lementos de B so Oe l, tem-se que:


OEB O= O O O~ O O' = 1

oE91=1 o 1 =o
190=1

lO=O

191=1

ll=l

1' =o

Operaes so funes, isto ,


EB: {0,1}2 ~ {0,1} a funo {<0,0,0>, <0,1,1>, <1,0,1>, <1,1,l>}
: {0,1} 2 ~ {0,1} a funo
': {0,1}

{<o,o,o>, <0,1,0>, <l,0,0>, <1,1,1>}

{0,1} a funo {<0,l>, <1,0>}

Essas tr.s funes so definidas no conjunto {0,1} e sobre o conjunto {0,1}. O conjunto {0,1}
, pois, fechado sob essas operaes.
. Definio 2.4 Seja a lgebra de Boole <B,Ee,,',0,1>. A funo f(xl'x2, ... ,xn), total de Bu em B
(f: Bn ~ B) umajuno booleana de n variveis.
Exemplo 2.3 Seja B = {O, 1}. Como IBI = 2, IBDI = zn. o nmero de funes totais f:Bn~ B dado
por 220 Para n = 1, as quatro funes esto mostradas na Tabela 2.3 e, para n = 2, as 16 funes .
esto mostradas na Tabela 2.4. A Figura 2.1 mostra um diagrama de cada uma das quatro funes totais da Tabela 2.3.

A cartilha da lgica . 83

Tabela 2.3 Quatro funes totais de {0,1} ~ {0,1} .

<0,0> <0,1> <1,0> <1,1>


X
X

.01

=~
f,o = t;

X
X

foo = t;,

~I =

f3

Figura 2.1 As quatro possveis funes totais de {0,1} em {0,1}, indexadas de acordo com as imagens dcfs)
elementos de B.

OhsU;vao 2.3 Note nas Tabelas 2.3 e 2A que cada funo indexada com um nmero inteiro.
;, Cada inteiro a representao decimal do conjunto de valores binrios associados pela funo.
f?>nsidere a Tabela 2.4 e a funo total identificada por f13 :B 2 ~B. O nmero inteiro 13 tem porre-

pesentao binria a seqncia de dgitos 1101 e, portanto, f 13 = f 1101 = {<0,0,1>, <0,1,1>, <1,0,0>,

"<1,1,1>}.
'Jabela 2.4 Dezesseis funes totais de {0,1 }2 ~ {0,1}.

<0,0,0> <0,0,l> <0,1,0> <0,1,1> <l,0,0> <l,0,1> <l,1,0> <1,1,1>

...

i;__

fOOOI = fl

fOOIO = f2

fOOll = f3

. x

1
1

X
X

fOIOI =

fOIOO = f4
fS

foooo ="fo

funes

f0110 = f6

fOlll = f7

f,ooo = fs

flOOI

= f9

flOIO. =~O
-.: :-""

84

EdUFSCar -Apontamentos

Tabela 2 4 Continuao...

'

<0,0,0> <0,0,1> <0,1,0> <0,1,1>. <1,0,0> <1,0,1>1r <l,1,0> <1,1,1>


1
X.
X
X

X
1

li
'

..

j
1.

r
!

'

fl011 =f,,
fllOO

funes

= fi2

f!IOI = f13
flllO = fl4

:X

~Ili= flS

Definio 2.5 Seja a lgebra de Boole <B,ffi,,',q,1>. Sejamf, g eh funes booleanas den variveis,
f: B" ~ B, g: B" ~ B eh: B" ~ B. As seguintes igualdades.funcionais so definidas:
1. f EB g = h se e. sodnte
se, para todo .elemento do conjunto de amostras SD(B), o resultado
.
da combinao das imagens sob f e g, de acordo com a interpretao deEB em B, igual
imagem do elemento sob h;
2. f g = h (anlogo (i));
3. f' = hse e somente se a imagem de qualquer elemento de Sn(B) sob h igual ao complemento (imagem por ') da imagem deste elemento sob f.Exemplo i.4 Considere as 16 funes totais definidas na Tabela 2.4 e, particularmente, considere.
as funes:
f4 = fOIOO = {<0,0,0>, <0,1,1>, <1,0,0>, <1,1,0>}

fg = f,000 = {<0,0,1>, <0,1,0>, <1,0,0>, <1,1,0>}


Pode-se, pois, escrever que:
f 4 EB f 8= foioo = {<0,0,1>, <0,1,1>, <1,0,0>, <1,1,0>}

= f 1100 = f 12

Segue, pois, a igualdade .funcional: f4 EB f8= f 12


De maneira semelhante, considerando as fun~s:
f 5 = 0101

= {<0,0,0>, <0,1,1>, <1,0,0>, <l,1,1>}

f 9 = f 1001

{<0,0,1>, <0,1,0>, <1,0,0>, <1,1,1>}

tem-se que f 5 f 9 = {<0,0,0>, <0,1,0>, <1,0,0>, <l,1,1>} = f 0001

= f 1 Segue, ento, a igualdade

funcional f 5 f 9 = f1 Focalizando a operao ' considere, por exemplo, a funo:


f 13 = f 1101 = {<0,0,l>, <0,1,1>, <1,0,0>, <l,1,1>}.

Tem-se, ento,

.l

A cartilha da lgica

f' 13 = f0010 = {<0,0,0>, <0,1,0>, <1,0,l>, <J,1,0>} =

Segue que f 'u =

1_1

fOOIO

85

f
2

t;.

..

;:-.\ t
'f

Teorema 2.8 Seja <B,e,, 1,0,l> uma lgebra de Boole. Sejam f e g ~es booleana5-totiSAI~
..

~+ ,

B -+ B. So funes:

~;:_ .

'

1. f EB g;

L
L

2. f g;

rivei

3. f'.

Observao 2.4 A Definio 2.5 contempla a definio de igualdade funcional. O Teorema 2.8, a

:ulta~eguir~ prova que f 03 g, f g e f so de fato funes, como definidas na Definio 2.5. preciso,
[gualpois, provar que se f g = h 1 e f g = ~ ento h1 = ~.

Teorema 2.9 Seja <B,03;,',0,1> uma lgebra de Boole. Ento, o sistema <F:n,03,,',f.ili>, no g~l :

F:n o conjunto de todas as funes totais de Bn em B e as trs opera~s definidas como ria Defitli- ~
mple
o 2.5, uma lgebra de Boole.

..
1
. Exemplo 2.5 Considere B = {0,1}, bem como o sistema <F2,E9,,',f2,f1 >, no qual F2 o conjunto
nde11
:
de todas as funes totais de {0,1}2 em {0,1}. Temos IF21= 16, como definidas na Tabela 2.4. As
funes f2 e f1 so as funes cujos contradomnios so {O} e {l} respectivamente que, no caso do
exemplo em questo, so as funes f 0 e f 15 Pode ser facilmente verificado que F2 fechado sob as
operaes e que seus elementos satisfazem os axiomas. Cons~dere, por exemplo, o axioma 4A que
estabelece que, para qualquer elemento a e F2 , a 1 =a. Uma investigao exaustiva da verificao do axioma est mostrada na Tabela 2.5.
Tabela 2.5 Verificao da validade do axioma 4A (a 1 =a), com 1 = f1 = {<0,0,1>, <0,1,1>, <l,0,1>,

<1,1,1>}.

f0 = {<0,0,0>~ <0,1,0>, <l,0,0>, <1,1,0>} f1 = {<0,0,0>, <0,1,0>, <l,0,0>, <1,1,0>} = fo


fl = {<0,0,0>;, <0,1,0>, <l,0,0>, <l,1,1> } fl = {<0,0,0>, <0,1,0>, <l,0,0>, <1,1,1>} = fl
fl

{<0,0,0>, <0,1,0>, <1,0,l>, <1,1,0>}

f3 = {<0,0,0>, <0,1,0>, <1,0,1>, <l,1,1>} fl

{<0,0,0>, <0,1,0>, <l,0,1>, <1,1",l>}

f3

f2

= {<0,0,0>:, <0,1,0>, <1,0,l>, <1,1,0>}

f4 =~:{<0,0,0>, <0,1,1>, <1,0,0>, <l,1,0>} fl = {<0,0,0>, <0,1,l>, <1,0,0>, <1,1;0>} = f4


ad<

f5

= {<0,0,0>, <0,1,1>, <1,0,0>, <1,1,l>} ~ =

{<0,0,0>, <0,1,1>, <1,0,0>, <1,1,l>}

f6 = {<0,0,0>, <0,1,l>, <1,0,l>, <l,1,0>} fl = {<0,0,0>, <0,1,1>, <1,0,l>, <1,1,0>} = f6


f, = {<0,0,0>, <0,1,1>, <1,0,l>, <1,1,1>} fl = {<0,0,0>, <0,1,l>, <l,0,1>, .<l,l,l>} = f,
f8

= {<0,0,1>, '<0,1,0>, <1,0,0>, ..l,,l.0>} f, = {<1,0,0>, <0,1,0>, <1,0,0>;::~l;l;O>}

= f8

86'

EdUFSCar -Apontamentos

Tabela 2.5 Continuao...

f9 = {<0,0,l>, <0,1,0>, <l,0,0>, <l,1,1>} ~ = {<l,0,0>, <0,1,0>, <l,0,0>, <l,1,1>} =

f 10 = {<0,0,1>, <0,1,0>, <1,0,1>, <l,1,0>} f1 = {<l,0,0>, <0,1,0>, <1,0,l>, <,1,0>} = f 10

= {<0,0,l>, <0,1,0>, <1,0,1>, <l,1,1>} f1


~2 = {<0,0,1>, <0,1,1>, <1,0,0>, <1,1,0>} fl =
' f,3 = {<0,0,l>, <0,1,l>, <l,0,0>, <1,1,l>} fl l =
f 11

{<l,0,0>, <0,1,0>, <1,0,1>, <l,l,i>}


{<1,0,0>, <0,1,l>, <1,0,0>, <l,1,0>}

= fll
= f,2

{<1,0,0>, <0,1,1>, <1,0,0>, <1,1,1>} = ~3

f,4 = {<0,0,1>, <0,1,1>, <l,0,1>, <l,1,0>} fl = {<1,0,0>, <0,1,1>, <l,0,1>, <l,1,0>} =


f 15

= {<0,0,1>, <0,1,1>, <1,0,1>, <1,1,l>} ~

= {<1,0,0>, <0,1,1>, <1,0,l>, <1,1,l>}

Exemplo 2.6 Considere o\istema <F3,6,;',f.!2,f1>, no qual


totais de {0,1}3 em {0,1}. Temos

~4

=f

15

F3' o conjunto de todas as funes

IF31=256. As funes f2 e f1 so as funes cujos contradomnios

so {O} e {l} respectivamente que, no caso do exemplo em questo, so as funes f0 e f 255 :

o= fQ = {<0,0,0,0>, <0,0,1,0>, <0,1,1,0>, <0,1,1,0>, <1,0,0,0>, <l,0,1,0>, <l,l,0,0>, <l,1,1,0>}


1 = fl = {<0,0,0,l>, <0,0,1,l>, <0,l,1,1>, <0,1,1,l>, <l,0,0,1>, <l,0,l,l>, <1,1,0,1>, <l,1,1,1>}
Em razo da maneira como so enumeradas, qualquer uma delas pode ser facilmente descrita.
Por exemplo, a funo fis dada por:
f85

= {<0,0,0,0>, <0,0,1,1>, <0,1,1,0>, <0,1,1,1>, <l,0,0,0>, <l,0,1,l>, <l,l,0,0>, <1,l,1,1>}

uma vez que a representao do nmero decimal 85 em binrio O1O1O1O1.


Suponha outra situao, na qual conhecida a descrio da funo, dada por:

f, = {<0,0,0,l>, <0,0,1,0>, <0,1,1,0>, <0,1,1,0>, <l,0,0,l>, <l,0,1,0>, <l,1,0,0>, <1,1,1,1>}


Como 10001001 a representao em binrio do nmero decimal 137, resulta que a funo f7
em questo a funo f 137

2.3 FRMULAS BOOLEANAS


Considere a expresso (x 1 6 Xi)' E9 (x/ x 2'), na qual x 1 e "2 so variveis que representam elementos de B. Apesar da tendncia de abordar tal expresso como funo, ela certamente no um
conjunto de pares ordenados e, conseqentemente, no uma funo. A expresso uma frmula
(ou forma). A razo pela qual as frmulas so tratadas, algumas vezes, como funes se deve ao
fato da existncia de uma associao entre uma frmula com n variveis e uma funo total de B
em B. Essa associao tratada nesta subseo.

A cartilha da lgica

87

Definio 2.6 Seja a lgebra de Boole <B,EB,,',0,1> e sejam x 1, 'S., x.. variveis representando
elementos de B. Umajnnula booleana definida recursivamente como:
1. O e 1 so frmulas booleanas;
2. a varivel xi, i = 1, ... , n uma frmul booleana;

.-J

3. se a uma frmula booleana, eute (o:1-iambm-o';


4. Se a uma frmula booleana, ento a' tambm o ;
5. Se a e ~ so frmulas booleanas, ento a EB ~ tambm o ;
6. Se a e ~ so frmulas booleanas, emo a ~ tambm o ;
7. Somente as expresses dadas pelas afirmaes 1. a 6. so frmulas booleanas.
Exemplo 2. 7 Considere a expresso:

A expresso (1) uma frmula booleana, se cada uma das expresses,

,,

,;~ -~;,:, -~

(1.1) (x 1 E9 'S)' e
)

(1.2) Cx1' Xi')

for uma frmula booleana.


A expresso (1.1) uma frmula booleana se a expresso (1.1.1) (x, EB ~)for uma frmula
booleana. A expresso (1.1.1) uma frmula booleana se a expresso (1.1.1.1) x 1 E9 'S for uma
frmula booleana. A expresso (1.1.1.1) uma frmula booleana uma vez que x 1 e x2 s.o frmulas
booleanas. Isso faz com que a expresso (1.1.1) seja uma frmula booleana e, por sua vez, faz com
que a expresso (1.1.1) seja uma frmula booleana que, por sua vez, faz.com que a expresso (1.1)
seja uma frinula booleana.
A mesma abordagem pode ser usada para mostrar -que . a-express-o {i .Z} 1lma frmula bo~lea
na. Portanto, a expresso (1) em questo uma frmula booleana vlida.
Definio 2. 7 Considere a lgebra de Boole <B, EB, ,',O, 1> e considere uma frmula de Boole com
n variveis x 1, Xi, ... , xu que r~resentam elementos de B. O conjunto dos elementos das n-amostras
de B, Su(B), chamado de conjunto de valores de atribuio, e ai-sima coordenada de uma atribui9 est associada varivel xi.
Exemplo 2.8 Considere a frmula booleana x 1 (x 1 EB (Xi x3)) e a atribuio <l,0,1>. Com essa
atribuio a frmula fica: 1 (1Ef3(O1)) que, clculada usando as definies de operaes para

elementos de {0,1}, como na prpva do Teorema 2.7, resulta em: 1 (1Ef3(O1)) = 1. Pode-se,

88

EdUFSCar-Apontammtos

pois, escrever que: "A associao entre as coordenadas de uma atribuiq. e as variveis permite a
reduo de uma frmula a um valor". Essa reduo, chamada de clcu~, estabelece uma ligao
B, associada frmula
entre frmulas e funes. No caso, um elemento da funo total de B3
x 1 (x 1 E0 ('S :>S)), ,. por exemplo, <<1,0,l>,1> ou, notado de maneir simplificada;<l,0,1,l>.
Clculos realizados levando em considerao cada.um dos elementos de S11(B) (valores de atribui
o) fornecem todos os elementos da funo, como mostrado na Tabela 2.6.
Tabela 2.6 Clculo da frmula booleana x 1 (x 1 e (~

xJ) e especlficao da funo booleana a ela

associada. Note que f o conjunto das oito 4-uplas

<X1,'S,X3> a=~JS
o
<0,0,0>

~=x 1

E9 a

x1 ~

{<<0,0,0>,0>

{<0,0,0,0>

<<0,0, 1>,0>

<0,0,1,0>

<0,1,0>

o
o

o
o
o

<<0,1,0>,0>

<0,1,0,0>

<0,1,l>

<<0,1,1>,0>

<0,l,1,0>

<1,0,0>

<<1,0,0>,1>

<1,0,0,1>

<<l,0,1>,l>

<l,0,1,1>

<l,1,0>

o
o
o

<<1,1,0>,1>

<l,1,0,1>

<1,1,1>

<<1,1,1>,l>}

<l,1,1,1>}

<0,0,1>

<1,0,1>

Definio 2.8 Duas frmulas booleanas so equivalentes se seus valores so iguais, para todo ele-

mento do conjunto de atribuio.


Exemplo 2.9 Na Tabela 2.6 podeser observado que as frmulas booleanas x1ex, (x 1 E0 C:is x3))
so equivalentes. A equivalncia das frmulas permite _escrever que x1 = x 1 (x 1 E9 ('S JS)). Uma
vez que as frmulas so equivalentes, as funes a elas assodadas so iguais. .
Note que apesar de x 1 ser uma frmula definida usando apenas ilma varivel (x 1 no caso), a
funo associada a ela deve ser total de {0,1}3 em {0,1}, no caso especfico de igualdade entre as
funes associadas a x1 e a x1 (x1 ~(Xi~)). Para que se possa afirmar que funes correspondentes s frmulas booleanas so iguais, preciso considerar o mesmo conjunto de atribuio.
Definio 2.9 ~eja a lgebra de Boole <B,~,,',0,l> e a{x 1, 'S,..., xn) uma frmula booleana nas

variveis xi' 'S, ... , xn, que representam elementos de B. Os elementos do conjunto das n-amostras
Sn( {0,1} ), chamados de valores binrios de atribuio, so denotados por t:i, (m = 0, ... ,2n - 1). A
amostra <m.~, ... ,mn> denotada por
decimal).

e quando o n'mero binrio m1111i"mn for igual a m (nmero

Seja F o conjUnto das frmulas a(m 1, ~,.:., mn) e seja a funo q: Sn ~ F tal que q(t!) = a(m 1,

IDi,. .. , m) se e somente se t! = <m1'1Di,,mn>. Define-se, a seguir, a funo de avaliao binria v:

A cartilha da lgica

89

F ~ {O, 1} tal que v(cx(m 1, ~, , mil)) =O se e somente secx{m 1, ~, , mil) =O quando calculada
de acordo com as regras do Teorema 2.7 e v(cx(m 1, ~, , mJ) = 1 se e somente se cx(m 1, I11i, ... , m11)
= 1 quando calculada de acordo com as regras do Teorema 2.7.
,
t}~-':.
'~f1 ;~

Exemplo 2.10 A notao introduzida na Definio 2.9 particularizada, no exemplo ;que seg&e,;,
para n = 3. Considere:
B3 = {<0,0,0>, <0,0,l>, <0,1,0>, <0,1,l>, <l,0,0>, <1,0,1>, <1,1,0>, <1,1,1>}.
e

t 3 = <0 0> "


o
' '

t!-r <1,0,0>

t~

= <0,0,l>

t~

= <1,0,1>

t 3 =<010>
"2
' '

t~

=. <1,1,0>

t~

= <1,1,l>

= <0,1,1>

~'

t~;~;

e as funes q e v como mostradas na Figura 2.2.

' .

Figura 2.2 Representao pictrica das funes q e v da Definio 2.9.

Exemplo 2.1.1 Consdere cx(x 1, 'S x3) = x 1 (x 1 e (Xi x3)). Ento, t~ = <1,0,l;;>- e q(t~) =a(<l,0,1>)
= 1 .(1 E9(0 l))ev(q(t~))= 1.
S'e B = {0,1}, ento o conjunto {< t!i,v(q(!i))>, m = 0, ... ,7} a funo associada com a frmula

booleana x 1 (x 1 EB (~ x)). Escrevendo por extenso, tem-se que a funo :


{< tg,v(q(t~))>, < t~,v(q(tD)>, < t~,v(q(t~))>, < t~,v(q(t~))>, < t!,v(q(t!))>, < t;,v(q(t;))>, < t!,v(q(t!))>,
< t~,v(q(~))>}.
~

'

.. ~

'.

90

EdUFSCar -Apontamentos

Exemplo 2.12 Considere a(x 1, "S' x.J = (x 1 E9 "S) (x 1 E9 ~'). O clculo biririo da frmula est .
mostrado na Tabela 2. 7.
.

Tabela 2.7 Clculo da frmula booleana (x 1 E9 'S) (x 1 E9 ~') e especificao da funo b?oleana a ela
associada. Note que a funo o conjunto das 8 4-uplas da coluna f.

t3m

q(t!)

v(q(t~))

<0,0,0>

(0 E9 O) (O E9 O')

{<0,0,0,0>

<0,0,l>

(O E9 O) (O E9 l ')

<0,0,1,0> .

<0,1,0>

(O E9 1) (O E9 O')

<0,l,0,1>

<0,1,1>

(O E9 1) (O E9 1')

<0,1,1,0>

<1,0,0>

(1 E9 O) (1 E9 O')

<)t-0,0,1>

<l,0,1>

(i e o) (1e1')

<l,0,1,l> .

6 <l,l,0>

(1 E9 1) (1 E9 O'.)

<l,1,0,1>

<l,1,1>

(1 EB 1) (1 e 1')

<l,l,1,1>}

Exemplo 2.13 Considere a(x" 'S' x.J = (x 1 "S)' E9 (~ E9 x3)'. O clculo.binrio da frmula est
mostrado na Tabela 2.8, bem como a funo booleana a ela associada.
THela 2.8 Clculo da fnnula booleana (x1 xiY EB ('S E9 xJ' e especificao da funo booleana a ela
.associada. Note que a funo o conjunto das 8 4-uplas da coluna f.
t3
f
m
v(q(t~))
q(t!)
m

<0,0,0> (O O)' E9 (O E9 O)'

{<0,0,0,1>

<0,0,l> (O O)' Ea (O Ea 1)'

<0,0,1,1>

<0,1,0> (O l)' E9 (1 9 O)'

<0,1,0,1>

<0,1,1>

(O 1)' E9 (1 9 l)'

<0,1,1,l>

<1,0,0> (1 O)' E9 (O E9 O)'

<1,0,0,1>

<1,0,I>

(1 O)' E9 (O E9 l)'

<1,0,l,l>

<l,1,0>

(1 1)' E9 (1 E9 O)'

1
.1

<1,l,0,1>

<l,1,1>

(1 1)' E9 (1 E9 1)'

<1,1,1,1>}

De.finio 2.10 Seja a lgebra de Boole <B,E9,,',0,1> e sejam as variveis x., x2, ... , xn, e considere
que a1 representa x.1 ou x.'.
1
A frmula a1 a2 ... an denominada minterm (polinmio minimal, produto completo, produto fundamental) e a frmula a 1 E9 a2 EB ... Ea an denominada maxterm (polinmio mximo, soma
completa ou soma fundamental), de n variveis.
Conveno: x1 =xi e xr= x/ e, sob essa conveno, a seguinte notao ser adotada:

A cartilha da lgica

91

minterm: xf1 1 xi2 ... ~ser representado por minm11 e


maxterm: xf1 1' E9 xf12 ' E9... E9 xi"' ser representado por maxm,
quando o nmero binrio m 1 IDi~ ... m11 = m. Os ~s so chamados de literais.
Exemplo 2.14 No caso particular de n = 3, tem-se:

x'1 @ -:z
x' @ X = x @ yO
3
1
"'2
x'1 x 2

@ X1
3

= mm 13

3
x'
= x1 x-:z1 x3 = min_
"""3
?!

x'1 'S "3 = x~ xi x~ = min/ -


0
1
3
x 1 x~
-:z x'3 = x 1 x-:z .x3 = min4

x1 y'
Y"""3 = x'1 x-i0 x31 = mins3
""2
1
3
x 1 x2 x'3 =x l1 x
-i x=min
3
6

,...

1
1x
x-i x3 =x
x-z1 x31 =min73 e ,L 1
. 1

x'1 ffi y'-i E9

X'

= XO1 E9 XO2 E9 X~
= max73
"""3

x'1 E9 x'
E9 x. ""3 = x1 E9 x2 E9 x ""31 = max63
-;i

x'.1 E9 -i
x E9 x3 = x1 E9 -z
x 1 E!) x31 = max43
x 1 E9 x~
E9 x'3 = x11 E9 yO
E9 x3 = max33
. ""2
'""2

x 1 ffiy'ffix
=x (1 E9x2 E9x31 =maY ""23 .
-i
3

X 1 E9 Y
-:z

E9 X 3 = X 11 E9 X""21 E9 X31 = maxo3

Teorema 2.10 Seja a lgebra de Boole <B,E9,,',0,l> e x 1, x2, , x11 variveis que representam elementos de B. Toda frmula booleana a(x 1, x2, ... , xn) de n variveis equivalente a uma expanso

em minterms dada por:

.. ,.

92

EdUFSCar -Apontamentos
1

,, - )

Exemplo 2.15 Considere a(x., "2' "3) = (x 1 Xi') E9 (Xi' ('S E9 x,')). Usando o Teorema 2.10, essa
frmula equivalente expanso em minterms:
23 -1

(x, 'S') E9 (~' (~ Eax,')) = ffi v(q(t!J) minm3 =

'

m=O
.=

v(q( t)) mino3 EB v(q(tr)) min, 3 E9 v(q( t~)) ~ 3 e v(q(tD) ~3 e

v(q( d)) min/ E9 v(q( d)) min53 E9 v(q( t~ )) min63 E9 v(q( t~ )) min/ =

= v(q(a.(0,0,0)) min0 3 EB v(q(a(O,O,l))})Illl13 EB v(q(a(0,1,0))) ~

v(q(a.(0,1,1))) min/ E9 v(q(a(l,0,0))) min4 3 EB v(q(a(l,0,1))) min/ E9


.

v(q(a.(1,1,0))) min/ E9 v(q(a(l,1,1))) min/ =

= ( xf

x~

= (X;

X~

xD EB ( x~
X~) ffi

x~

(X; @

X~ @

x1) EB ( xl
X3)

x2

xD E9 ( x}

x2

$ ( XJ @ X~ @ X~) ffi ( XJ @ X~ @

x1) =
X3 ).

Teorema 2.11 Para uma dada frmula booleana a{x 1, JS, ... , xn), a equivalente expanso em minterm, defindapelo Teorema2.10, nica.
. Teorema 2.12 Seja a lgebra de Boole <B,Ea,,',0,1> e x 1, JS, ... , xn variveis que representam elementos de B. Toda frmula booleana a(xl' JS, ... , xn) de n variveis equivalente a uma expanso
em maxterms dada por:
2n-1

a(x 1,

"2 ... , x)
=
n

@ v(q(r1 )) E9 max

m=O

Observao 2.5
1. Uma vez que as frmulas normais expandidas so nicas, elas so chamadas de frmulas
normais ou frmulas cannicas.
2. A expanso cannica do Teorema 2.10 chamada deforma normal disjuntiva.
3. A expanso cannica do Teorema 2.12 chamada deforma normal conjuntiva.
4. Uma frmula em que os literais so combinados apenas via operador chamada de produto simples ou produto. Se o operador for EB, a frmula chamada de soma simples .ou
soma.

A cartilha da lgica

93

Observao 2.6 Uma conseqncia bvia da unicidade da forma normal que duas frmulas
booleanas so equivalentes se elas tm a mesma forma normal. Suas funes associadas so, conseqentemente~ iguais.
. ~ '"

.:.:.

~ ~~- --:-

Observao 2.7 Exames das expresses cannicas mostram que duas frmulas boolanas a(x;,
'S, ... , x21.) e j3(xl' 'S, ... , xn.) tm a mesma forma normal, isto , tm a mesma funo associada, se
v(a(x 1, 'S, ... , xn.)) = v(j3(x 1, 'S, ... , xn)) para todas as n-amostras <m 1 ,~, ,m11> do conjunto {O, 1}.
:._:;: _

Obser-Vao 2.8
1. Na fomia nonnal disjuntiva, o termo min
n. para o qual o correspQ_ndente
v(q(t!,.)
O no
,. m
}i
,
precisa ser includo.
2. Na forma normal conjuntiva, o termo maxm21. para o qual o correspondente v(q(f!)) 1 no
precisa ser includo.

Exemplo 2.16 Considere a frmula booleana a(x 1, x2, xJ = (x 1 E9 'S) (x 1 E9 x3') e ache as corres., ;,
pondentes expanses em minterms e maxterms.
~\
.
Usando o Teorema 2.1 O, essa frmula equivalente expanso em minterms:
23-1

(x1 E9 'S') (x1 E9 x3') = ffi v(q(t!)) nnm.3 =


m=O

= v(q(t )) min03 E9 v(q( t?)) min 13 EB v(q( t~ )) ~3 EB v(q( t~)) min/


v(q( t~ )) min/ E9 v(q( d)) min/ E9 v(q( t~ )} min63 EB v(~( t~ )) min/ =

= v(a(0,0,0)) min03 E9 v(a(0,0,1)) miD 13 EB v(a(0,1,0)) ~3 EB v(a(0,1,1))

min/ ffi v(a{l,0,0)) min/ EB v(a(l,0,1)) min/ E9 v(a(l,1,0)) mm63


v{a(l,1,1)) min.,3

A Tabela 2.9 lista os valores v(q(t!)), os quais, uma vez obtidos, sero substitudos na expresso
anterior.
Tabela 2.9 Clculo para a expanso da frmula booleana (x 1 EB ~) (x 1 EB >s').

t!i

xt

'S

x'3 x1 67 'S x1 EB x3' (x 1 67 x2) (x 1 9 x3') v(q(t!))

o o o 1
fr o o 1 o
fi o . 1 o 1
o 1 1 o
t~
~

...,

o
o

o
o

1
~

o~

o~

1
o~

94

EdUFSCar -.Apontamentos

Tabela 2.9 Continuao ...

t!

fs

f,

o o 1
o 1 o
1 o 1
1 1 o

Os minterms min,,3, min13 e ~ 3 no entram na expanso normal disjunjiva. Vem, pois, que:
(xt EB Xz) (x1 EB x3') = mfu/ E9 min43 EB min/ EB min/ EB min/ =

=(x; x2 x3)E9(x1

x~ x~)E9(x1

x~ x3)EB(x1 x2 x~)E9(x1 x2 x3).


;Jr

'

J a expanso em maxterms fica:


(x 1 E9 JS) (x 1 EB ~') = max03 max 13 max/ = (x1 EB x2 E9 x3) (x1 E9 x2 EB x3)

(x1 EB x~ EB

x3 ).

Exemplo 2.17 Em algumas situaes pode ser necessrio obter a frmula associada.a uma dada fun-

o booleana. Considere, por exemplo, a funo booleana f: {0,1}2 ~ {0,1} dada por: f= {<0,0,0>,
<0,l,1><1,.0,1;::-<l,l,0>}. Portanto, considerando que:
v(a.(0,0)) =O

v(~) =O

v(a.(0,1)) = 1

v(tj) = 1

v(a.(1,0)) = 1

v(tj) = 1

v(a.(1,1)) =O

v(~)= O

tem-se:
a(xp>s) = v(

min/ =ex;

t) ~

EB v(

tf ) min/ E9 v( t~) min/ ffiv( t~) min/ = min

2
1

EB

x2) E9 Cx1 x~) e que

a(x 1,>s) = v( t~) ffi max/ v( tf) E9 max 12 v( t~) E9 m~2 v( tj )EB max32 = max02 E9
max/ = (X! E9 X2) (X; E9 X~).
Exemplo 2.18 As Tabelas 2.10 e 2.11 mostram que as duas frmulas booleanas:

so equivalel\tes.

A cartilha da lgica

95

A forma normal clisjlllltiva de a e~ : (x; x2 x;) E9 (x; x~ x3) E9 (x; x2 x3) $


(x1 x~x~).

A forma normal conjuntiva de a. e

~ 6: ( x1 EB x-~ E9 x3) ( x; ~ x2 Ea x3' ( x; $ ~; ~ x3 ~~

(xi E9 x2 9 x)).

Tabela 2.10 a= ((x 1 xJ e ("2 E9 ~'))'=(a, E9 a 2)'

t!

<0,0,0>

<0,0,l>

<0,1,0>

<0,1,l>

<1,0,0>

o
o
o
o

<l,0,1>

<1,1,0>

<l,1,1>

o.

t! .

v(a 1) v(a.2) v(a, 9 a.2) v(a)


o o
o
1

o
o
o

o
o
o

,:,

:.i ..

v(x,' x3) V(Xi' X3') v(J3)

<0,0,0>

<0,0,l>

<0,1,0>

<0,1,1>

o
o
o

<l,0,0>

<l,0,1>

<l,1,0>

<1,1,1>

o
o
o
o

o
o
o

o
1
1.

o
o
o

2.4 MINIMIZAO DE EXPRESSES BOOLEANAS


Uma v~z que uma frmula booleana pode ser representada por diferentes expresses, em algumas
aplicaes (por exemplo, em projetos de circuitos) importante usar uma representao que de
alguma forma seja minimal, particularmente se tal expresso ser usada vrias vezes.
Minimizao i,mplica reduo de uma expressobooleana a alguma forma minimaL Qualquer
. estratgia para ~izar expresses boo~eanas tem por base resultados da lgb~3-_de Boole. Ge-

96

EdUFSCar -Apontammtos

ralmente a reduo algbrica de funes booleanas no um processo tri~al e exige certo grau de
experincia; isso se tonia mais evidente medida que a complexidade cfa funo a ser mjnjmizada
aumenta. O termo minimal diz respeito a uma detenninada forma de representao - no contexto
em questo, trata-se da forma.normal disjuntiva. Os mtodos de mini:rnizao so algoritmos .de
simplificao que minimizam uma forma normal de maneira peculiar. Dada uma forma normal
disjuntiva, o mtodo de minimizao encontra uma expresso equivalente, representada como uma
soma de produtos, que contm o menor nmero de produtos e, de todas as somas de produto con-
tendo esse nmero de produtos, aquela em_que os produtos tm o menor nmero de literais. Existem
vrias tcnicas que viabilizam e facilitam o processo de minimizao. Particularmente conhecidas
so o algoritmo de Quine-McCluskey e os mpas de Kamaugh; ambos os mtodos tm a mesma
funcionalidade e esto fundamentados no conceito de implicativo direto. O algoritmo de QuineMcCluskey, entretanto, escalonvel e facilmente automatizado. O mapa de K.arnaugh construdo a partir da forma normal que deve ser minimizada, ~ a frmula minimal encontrada por meio
do exame visual do mapa. Essa tcnica complicada de ser implementada computacionalmente e,
. como um_mtodo manual, ela se toma complicada quando o nmero de variveis excede a 5. Nesta
seo, sero apresentados e discutidos ambos, o Algoritmo de Quine-McCJuskey e os mapas de
K.arnaugh, com nfase no primeiro mtodo.
\J

2.4.1 Consideraes iniciais

Considere uma frmula booleana com trs variveis (n=3), a.(x 1, ~' x3), cuja avaliao est mostrada na Tabela 2.12.
Tabela 2.12 Avaliao de uma fmula booleana com trs variveis.

x1

X3

o o o
fi o o 1
~ o 1 o
~ o 1 1
~ 1 o o
fs 1 o 1
~ 1 1 o

v(q(t!))

. f,

o
o
o
o
o
o
o

Como estabelecido pelo Teorema 2.10, a frmula avaliada na Tabela 2.12 equivalente a uma
expanso em m.interms dada por:

A cartilha da lgica

que, no caso em questo, produz:

a.(x ,, x2,

v~'\ --

;~;~r

1 ll'llno
3EB O101
'' nun
3m
w
1

''

''

n
m ..D IOI~ 3~w
m
~~.
~3w

min63 E9 O min.,3 = mino3 = x1 ~"3o= x, '~'x/.

97

. ~.r.J_:~rJ
,,..

O. l()l-,
'' m m
43tn
r , 53. @ O
w O ''
IOl.mm

Considere, agora, a expanso em minterms de uma frmula booleana ~<x., "i X3), cuja avaliao
est mostrada na Tabela 2.13.
Tabela 2.13 Avaliao da frmula booleana P(x 1,

x;, :is).

x1

X3

o o o
fi o o 1
fi o 1 o
~ o 1 1
t! 1 o o
~ 1 o 1
~ 1 1 o
~

t~

2n-1

v(q(t!i))

o
o
o
o
. -1
1

o
o

Tem-se que p(x 1, ~' x3) = E9 v(q(t!a)) minmn =O min03 E9 O min 13 E9 O ~ 3 E9 O


m=O

3 EB 1 min 3 E9 1 min 3 E9 O min 3 E9 O min-3 = min 3 E9 min 3 = x 1x 0x 0 E9 x 1x Dx 1=


min
--~
4
s .
6
-----,
4
5
123
123

x 1 ~'x3 '

E9 X1Xz'x3 = X1Xz' (ver Observao 2.9).

Observao 2.9 Note que:


(a) na expresso de um minterm, o operador estinlPlicito;
(b) na frmula x 1x2 'x3'

m\.x)s'x
-- ~ - .

a varivel x3 redundante e, portanto, pode ser eliminada.

. Segue a justificativa.

O Axioma 3B estabelece que: (a b) EB (a c) =a (b EB e). Para o exemplo em questo, pode-se


escrever que a expresso anterior igualr a: a (b EB c) =a (x/ E9 xJ =a 1 =P,:;::: x/P;~'
----...
.~

98

EdUFSCar -Apontamentos

Para qualquer frmula booleana a,


(ax) e (ax') = Cl (x e x') = Cl 1 =

Cl

(2.1)

O uso do resultado (2.1 ), portanto, fornece uma maneira de reduo de 2 termos a 1 termo apenas - como visto no exemplo em questo, a varivel ~ redundante. Essa abordagem pode ser
usada na minimizao de fnp.ulas booleanas.
Considere uma terceira frmula booleana .(x1, JS, xJ cuja avaliao est mostrada na Tabela 2.14.
Tabela 2.14 Avaliao da frmula booleana .(x 1, JS JS).
x1

Xi

X3

o o o
fi o o 1
~ o 1 o
~

Tem-se, ento, que /...(xi' Xi'

o
1

tj

t!

fs

o o
o 1

()

f,

2n-1

X3) =

v(q(t:J)

o
o

v(q(~) minm =o

min/ EB 1 minl 3 EB o ~

m=O
.

3 = min 3 e min 3 EB min 3 EB min 3


1 min
_3 e 1 min43 EB 1 mins3 EB O niin63 EB O m1n
~
-,
1
--~
4
s
= X 1Ov~Ox31 EB X 1Ov~ 1x31 EB ~ 11x-ix3a EB X 11x-i<>v43 1= X 1'x-i 'x-; E9 X1,~2X3 e X 1X2'x_
E9
X
x_
'x
=
X
'x
e
X
X
'
--;
1-i 3
1 3
1-:z

(ver Observao 2.9 (b)).


Definio 2.11
1. Uma frmula booleana a cobre outra frmula booleana f3 se v(a) = 1 para todos os valores

de atribuio que tomam v(f3) = 1.


2. Se a cobre f3 e f3 for um produto simples, ento f3 um implicativo de a.
3. Se f3 for um implicativo de a e nenhuma frmula obtida de f3 pela remoo de literais for um
implicativo de a, ento f3 um implicativo direto de a.
Exemplo 2.19 Considere a frmula a: x 1x2 e x3x4 e a frmula f3: x 1x2x/. Como pode ser visto na
Tabela 2.15, a cobre~ e, como f3 um produto, f3 um implicativo de a. Uma vez que a expresso
x 1:is tambm um implicativo de a, ~ no um implicativo direto. Os produtos x1x2 e x3x4 so os
dois implicativos diretos de a.

A cartilha da lgica

99

Tabela 2.15 Clculo da frmula booleana a.: x 1"2 EB ~x4, f3: x1 ~~'
<X, ~,"3,X.4>

~,

<0,0,0,0>

<0,0,0,1>

. 1

<0,0,1,0>
<0,0,1,1>

o
o

<0,1,0,0> .

<0,1,0,l>

<0,1,1,0>
<0,1,1,1>

o
o

<1,0,0,0>

<l,0,0,1>

<l,0,1,0>.
<1,0,1,1>

o
o

o
o
o
o

<1,1,0,0>

<1,1,0,l>

.O

<l,1,1,0>

o
o

o
o

<1,l,1,1>
Exemplo 2.20 Considere a frmula a: xi x2

x,'S

o
o
o
O.

o.
o
o

"

a.

"3X4

o o o
-o o o
o o o
1
1 o
o o o
o o o
o o o
1
1 o
o o o
o o o
o o o
1
1 o
o 1 1

. fr

e xi 'S 'X) e X/Xi'X3. Como pode ser visto na Tabela 2.16,

os implicativos diretos de a so os produtos: X1Xi, X1X), Xi'Xs

Tabela 2.16 Implicativos diretos da frmula a.: x 1x? EB x 1 x2 '~ EB x1'x2 'x3

<X,,x2,x3> X'l ~'


<0,0,0>
<0,0,1>
<0,1,0>
<0,1,l>
<1,0,0>
<1,0,1>
<1,1,0>
<1,1,1>

x1~

o 1 o
o 1 o
o o o
o o o
o
1
1
o
1 .1
o o 1
o o 1

X1'S'X3

X l 'Xi'X3

o
o
o
o
o

o
o
o
o
o

o o
o
1
o o
o o
o o

o
o

x1x3

'S'X3

o
1

o
o
o

100

EdUFSCar -Apont4mmto1

2.4.2 O Algoritmo de Quine-McCluskey


Antes da apresentao e discusso do algoritmo, considere o Exemplo 2.21.
Exemplo 2.21 Seja uma forma normal definida pelo seguinte conjunto de minterms:

O resultado (2.1) aplicvel aos seguintes pares de minterms:


XI 'Xi~X4''

x,>s~x4 ';

Xt'S X3X4'

X1JS'x3x 4;

'

X1'SX3X4';

XtJS X3X4,

X1'SX3X4;

X 1 'S~X4 ',

X1'S'SX4.

X1JS X3X4'
1

Note que o primeiro minterm de P, foi marcado em negrito para indicar que no se qualificou
para participar de qualquer aplicao do resultado estabelecido em (2.1 ). A aplicao de (2.1) aos
pares identificados produz o conjunto de produtos: .

Consi~erando

o conjunto P 2 , o resultado (2.1) agora aplicvel aos pares:

Note que o primeiro minterm de P 2 foi marcado em negiito para indicar que no

se qualificou

para participar de qualquer aplicao de (2.1). Para ambos os p~es de P 2, o produto reduzido por

(2.1) :

Em P 1 e P 2 todos os produtos, exceto x, ''S'x/x4 e 'S~x/, foram usados. Portanto, o conjunto dos
implicativos diretos :

Observao 2.10 Note que o teorema de reduo aplicvel a um par de produtos apenas se um
dos produtos.contm xi e o outro, um x/, e todos os outros literais so iguais. Ess~ observao uti-

A cartilha da lgica

101

lizada no algoritmo de Quine-McCluskey, descrito no Procedimento 2.1, que uma sistematizao


do procedimento mostrado no Exemplo 2.21.
~ .

1\ . .

' .

Procedimento 2.1 Algoritmo de Quine-McCluskey.


1. Representar todo mintenn
m1m2...m,,.

xFl xf2 ... x:n

da forma normal disjuntiva pelo nmero binrio

2. i ~ n. Dividir o conjunto dos nmeros binrios em &rupos:

Gb. G~ ...., G~ atribuindo o

nmero contendo k Is ao grupo G~ .


3. Comparar todo nmero no grupo

Gt com todo nmero no grupo G~+ 1 ,para k =O, l,. ..,n- 1.

Aplicar resultado ax EB ax' = a sempre que possvel, isto , sempre que os dgitos comparados

forem idnticos, exceto por um nico dgito, que ocupa uma determinada posio.
Quando o resultado for aplicvel:

3.i marcar am~os os nmeros comparados;


3.2 gerar um novo nmero pegando o nmero em
eni que este difere do outro por um hfen;

Gk e substituindo o zero na posio

3.3 colocar o novo nmero formado no grupo G~-J caso esse grupo ainda no eontenha
o nmero cm questo.
4. i

~i

- 1. Se mais do que um grupo no for vazio, retorne ao Passo 3.

5. Pare. Os nmeros no marcados em todos os grupos representam o cmjunto dos implicativos


diretos.

Exemplo 2.22 Aplicao do algoritmo Quine-McCluskey forma normal definida pelo conjunto .

de miJ,iterms n,Un_.4, min64, min 104, min 11 4, min 1/ , min 1/ , cujas representaes binrias so, respectivamente: 0001, 0110, 1010, 1011, 1110, 1111.
A Tabela 2.17 mostra o funcionamento do algoritmo. Os grupos da primeira coluna so G1, Gi,
Gj e G!. O algoritmo comea comparando o 0001 de G1 com o O11 O de G~. Como esses nmeros
diferem em trs posies, o resultado (2.1) no se aplica. A seguir, so comparados 0001 com
1010. Novamente, o (2.1) no se aplica, e as possveis comparaes entre os dois primeiros grupos
terminam.
A seguir, so realizadas as comparaes entre os nmeros dos grupos Gi e Gj. O resultado (2.1)
no se aplica ao par O11 O e 1O11, mas se aplica ao par O11 O e 111 O, uma vez que diferem apenas
no primeiro dgito. Ambos os nmeros, O11 e 1O11, so marcados (jl.ag passa a ser 1), e o nmero
O11 O alterado, gerando o novo nmero_ 11 O, que introduzido na segunda coluna de nmeros da
tabela, como parte do grupo G~.
A seguir, 1010 comparado com 1011e1110 na seqncia. O resultado (2.1) aplicvel em
ambas as comparaes; ambos os nmeros so marcados, e os nmeros 1Ol _ e l_ I O so introduzidos na segunda coluna de nmeros da tabela. As comparaes entre os elementos de G~ e de Gj
terminaram, e os.'nmeros llO, lOL . ~ 1_10, criados a partir das comparaes:bem-sucedidas,
-
.Jf-...~~"'
"' ,J P'- l:
.

1 .. J\.1'1

102

EdUFSCar-Apont4mmtos

formam o grupo G~. Os outros dois nmeros na segunda coluna de nmeros, que definem G~, so
os resultados das comparaes de 1O11 com 1111 e de 111 Ocom 1111, respectivamente.
O Passo 4 ento executado - como existem dois grupos de nmeros na segunda coluna de
nmeros da tabela,.o Passo 3 volta a ser realizado. Entre as seis possveis comparaes dos trs nmeros em G~ com os dois nmeros de G~, o resultado (2.1) aplicvel aos pares:

1. 1O1 _e 111 _, que provoca a marcao de ambos os nmeros e a criao do nmero 1_1_ na
terceira coluna de nmeros da tabela (grupo GD e
2. 1_1 Oe l _ 11, que provoca a marcao de ambos os nmeros, mas no a incluso de l _ l _ na
terceira coluna de nmeros da tabela (grupo GD, uma vez que esse padro j se encontra l.
Uma vez que a terceira coluna contm apenas um grupo G~, o algoritmo pra. Os nmeros no
marcados so: 0001 em Gt, _110 em G~ e l_l_ em G~. Os implicativos diretos representados por
esses nmeros so x 1 'x,_'~'x4 , Xix3x4 ' e x1x3 respectivamente.
. Tabela 2.17 Trace do Quine-McCluskey para uma.frmula representada pelos minterms min 14, min64, min104,

4
mmll 'mm,4 'mml5 .

Grupos
(i = 4)

Flag

Grupos
(i = 3)

Flag

Gt

ooor

G~

0110
1010

1
1

G~

- 110
101
1 10

o:

1011
1110

1
1

Gi

1_11
111
-

G:

1111

Grupos

Flag

(i = 2)

1
1

G~

l_l~

1
1

Exemplo 2.23 Na Tabela 2.18 est o trace da aplicao do algoritmo Quine-Mcuskey forma
normal definida pelo conjunto de 16 minterms: ~5 , min, 5, ~5 , min/,
s s s s s s s s s

mm1s '~o ' mm21 ' ~4 ' ~s ' mm26 ' ~1 ~ ~a ' mm29

min/, min,65, mini/,

A cartilha da lgica . 103

Tabela 2.18 Trace do Quine-McCluskey para uma frmula representada por 16 minterms ..

Grupos

Flag

(i = 5)

Grupos

Flag

(i=4)

Grupos

Flag

(i = 3)

Grupos

Flag

_,

(i =2)

7
.,,

ag

Gi

00000

00001
00010
01000
10000

1
1
1

G~

G~

. .

Gi

~.

G~

10101

1rno1

11010
11100

o-
000

- 0000

o 001

_0001
_0010
0100
- 1000
1000
100 o
10_00
1000

1
1
1

- 1001

1
1
1

10_01
1 001
1_010

01001 1
10001 1
10010 1
10100 . 1
11000 1

0000

G~

G~

----

G~

1
1

--

__001
- 100_
10_0_
1 00

1
1
1

G~

--00-

G~

1--

..

G31

oo

00

01

1_10_

llO
_ ll_D_;_

1
1

1010_

1 100
1100

no~~ -

11 00

1 101
110 1
11_01
1101 1110

G~

o-

-;

:.;

1
.
P

1
1

1
1

..

104

EdUFSCar -Apont4mmtos

Tabela 2.18 Continuao...

Grupos

Flag

(i = 5)
G~

11011

11101

Grupos
(i = 4)

Flag

Grupos

(i = 3)

Flag

Grupos

(i = 2)

Flag

Aps os implicativos diretos terem sido encontrados, gerada a soma minimal dos produtos, via
construo da tabela de cobertura. Constri-se uma tabela em que as linhas correspondem aos min-

tenns da forma normal que foi entrada para o Quine-McCluskey e as colunas, a,os implicativos diretos encontrados. Tanto as linhas quanto as colunas so nomeadas usando representao binria.
Para o preenchimento de determinadas posies da tabela, o seguinte procedimento adotado:
considere um determinado minterm (ocupando linha i) e um determinado implicativo direto (ocupando coluna j). Sem levar em considerao os hfens da representao do implicativo direto,
comparar os dgitos restantes com os correspondentes dgitos na representao do minterm. Se
forem os mesmos, ento o implicativo direto cobre o minterm e o nmero 1 inserido na tabela,
na posio [ij]. Esse procedimento repetido para todos os pares minterms-implicativos diretos.
O resultado, para o Exemplo 2.23 {Tabela 2.18), est mostrado na Tabela 2.19.
Note que, se a. cobre ~ e se ~ cobre

a, ento a. e f3 so equivalentes. A forma normal cobre

todo implicativo direto e, portanto, toda soma de implicativos diretos. Conseqentemente, unia
soma minimal de implicativos diretos que juntos cobrem todos os minterms caracteriza uma som:;l
mjnjrnal de produtos equivalente forma normal. Esse conjunto minimal determinado a partir

da tabela de cobertura, por meio da seleo do menor nmero de colunas, de maneira que, considerando as colunas selecionadas, exista pelo menos um 1 en1 toda linha, e o nmero de literais nos
implicativos diretos das colunas selecionadas o menor possvel para este nmero de colunas.
Se uma linha contm apenas um nico 1, ento o implicativo associado coluna correspondente chamado de implicativo direto essencial. Todo implicativo direto essencial deve comparecer no conjunto minimal. Na Tabela 2.19 quatro implicativos diretos so essenciais: _00_0
(nico 1 na linha 3), 110__ (nico 1 na linha 15), __00_ (nico l na linha 2 e tambm nas linhas
. 4 e 6) e 1__O_ (nico 1 nas linhas 9, 11, 14 e 16). As correspondentes colunas so 1, 3, 4 e 5
respectivamente. Como os quatro implicativos diretos essenciais cobrem toda a forma normal,
x2 'x3'x5' EB x 1x2x.j' EB x 3 'x4' EB x 1x4 ' a soma minimal de produtos equivalente forma normal.

A cartilha da lgica . . 1os

Tabela 2.19 Tabela de cobertura para o Exemplo 2.23 com os implicativos diretos essenciais assinalados

com a flecha.

-!00
1

2
3
M

E
R
M

00000
00001
00010
01000

-!-

o l_O_O

llO

-!-!--00- 1 o

~":.

}:)

~.

.,.

~:{

1
1

10000
01001
10001

10010
9 10100
10 11000
ll 10101
12 11001
13 11010
14 11100
15 11011
16 11101

,.

1
1

1
1

1
1

1
1

1
1

Geralmente, a determinao da soma minimal de produtos no simples. Alguns minterms


podem no ser cobertos por qualquer dos implicativos diretos essenciais. A forma minimal, ento,
deve conter pelo menos um implicativo direto adicional aos implicativos diretos essenciais.
Pode tambm acontecer de nenhum implicativo direto ser essencial (como mostra a Tabela
2.20); nesse caso, o problema de minimizao tem, em geral, mais de uma soluo. Nos casos
mais simples a soluo pode ser encontrada por inspeo. fcil ver na Tabela 2.20 que x, 'x2'x3' EB

x1x./x4' E9 x/XiX4 EB X 1 Xi~ uma possvel soluo do problema.

..... ..
~

106

EdUFSCar -Apontamentos

Tabela 2.20 Tabela de cobertura com ausncia de implicativos diretos essenciais.

0000

0001

1000

0101

1010

0111

1110

1111

T
E
R

- 000
1
1

0_01

10

01 1

1 10

- 111

111

1
1

1
..

1
1

Exemplo 2.24 Considere uma frmula booleana definida pelo conjunto de mintenns min 14, min/,
4 A -r b 1 2 21
4, ~
4, mm

4, mm

4, mm

, mm,

.
d e Quine,;.
.
mm
.la e a '.
mostra o uso d o a1gontmo

6
11

12

13

McCluskey, cujas representaes binrias dos minterms so, respectivamente: 0001, 0100, 0110,
1001, 1011, 1100, 1101e1111.
Tabela 2.21 Trace do Quine-McCluskey para a frmula representada pelos mintenns min 14, min/, min64,
4.

4.

4;

4.

m~ ' mm11 min,2 Dl1n13 mm1s

Grupos

Flag

(i = 4)

G~

G~

Gj

G!

0001

0100

0110

1001

1100

1011

1101

1111

Grupos

Flag

(i = 3)

G~

Grupos

Flag

(i ~ 2)

- 001
01_0

- 100

G~

10 1

1_01

110_

G~

1_11

11 1

G~

A cartilha da lgica

107

Os implicativos diretos so as expresses que no tiveram suas "ftags", no caso, as expresses:

Xi'x,'x4 , x 1'x2x4', XiX3'x4', X1XiX,' e x 1x4. A Tabela 2.22 a tabela de cobertura, para evidenciar os
implicativos diretos essenciais e, assim, construir as FND minimais.

Tabela 2.22 Tabela de cobertura, para evidenciar os implicativos diretos essenciais.

_001
M
,I
N
T

E
R
M

0001
0100
0110

1001
1100
1011

01
1

o - 100

110

....! '

f~ ... 'a"~.

1
1

,.

1. ..

_}

1101
1111

Como visto anteriormente, para o preenchimento da tabela de cobertura o procedimento : seni,:'


levar em considerao os hfens na representao dos implicativos diretos, compare o restnte dos:
dgitos com os correspondentes dgitos do m.intenn. Se os dgitos coincidirem, ento o implicativo
direto cobre o minterm e um 1 colocado na inters.eco da linha e coluna relativas a ambos. Esse
processo repetido par~ todo par de mintenn-implicativo direto. Note que os essenciais so: _001
(sem sua incluso o minterm 0001 no fica coberto), 01_0 (sem sua incluso o mintenn 0110 no
fica coberto) e l_l (sem sua incluso os minterms 1O11 e 111 no ficam cobertos). Com a incluso
.

'

dos trs essenciais, ficam cobertos todos os minterms, com exceo do 1100. Portanto, um implicativo direto precisa ser includo para a cobertura desse minterm; existem duas opes: o _ l 00 ou

o 110_, o que d origem a duas possveis FND minimais: x2'x.;,'x4 x2 'x3x4' x1x4 x2x3'x4' ou
II

x2 X3 X4

fT"I
'U7

IT\
1
'S1X3X4llT\ xlx4' 'U7
X1'S~
l;J:1

Exemplo 2.25 Considere uma frmula booleana definida pelo conjunto de minterms min04, min44,
4
4
4, mm
"
4, ~
4 , mm
: 4 , m.tI\
4, nun

4, mm

4 , mm

mm
14 , mm
15 . A ""J.abela 2 .23 mostra o uso do a15

11

10

goritmo de Quine-Mcquskey, cujas representaes binrias dos minterms so, respectivamente:

0000,0100,0101,0110,0111, 1000, 1001, 1010, 1011, 1110, 1111.

"{ .."; ;: t

108

EdUFSC~r -Apontamentos

Tabela 2.23 Trace do Quine-McCluskey para a funo representada pelos minterms min04,
4
'4
4
4.
4.
4.
4.
4
mm
, ~ , 1Illilg , ~ , mm , mm 11 , mm 14 , mm 15
6
10

Grupos

Flag

(i =4)

G~

0000

Grupos
(i = 3)

0100

1000

Gi

G~

o:

010

100_

OI 1

01

011

0110

- 110

1001

10 1

1010

1
1.

1011

1110

1111

(i = 2)

'

0101

0111

Flag

000

10

G~

Grupos

o 00

G~

..

G~

Flag

min/, min/,

G~

101

G~

1 10

1 .

- 111

1 11

lll -

G~

01--

Gi

- 11

10

'

1 1

'

Os implicativos diretos so as expr:esses que no tiveram suas ''flags" L No caso, so as expresses x, 'x3'x4', x,_'x3 'x4', x1'x,_, x1x,_', x,_x3 e x 1x3 correspondentes aos padres: 0_ 00, _ 000; Ol __,
10__, _ ll _e 1_1 _. A Tabela224 a tabela de cobertura, para ~videnciar os implicativos diretos
essenciais e, assim, construir as FND minimais.
Analisando a Tabela 2.24, note que os essenciais so: 01 __ (sem sua incluso o minterm 0101
no fica coberto) e o 10__ (sem sua incluso o minterm 1001 no fica coberto). Com a incluso
dos dois essenciais, ficam cobertos apenas oito minterms dos 11 existentes. Existem vrias possibilidades para a cobertura dos trs restantes e, em razo desse fato, existem 4 possveis fnd minimais,
que so, respectivamente:

A cartilha da lgica

2. x1'>s EB x1>s' ffi

109

"2x3 ffi >s'>s'x4'

3. X1'>s e X1>s' e X1"3 e X/"3'X4 '

.~ ,

Tabela 2.24 Tabela de cobertura, para evidenciar implicativos diretos essenciais

M
I
N
T
E

o 00

000

0000

0100

1000

OI

10

0110

1001

1010

0111

1011

1 1

0101

11

1
1

1110

1111

2.4.3 Mapas de Karnaugh


Um mapa de Karnaugh pode ser genericamente definido como uma disposio ordenada de posies com atribuies, tais que a diferena entre quaisquer duas posies adjacentes representa
uma mudana no valor de apenas uma varivel. O mapa deve conter uma clula para cada possvel
combinao de variveis.
Um mapa para 2 variveis deve conter 4 clulas, uma vez que existem 22 combinaes diferentes dos possveis valores das 2 variveis. Para 3 variveis, 8 clulas e para n variveis, 2n clulas.
A Figura 2.3 mostra trs maneiras diferentes de definir cada clula de uma frmula booleana com
3 v~veis (8 clulas), e a Figura 2.4 mostra duas das representaes para uma frmula booleana
com 4 variveis. Para simplificar a notao, em vez de as variveis booleanas serem referenciadas
como x1, x2, , xn, como tem sido feitq at esse ponto, elas sero notadas com as letras maisculas:
A, B, C... para simplificar a construo do mapa.

110

EdUFSCar-Apont4mmtos

11

10

A'B'C' A!BC'

ABC'

AB'C'

A'BC

ABC

AB'C

11

10

110
111

100
101

00

i.o
1

AB

A'B'C

,,L ~1

!.

AB

o
1

00

01

000
001

010
.. 011
AB

00

01

11

10

Figura 2.3 Trs maneiras diferentes de definir um mapa de Kamaugh para uma frmula booleana com trs
variveis (A. B e C) ..

AB

CD

00

01

11

10

00
01

12

13

11

15

11

10

14

10

01

11

10

00 0000

0100

01

0101
0111
0110

1100
1101

1000
1001

1111

1011

1110

1010

AB

00

CD

11

10

0001
0011
0010

Figura 2;4 Duas maneiras diferentes de definir um niapa de Kamaugh para uma frmula booleana com
quatro variveis.

A cartilha da lgica

111

Qualquer uma das representaes vlida e sua adoo depende da preferncia do usurio. O
processo de minimizao usando o mapa fundamentado no reconhecimento de padres bsicos.
A presena de Is em clulas adjacentes identifica imediatamente a presena de varivis reduri,,..

dalltes. A Figura 2.5 ilustra alguns exemplos de minimizao em um mapa com 3 variyeis. N~ ,_
~

que o agrupamento de 2 clulas e!imina ma varivel O mapa construdo de tal maneira queas
extremidades podem ser consideradas ..a<ljacentes.

e oo o

B 00

c.

01

11

A'BC' ABC'= BC'

A'B'C $A'BC = A'C

CB 00

01

01

11

~~l--~4-::::::::::=::F=:::::::::.--1

_.,

A'B'C A'B'C' = A'B'

ABC' AB'C' =AC'

01

11

01

11

A'B'C' ffi AB'C' = B'C'

11'

A'B'C AB'C = B'C

10

A'B'C' A'BC' A'B'C =


A'C' A'B'

A'BC' ffi ABC'$ AB'C =


B'C' AC'

Figub 2.5 Exemplos de minimizao em frmulas booleanas com trs variveis'.

- 1 .

'-'

.'

112

EdUFSCar -Apontamentos

A F~gura 2.6 ilustra uma frmula booleana, cuja representao ocupa apenas uma clula de um
mapa com 4 variveis. As Figuras 2. 7 e 2.8 ilustram o agrupamento de duas clulas em um mapa
com 4 variveis, e a Figura 2.9 ilustra o agrupamento de 4 clulas em um mapa com 4 variveis.

e DB

00

11

01

10

00

~
00

01

01

11

11

10

10

01

11

111

A'BC'D'

ABCD

Figura 2.6 Representao de frmula que ocupa apenas Um.a Clula de um mapa com 4 variveis.

e DB

00

01

11

Jil_

00
/1\

01

~lj_

11

e DB

00

01

00

11

10_

01

11
.10

10

AB'C'D E9 AB'CD =
AB'D

A'B'C'D' E9 A'BC'D' =
A'C'D'

C B 00
D

01

11

OI

11

00
01

01

11

11

10

10
A'B'C'D ffi AB'C'D =
B'C'D

1-------------+----+
A'B'C'D' E9 A'B'CD' =
A'B'D'

Figura 2. 7 Exemplos de minimizao de frmulas que ocupam 2 clulas de um mapa com 4 variveis.

A cartilha da lgica

e DB

01

00

01

11

10

00
01

,, .,

.>tf~.-~

O)

11
+--~---~-+-~~+--~~

10

11

113

1::>

10 .
ABC'D' e ABCD' =
ABD'

A'BCD e ABCD =
BCD

Figura 2.8 Exemplos de minimizao de frmulas que ocupam 2 clulas de um mapa com 4 variveis.

01
1

11
1

l:.~\

A'BC'D' ta ABC'D' ta A'BCD' e ABCD'=


@
BC'D'
BCD'=
=BD'

01
11

10

10

Figra 2.9 Exemplo de ~hiimiz.ao de frmula que ocupa 4 clulas de um mapa com 4 variveis .

.-

3. A LGICA DE PREDICADOS
Conforme visto no Captulo 1, a Lgica Proposicional um formalismo interessante, mas no mui'
to expressivo, que, em muitas situaes, insuficiente para representar o conbeciment9 a respeito
de problemas e suas solues. A Lgica de Predicados bem mais expressiva e; conseqentemente; .
bem mais complexa. Por ser mais abrangente e geral, a Lgica de Predicados , uma formalizao
adequada para a representao de muitas situaes ou problemas para os quais'no existe um tratamento conveniente por meio da Lgica Proposicional. A Lgica de Predicados ~tambm conhecida
como Lgica de Primeira Ordem ou Clculo de Predicados.
:

3.1 CONCEITOS BSICOS


Definio 3.1 Uma teoria de primeira ordem t consiste em:
1. um alfabeto;

2. uma linguagem de primeira ordem;


3. um conj\Dlto de axiomas; e
4. um conjWlto de regras de inferncia.
A linguagem de.primeira ordem consiste em frmulas bem-formadas da teoria que podem ser
comtrudas a partir dos smbolos do alfabeto. Os axiomas so um subconjurito especfico de frmulas bem-formadas. Os axiomas e regras de inferncia so usados para depvar os teoremas da
teoria. A seguir, so apresentadas sete classes de smbolos que definem um alfabeto de primeira
ordem. Algumas convenes de notao adotadas para essas classes, bem como alguns exemplos
so apresentados.
Definio 3.2 Um alfabeto de primeira ordem consiste em sete classes de sn.bolos:

(1) Variveis: representadas por uma letra maiscula seguida por uma ca~eia de letras minsculas ou maisculas ou dgitos. Exemplo: X, Xx, YY, Xy, Maria, Z13MN.
(2) Constantes: representadas por letras minsculas ou dgitos, tais como: mar, azul, 3.
(3) Funes n-rias: um smbolo de funo n-ria uma letra minscula seguida por uma
cadeia de letras minsculas ou maisculas ou dgitos, agregado a um conjunto de argumentos, tais como: f(Z), f(a), f2(X,y), mae(X,ana). Para enfatizar a' aridade (nmero de
argumentos) de um smbolo funcional usada a notao smbolo/aridade, referenciada
como funtor. Por exemplo, mae/2.
(4) Predicados n-rios: um smbolo de predicado n-rio uma letra minscula seguida por
uma cadeia de letras minsculas ou maisculas ou dgitos, agregado a um conjunto de

A cartilha da lgica

115

argumentos, tais como: f(Z), f(a), f2(X,y), mae(X,ana). Para enfatizar a aridade (nmero
de argumentos) de um smbolo funcional usada a notao smbolo/aridade, r~ferenciada

comofuntor. Por exemplo, f2/2. Dois smbolos de predicados so considerado~!' especi~is:


,.:r.::,:
os smbolos verdade e falso, ambos com aridade O. Note que funes e predicados t~t~
mesma simbologia.

(5) Conectivos:-, (negao), A

.
(conjuno),,).l.~.disjuno), ~(implicao} e ~.(dupla

~':':'t.,

impli-

cao).
( 6) Quantificadores: V (universal) e 3 (existencial).

(7) Smbolos de pontuao: ( ) e,


Observao 3.1 As classes (5), (6) e (7) da Definio 3.2 so.constantes-para todo-0 alfabeto, enquanto as classes (1), (2), (3) e (4) variam de alfabeto para alfabeto. Para qualquer alfabeto, apenas
as classes (2) e (3) podem ser vazias.
Observao 3.2 Embora na Definio 3.2 constantes tenham sido definidas como uma classe, is~p
no necessrio. Freqentemente conveniente abordar constantes como smbolos funcionais COI.Jl.
aridade O; dessa maneira, o conjunto de constantes uma subclasse do conjunto de smbolos funcionais. Smbolos predicados de.aridade Odesernpellham um-papel especial: eles podem ser usados
da mesma maneira que as proposies atmicas so usadas na Lgica Proposicional. Uma vez que .
conectivos tambm podem ser usados da mesma maneira que so usados na Lgica Proposicional,
a Lgica de Predicados uma generalizao da Lgica Proposicional. A estrutura da Lgica Proposicional est imersa na estrutura da Lgica de Predicados. 1
Observao 3.3 Como mencionada na caracterizao sinttica de predicados, nenhuma distino
(sinttica) imposta entre smbolos funcionais e smbolos predicados. Fica claro, no contexto, se
um determinado smbolo funcional ou predicado. importante notar, tambm, que o conjunto de
smbolos funcionais e o conjunto de smbolos predicados podem conter smbolos idnticos, com
mesma aridade ou comaridade diferente: Em geral~i>rocurar-se"" usar uma-sintaxe similar quela
da linguagem de programao Prolog.
Definio 3.3 Termos so definidos recursivamente como:
1. uma constante termo;

,, 2': uma varivel termo;


3. se f um funtor (ou seja, um smbolo funcional com aridade n) e t 1, t 2,

... ,

tn so termos,

ento f(tI' ~' ... , tj um termo;


1 Algumas das

cop~enes adotadas pt!l a ~gica Proposicional sero mantidas e lembradas}1iirtd fotriecessrio.

116

EdUFSCar -Apontamentos

4. Todos os termos so criados usando as regras anteriores.

Exemplo 3.1 Considere um alfabeto A cujo conjunto de conectivos, quantificadores e smbolos de


pontuao o da Defuiio 3.2 e que tenha conjuntos de:
constantes: {a,b,c};
variveis: {Xl,X2,Y};
smbolos funcionais: {fi'I,g/3}; e
smbolos predicados: {p/2, q/l, r/2}.
A Tabela 3.1 mostra exemplos de expresses que so e que no so termos, considerando o al-

fabeto A definido anteriormente.


Tabela 3.1 Exemplos de termos e no-termos considerando o alfabeto A.

So termos

Comentrios

a uma constante do alfabeto e, conseqentemente, um termo.

XI

XI uma varivel do alfabeto e, conseqentemente, um termo.

f(c)

f(f{Xl))

f um smbolo funcional com aridade 1, e seu argl.tmento (constante e) um termo.

f uni smbolo funcional com aridade 1, e seu argumento, f{Xl ),


um termo, uma vez que um smbolo funcional (f) cujo argumento um termo, dado que a varivel X 1.
g um smbolo funcional com aridade 3 e cada

uin de seus. trs

argumentos so termos: XI um termo porque uma varivel; a


g{Xl,a,f(f(f(a))))

um termo porque uma constante; f(f(f(a))) um termo porque


f um smbolo funcional; f(f(a)) um termo uma vez que f um
smbolo funcional; f(a) um termo uma vez que f um smbolo
funcional e a unia constante.

No so termos

Comentrios

f(a,b)

f um smbolo funcional com aridade I, e no 2.

p(a,b)

Smbolos predicados no so usados para a construo de termos.

av b

Conectivos no podem ser usados para a construo de termos.

A cartilha da lgica

117

Tabela 3.1 Continuao...

No so termos

Comentrios

f(h(a))

f smbolo funcional com aridade 1, mas seu argumento, h(a), deveria ser um termo, para que f(h(a)) fosse considerado um temio.
O smbolo h;entretanto, no foi definido como smbolo funcional
do alfabeto considerado.

f(-ia)

f smbolo funcional com aridade l, mas ~ no uma constante, uma vez que envolve a negao.

g(b,c,d)

g smbolo :funcional e dois de seus argumentos so constantes


do alfabeto. O smbolo d, entretanto, no um termo neste alfabeto, dado que no constante, varivel ou smbolo ftmcional
aplicado ao termo.

Exemplo 3.2 Considere um alfabeto A cujo conjunto de conectivos, quantificadores e smbolos.de

pontuao o da Definio 3.2 e suponha que a varivel X e a constante 1 sejam ambos termos
~
....
'
A. Se soma for um smbolo :funcional de aridade 2 em A, ento so termos:
~::
~.J&:

soma(X,l);
soma(soma(X,1),1);
soma(X~soma(X,1));
,' soma(soma(X, 1),soma(soma( l ,X), 1)), etc... .
:..;

Exemplo 3.3 Como formalmente ser definido na Definio 3.9, frmulas atmicas so bem-for-

madas e podem ser combinadas por meio de conectivos lgicos, formando novas proposies .
._.. (a) Considete; por exemplo, que rnae/2 um smbolo predicado da linguagem, e que ana e maria so dois smbolos constantes (ou seja, so termos). A frmula atmica mae(ana,maria)
pode ser usada para expressar que ana me de maria e,.ento,.pode ser par.te de.uma frmula composta, tal como:

mae(ana, maria) ~ -imae(maria,ana)


Se o smbolo predicado filha/2 for tambm definido como parte do alfabeto, outra fnnula bem-

'

formada poderia ser:


mae(ana, maria)~ filha(maria,ana}
(b) Considere, por exemplo, que cacborro/l, tem/2, cor/2 sejam smbolos predicados da lin-

guagem ~ que cariri, cau<ja e.rp~om sejam trs smbolos constantes. A,s fpnu]as at;:

' :- _.:'. -\;'

.,

118

EdUFSCar ~Apontamentos

micas
cachorro(cariri), tem(cariri,cauda)
e cor(cariri,mrrom)
podem ser combinadas na
.
.
.
.
.

frmula composta:
cachorro(cariri) "tem(cariri,cauda) " cor(cariri,marrom)
para exprimir que um cachorro identificado como cariri tem cauda e tem cor marrom.
Definio 3.4 Se p um smbolo predicado n-rio e t 1, i' .. ~, tn so termos, ento p(t 1, 1i, ... , tn) um

tomo ou frmula atmica. Frmulas.atmicas so comumente chamadas de predicados.


Exemplo 3.4 As variveis X, Y e a constante 1 so termos., Se.. soma/3 foi definido como um smbolo predicado, ento soma(X,l,Y) um tmo.
Observao 3.4 Observe que:
constantes representam objetos em um domnio;
variveis so usadas para fazer abstraes sobre constantes e termos;
termos representam objetos em um domnio;
smbolos funcionais permitem a criao de novos termos a partir dos tertnos existentes;
smbolos predicados permitem o esta~lecimento de assertivas a respeito de termos, ou seja,

a respeito de objetos em um domnio.


Antes de definir formalmente o conceito de frmula, importante distinguir entre variveis
livres e variveis ligadas.
Definio 3.5

o escopo de um quantificador ocorrendo em uma frmula a

a frmula qual o

quantificador se aplica.
\.

Exemplo 3.5

(a) O escopo do quantificador 'v' em ('v'X a) a. O escopo do quantificador 3 em (3X a) a.


(b) O escopo do quantificador 'v' em ('v'X (p(X,Y) ~ q(X))) a frmula (p(X,Y)

q(X)).

(e) O escopo do quantificador 3 em (3X('v'Y(p(X,Y))" q(X))) a frmula ('v'Y(p(X,Y)) /\ q(X)).

Nessa mesma frmula, o escopo do quantificado~ 'v' a frmula (p(X,Y)).


Definio 3.6 A ocorrncia de uma vari~el em uma frmula ligada se e somente se a ocorrncia

esti dentro do escopo do quantificador ou, ento, . a ocorrncia que segue imediatamente o .quantificador. A ocorrncia de uma varivel em uma frmula livre se e somente se a ocorrncia da
varivel no ~or ligada.

A cartilha da lgica

119

Definio 3.7 Uma varivel livre em uma frmula se pelo menos uma ocorrncia da varivel for
livre na frm~a. Uma varivel ligada em uma frmula se pelo menos uma ocorrncia da varivel
,,
for ligada.

1{

Definio 3.8 Uma frmula fechada uma frmula que no tem ocorrncia livre de qualquer v'-rivel.
Exemplo 3.6
(a) Na frmula
(3X p(X~Y)) V q(X)

as duas primeiras ocorrncias de X so ligadas e a terceira ocorrncia livre, uma vez que o escopo.
de 3X p(X,Y). A varivel Y livre na fnnula.
(b) Na frmula
3X(p(X,Y) V q(X))

as trs ocorrncias de X so ligadas, uma.vez.que o escopo de 3X {p(X,Y). v q(X)).A varivel Y


livre na frmula.

(e) Na frmula
('\iX p(X,Y))

uma vez que ambas as ocorrncias de X so ligadas, a varivel X ligada. A varivel Y, entretanto,
livre, uma vez que a nica ocorrncia de Y livre.

(d) Na fnnula
,

(VX p(X,Y}) " (VY~}

a varivel Y livre e ligada. A primeira ocorrncia livre e as duas outras, ligadas.

Defini,o 3~9 Umafrmula bem-jormada-wff- definida recursivamente como:


(1) os smbolos especiais verdade, falso e smbolos predi~ados de aridade Oso frmulas;
(2)

um tomo uma frmula;

(3) se a. e~ forem frmulas, ento so frmulas:


.

..

120

EdUFSCar -Apontamentos

(a)
(-,a)
(a A~)

(a V~)
(a~

f3)

(a~

f3)

(-4) se a. for uma frmula e X for uma varivel livre em a., ento ('VX a.) e (3X a.) so frmulas;
(5) frmulas so geradas apenas por meio de um nmero finito de aplicaes de (1), (2), (3) e (4).
Exemplo 3. 7 Considerando o alfabeto A do Exemplo 3 .1, a Tabela 3 .2 mostra exemplos de frmulas e no-frmulas.
Tabela 3.2 Exemplos de frmulas e no-frmulas considerando o alfabeto A.

So frmulas
p(a,a)
q(Y)

Comentrios
a uma constante do alfabeto e, conseqentemente, um termo, e p um smbolo predicado de aridade 3.
Y uma varivel do alfabeto e, conseqentemente, um termo, e q um siibolo predicado de aridade 1.

f um smbolo funcional com aridade 1, e seu argumento


r(b,f(c))

(constante c) um termo. A letra b uma constante no alfabeto


e, portanto, um termo. A expresso dada, portanto, uma
frmula vlida.

..

(r(b,f(c)) A p(a,a))

As linhas 1 e 3 dessa tabela mostram que r(b,f(c)) e p(a,a) so


frmulas vlidas e, conseqentemente, sua conjuno tambm uma frmula vlida.
f(Xl) um termo e q um smbolo predicado de aridade 1. Por-

(-,3Xl (q(f(Xl))))

tanto, q(flXl)) uma frmula vlida Como XI ocorre livre na


frmula, ela quantificada existencialmente tambm uma frmula. Sua negao, conseqentemente, tambm uma frmula.
Como visto na Tabela 3.1, g(Xl,a,f(f(f(a)))) um termo vli-

q(g(Xl ,a,f(f(f(a)))))

do. Como q um smbolo predicado de aridade 1, a expresso


uma frmula vlida.

A cartilha da lgica

121

Tabela 3.2 Continuao...

No so frmulas

(V'a p(a,a))

Comentrios
a no uma varivel.

a, b, c so constantes e, conseqentemente, termos. Como r


um smbolo predicado de aridade :2, ~"eXpresso no uma

r(a,b,c)

frmula valida.
q(c) no um termo, e sim uma frmula; conseqentemente,
no pode ser usado como argumento de um smbolo predica-

p(a,q(c))

do; a expresso no uma frmula vlida.


(q(f(b))

g(a,Y,X2)) g(a,Y,X2) no uma frmula, mas sim um termo; conseqentemente, a expresso toda no vlida.

Definio 3.10 Um termo ground uni termo que no .contm variveis; de maneira semelhante,
uma frmula ground uma frmula que no contm variveis.

fff<

Exemplo 3.8

(a) . Consider~ o alfabeto A do Exemplo 3.1. Os termos g(a,b,a), g(g(a,b,a),b,c), f(a), f(g(a,b,c))
so todos grourz4. J .<?S termos g(Xl,a,b), f(X2), g(f(Xl),a,b) no so ground.

(b) Considerando o mesmo alfabeto, as frmulas q(g(c,a,f(f(f(a))))), q(a), p(b,a) so ground;j


a frmula q(g(Xl,a,f(f(f(a))))) no ground.

Definio 3.11 A linguagem de primeira ordem A. dada por um alfabeto o conjunto de todas as
frmulas bem-formadas que podem ser construdas a partir dos smbolos do alfabeto.

Definio 3.12 Se a for uma frmula, ento 'v'(a) denota ofechamento universal de a, que a
frmula fechada obtida pela adio de um quantificador universal associa"do a cada varivel que
ocorre livre em

a. De maneira semelhante, 3(a) denota ofechamento existencial de a, obtido pela

adio de um quantificado! existencial associado a cada varivel que ocorre livre em a.


Exemplo 3.9 Considere a frmula a: ('v'X p(X,Y)). Como a varivel Y ocorre livre em a, o fechamento universal de a a frmula 'v'Y('v'X p(X,Y)) e o fechamento existencial de a a frmula
3Y('v'X p(X,Y)).

Defirtio 3.13 Um literal um tomo ou a negao de um tomo. Um literal positivo um tomo . .


Um literal negativo a negao do tomo.

Observao 3.5 importante' ~bservar que os literais L e -iL so ditos complementares um do


outro e formam, ,em qualquer ordem, um par complementar.

122

EdUFSCar--:- Apontamentos

Definio 3.14 Uma clusula uma frmula na forma:


\7'X 1~ 'v'Xr \7'XP(L 1 v L2 v L3 v ... v Lq)
na qual cada Li (1 si s q) um literal, e X1, ~, . ,XP so todas as variveis que ocorrem em L 1,

1 2,

Lq.

Analogamente ao que foi descrito na Seo 1.6.4, uma clusula pode ser representada pelo conjunto finito de seus literais. Uma vez que clusulas so bastante comuns em Programao Lgica,
conveniente adotar uma notao clausal conveniente. Reescrevendo a clusula anterior, identificando os literais positivos dos negativos, tem-.~e:

na qualA 1 ,~, ,Am, B 1, B2, ..., Bn so tomos e XI'~' ... , XP so as variveis que ocorrem nos
tomos. Mudando a notao, pode-se escrever que:

com o significado de:

Aim, na notao clausal, todas as variveis so consideradas universalmente quantificadas. Os


seguintes casos especiais podem acontecer:
1. m > 1 as concluses so indefinidas, ou seja, existe mais do que uma concluso;

2. m =1, n ~O, conhecida como clusula definida;

3. m =O, n =O, conhecida como clusula vazia e representada por ni/.


Exemplo 3.10 Reescrevendo wna clusula:
('v'X(VY('v'Z(p(X,a,b) v-,q(b,Z) v

r(X~Y)

v -.s(Z) V t(X,Z)))))

JJ
'v'XVY'v'Z(p(X,a,b) v -,q(b,Z) v r(X,Y) v -.s(Z) v t(X,Z))

JJ
'v'XVY'v'Z(p(X,a,b) v r(X,Y) v t(X,Z) v -..,q(b,Z) v -.s(Z))

JJ
'v'XVY'v'Z(A 1 v ~ v A3 v B1 v B2) na qual
A 1 = p(X,a,b); ~ = r(X,Y); A3 = t(X,Z); B 1 = q(b,Z); B2 = s(Z) (M=3 & n = 2)

JJ

A cartilha da lgica

123 .

p(X,a,b), r(X,Y), t{X,Z) +-- q(b,Z), s(Z)


significando
p(X,a,b) v r{X,Y) v t(X,Z) +-- q(b,Z)" s(Z)

..

Fit~~

Definio 3.15 Uma clusula definida de programa uma clusula que contm exatamente unf~,
literal positivo. Tem a forma:
A+-- B 1 " B 2 "

cabea

\.

... /\

B11
j

corpo

na qual A, B 1, B 2, , BD so tomos. O literal positivo A chamado de cabea e os tomos B 1, B 2, ... ,


B11 so coletivamente chamados de corpo da clusula definida de programa.
.

Observao 3.6 Apena,s tomos so permitidos no corpo. de clusulas definidas de programa. Em .


Prolog, entretanto, literais da forma not B, tal que B um tomo, so permitidos, e o not interpretado sob a regra de negao-como-falha.
Definio 3.16 Uma clusula de programa uma clusula na forma:
'

na qual A um tomo e cada um dos L"L~, ... , L 11 da forma B ou -,B, e B um tomo.


Definio 3.17 Uma clusula unitria uma clusula na forma:

A+ou seja, uma clusula de programa (ou uma clusula definida de programa) com um corpo vazio.
Em terminologia Prolog, tal clusula denominada/ato ou, ainda, clusula definida incondicional
e simplesmente denotda por A.
Definio 3.18 Uma clusula meta uma 'Clu8Ulaniffonna;

ou seja, uma clusula que no tem cabea. Cada Bi (1 5 i 5 n) chamado de submeta da clusula meta.
Observao' 3.7 Se YI' ... , Y1 so as variveis da clusula meta+-- B 1 "B2 A
clausal uma simplificao de .

' \:/Y 1\:/Y2\:/Y3.... \:/Yr(-,B 1 v-,B2 v ... v-J3)

... A

BD, essa notao

124

EdUFSCar -Apontamentos

ou, equivalentemente,

Definio 3.19 Um conjunto finito de clusulas de programa chamado de programa lgico, e,


conseqentemente, um programa lgico no contm qualquer clusula meta.
Definio 3.20 Em um programa lgico, o conjunto de todas as clusulas de programa com o mes- .

mo predicado p como cabea chamado de definio de p.


Definio 3.21 Uma clusula de Horn uma clusula que ou uma clusula de programa ou uma

clusula meta. Isso significa que uma clusulade Horn contm no mximo um literal positivo.
Observao 3.8 importante lembrar que duas frmulas a e p so equivalentes (a

=J3) se e

somente se os valores-verdade de a e p so os mesmos sob toda interpretao. As equivalncias


bsicas da Lgica Proposicional discutidas no Captulo 1 continuam vlidas em Lgica de Predicados. Alm daqueles, existem pares de frmulas equivalentes contendo quantificadores, que so
apresentados a seguir.
Seja a uma frmula expressa usando a varivel X. Para enfatizar esse fato, a ser notada por
a[X]. Seja puma frmula que no expre~sa usando a varivel X. Os seguintes pares de frmulas
so equivalentes, nos quais Q representa qualquer um dos quantificadores: V ou 3.

(a) (QX a [X]) v p

(QX (a[X] v J3))

(b) (QX a [X]) A p = (QX (a[X]


(e) -.(VX a[X])
(d) -.(3X a[X])

p))

(3X (-.a[X]))
(V'X (-.a[X]))

Prova de (e):
Seja I uma interpretao arbitrria sobre um domnio D.
se -.(VX a[X]) verdade em I, ento (VX a[X]) falso em I. Isto significa que existe um
elemento e em D tal que a[e] falso, isto , -,a[e] verdade em I. Portanto, (3X (-.a[X]))
verdade em I;
se -.(VX a[X]) falso em I, ento.(VX a[X]) verdade em I. Isto significa que a.[X] verdade para todo elemento X em D, isto , -.a[X] falso para todo elemento em D. Portanto,
(3X (-.a [X])) falso em I.
Desde que -.(VX a[X]) e (3X (-.a[X])) sempre assumam o mesmo valor-verdade para toda
interpretao arbitrria, por definio: -.(VX a[X])

=(3X (-.a[X])).

A cartilha da lgica

12s

Considere que a e f3 sejam duas frmulas expressas usando a varivel X e, por essa x:azo, ambas
sero notadas como a[X] e f3[X], respectivamente. As seguintes equivalncias so vlida5:
(e) (V'X a.[X]) /\ (VX f3[X])
(f) (3X a[X]) v (3X f3[X])

= ('v'X (a[X] /\ J3[X]))


= (3X) (a(X] v f3[X])

':' ''

~' ;. .
:~~;"

,.,.

Isto , os quantificadores'\;:/ e 3 podem distribuir-se sobre/\ e.'!7 respectivamente. Entretanto, os


quantificadores '\;:/ e 3 no se distribuem sobre v e A, respectivamente, ou seja:
(g) (V'X a.[X]) v

(~

f3[X]) no equivalente a ('vX (a[X] v f3[X]))

(h) (3X a[X]) /\ (3X J3[X])

no . equivalente a (3X (a.[X]

/\~[X]))

Considere um exemplo de frmulas como em (g) e considere uma interpretao I na qual as


frmulas so avaliadas como segue:
a[l]

a[2]

J3[1]

J3[2]

Pode-se dizer, ento, que (VX a[X]) e (V'X J3fX]) so falsos. Portanto, (\;:/X a.[X]) v('v'X f3[X]),;.::
falso. Por outro lado, a frmula ('v'X(n[X]v~[X])) sempre avaliada verdade .em.!, pois, para:
X= 1 =::> a[l] v
X

~[1]

=verdade

=2 =::> a[2] v ~[2] =verdade

Uma vez que toda varivel ligada em uma frmula pode se~ considerada uma varivel dummy,

toda varivel X pode ser renomeada Z e a frmula (V'X J3[X]) toma-se ('v'Z J3[Z]), isto , (VX J3[X])
= ('v'Z J3[Z]). Suponha que seja escolhida a varivel Z que no aparece em a(X]. Ento,
(a)

(V'X a[X]) v (V'X f3[X])

=(V'X a[X]) v (V'Z) f3[Z] =(V'X(V'Z(a[X] v f3[Z]))).

De maneira similar,
(b)

(3X a[X]) /\ (3X p[X])

=(3X a[X]) /\ (3Z p[Z]) =(3X(3Z(a[X] /\ p[Z]))).

Emgeral, tem-se:
(Q 1X a[X]) v (Q~ f3[X])

=(Q 1X(Q:z2(a[X]v13[Z])))

(Q3X a[X])" (Q4X p[X])

=(Q X(Q Z (a[X]" ~[Z])))


3

126

EdUFSCar-Apontllmmtos

nas quais Q1,'Q2, Q3, Q4 so 'V ou 3 e a varivel Z no com:Parece em a.[X]. Se Q1 = Q2 = 3 e Q3 =

Q4 = 'V, no preciso a renomeao das variveis Xs em (QzX) f3[X] ou (Q4X) f3[X] e pOde-se usar
(f) e (e) diretamente.

3.2 A LGICA DE PREDICADOS COMO LINGUAGEM DE REPRESENTAo oE .

CONHECIMENTO
Esta seo inicialmente apresenta algumas sugestes e diretivas de como abordar o processo de traduo de uma expresso em lngua natural (no caso, portugus) para a linguagem da Lgica de
P1edieados. Na subseo seguinte so apresentados vrios exemplos de traduo de expresses em
portugus para a Lgica de Predicados~

3.2.1 Usando lgica de predicados para representar sentenas em lngua


natural
Algumas sug~stes de traduo de sentenas em lngua naturalpara a Lgica de Predicados discutidas nesta subseo esto fundamentadas nas propostas descritas em Grassmann & Tremblay (1996)
e foram adaptadas notao usada neste material. Considere as seguintes sentenas:
(1) Todos tiram frias de vez em quando.
(2) Todos os cachorros tm cauda.
(3) Algumas pessoasgostam de peixe cru.

As trs sentenas indicam quo freqentemente determinadas situaes acontecem (ou no). Na
Lgica de Predicados, dois quantificadores so utilizados neste contexto: o universal, que relaciona
uma determinada assertiva a todos os indivduos de um certo domnio, e o existencial, que relaciona a assertiva a alguns indivduos do domnio.
Sentenas contendo palavras tais como 'tudo', 'cada' e 'todos' usualmente indicam quantificao universal. Tais assertivas devem ser parafraseadas usando a expressq "para todo X" que,
ento, traduzida para 'VX .
. Para a representao da sentena (1), se a situao 'tiram frias de vez em quando' for representada pelo predicado ferias, ento, ferias(X) significa que X tira frias de vez em quando. A palavra
'todos' indica que a assertiva se.refere a todos os indivduos do domnio considerado, o que leva
representao ('VX ferias(X)).
Considerando a assertiva (2) e que o domnio considerado seja o domnio de animais, ento,
primeiramente, deve-se encontrar o escopo do quantificador universal que, no caso, "se X for
um cachorro, ento X tem uma cauda". Considerando os predicados cachorro e temcauda com

A cartilha da lgica . - 127 .

aridade l, a assertiva (2) pode ser representada em Lgica de Predicados por (V'X (cachorro(X) ~
temcauda(X))). Outra maneira de representar essa assertiva (V'Y (cachorro(Y) --1' temcauda(Y))),
desde que Y seja tambm um smbolo de varivel vlido no alfabeto que est sendo consideradO ..
.

,.. .

J as palavras 'algum', 'alguns' e 'pelo menos um' sugerem quantificao existencial~ deve~do

ser parafraseadas como "existe um X tal que", traduzido por 3X. Portanto, considerando o domfuio

de pessoas e que o predicado p representa 'gostam de peixe cru', a sentena (2) pode ser expressa
em Lgica de Predicados por (3X p(X)).
Os quantificadores V'X e 3X devem ser tratados como se fossem conectivos unrios, com prioridade mais alta do que qualquer conectivo binrio. Em uma situao em que p(X) representa 'X
est vivo' e que q(X) representa 'X est morto\ a representao correta de que tudo ou est vivo
ou est morto (V'X (p(X) v q(X))), e no (V'X (p(X)) v q(X), que significa que tudo est vivo ou
que um determinado elemento do domnio est morto (em razo_da atribuio varivel, parte da
avaliao de uma frmula, vista em XX).
Quantificadores podem aparecer aninhados, como na representao da assertiva "Existe algum
que conhece todo mundo". Suponha que o predicado conhece(X,Y) representa que X conhece~>
A melhor maneira de abordar a representao da assertiva por partes. Informalmente, pode-se
escrever 3X(X conhece todo mundo). A sentena ~x conhece todo mundo" significa que para todo
Y, X aonhece Y, o que pode ser representada por (V'Y conhece(X,Y)). A expresso final : (3X(VY
conhece(X,Y))).
Considere agora a assertiva "Todos tm algum por me". Usando o predicado mae(X,Y) para
repre~entar

que X me de Y, a assertiva "algum me de Y" escrita ?orno (3X(me(X,Y))).

Para representar que todos tm algum por.me, usa-se (V'Y(3X(me(X,Y)))).


Algumas vezes, a quantificao deve ser feita sobre um subconjunto de elementos do domnio.
Suponha que o domnio seja o conjunto de todos os animais e que as assertivas a serem representadas sejam "Todos os cachorros so mamferos" e "Alguns cachorros so marrons". Uma vez que
o quantificador deve se restringir a cachorros, a assertiva pode ser parafraseada como "se X for um
cachorro, ento X illn mamfero", que representada por (T:IY (cachorro(X) ~ mamifero(X))).
Geralmente, a expresso lgica (T:IX (p(X) ~ q(X))) pode ser traduzida como "todos os indivduos
com a propriedade p tm tambm a propriedade q".
Por outro lado, a assertiva "Alguns cachorros so marrons" significa que existem alguns animais
que so cachorros e que so marron5. A assertiva "X cachorro e X marrom" pode ser escrita como
cachto(X) /\ marrom(X) e a assertiva "Existem alguns cachorros marrons" pode ser representada .
como(3X (c~chorro(X) /\ marrom(X))). Geralmente~ a expresso lgica (3X (p(X) /\ q(X))) pode
ser traduzida como."alguns indivduos com a propriedade p tm tambm a propriedade q".
Note, pois, que, se o quantificador .universal deve ser. aplicado apenas a elementos .com uma
uma express9
condidonal deve ser usada para rs:ingk9
:domnio.
determinada pro~riedade,
:'
..

... .
. .

'

,: .-~... ...

128

EdUFSCar -Apontamentos

Por outro lado, s~ o uso do quantificador existencial deve ser restringido, uma conjuno deve ser
usada.
A converso de assertivas que contm a palavra 'apenas', tal como "Apenas cachorros latem",
exige uma reescrita tal como "Late apenas se for cachorro" ou, equivalentemente, "Se late,- ento
cachorro", representada por ('VZ (late(Z) ~ cachorro(Z))).

3.2.2 Exemplos de traduo de sentenas para expresses da lgica de


predicados
Cada exemplo apresentado nesta subseo traz uma sentena
em portugus identificada por um
.
nmero, a sua representao em Lgica de Predicados e comentrios sobre a representao. A simbolizao que segue para um domnio fixado inicialmente.
.

( 1) SENTENA

Ana estudiosa.

LGICA DE PREDICADOS

estudiosa(ana)

Literal (tomo), no qual estudiosa o smbolo predicado, e ana smbolo constante.


(2)

SENTENA

LGICA DE PREDICADOS

Pedro advogado, e Guilherme estudante. advogado(pedro) " estudante(guilhenne)


Fnnnla composta da conjuno de dois tomos. No primeiro, advogado o smbolo predicado e pbdro, o smbolo constante. No segundo, estudante o smbolo predicado e guilhenne, o smbolo constante.
(3)

SENTENA

Maria vai festa ou ao teatro.

LGICA DE PREDICADOS

festa(maria) v teatro(maria)

Frmula composta da disjuno de dois tomos. No primeiro, festa o smbolo predicado


e maria, o smbolo constante. No segundo, teatro o smbolo predicado.
(4)

SENTENA .

Gabriel no programador.

LGICA DE PREDICADOS

-,programador(gabriel)

Literal (tomo negado). O smbolo predicado programador, e gabriel o smbolo constante.


(5) SENTENA

Pedro e Guilherme so primos.

LGICA DE PREDICADOS

primos(pedro,guilherme)

Literal (~omo), no qual primos smbolo predicado, e pedro e guilherme so smbolos


constantes.

A cartilha_ da lgica

(6)

SENTENA

129

LGICA DE PREDICADOS

Maria e Ana no so primas. Maria e Ana


.
.
. .
.
., .
so vizinhas.

......,pnmas(mana,ana) "VJzmhas(mana,ana)

:i?

.
?w. "'
Frmula composta conjuntiva. O primeiro literal tem por smbolo predicado primas, e o '/;~
segundo, vizinhas. Ambos os smbolos so aplicados aos termos mari2 e ana~ que so smbolos constantes.

(7) SENTENA
se a funo fl

LGICA DE PREDICADOS

for diferencivel, ela contnua.

diferenciavel(fl) ~ continua(fl)

Frmula composta condicional, cujos predicados envolvidos so diferenciavel e continua,


e o nico termo empregado a constante fl.

(8)

SENTENA

LGICA DE. PREDICADOS

A funo f2 contnua, mas no diferen-

.,

c1ave.
1

t.

continua(f2) "-,diferenciavel(f2)

..........

~~~~~~~~~~~~~~~~

~~~~~~~~~~~~~~~

Frmula composta conjuntiva, cujos predicados envolvidos so diferenciavel e continua, e


o nico termo empregado a constante f2.

(9)

LGICA DE PREDICADOS

SENTENA

Antonio faltou aula, mas Ana no faltou.

faltou(antonio) /\ ....,faltou(ana)

Frmula composta conjuntiva, cujo nico predicado envolvido faltou, e os termos empregados so as constantes ana e antonio.

( 1O) SENTENA

LGICA DE PREDICADOS

Se Pedro mais alto que Ana, e Ana mais (

(
(p dr
)
dr ))
a1to e o,ana /\ a1to ana,an e
alta que Andr, ento Pedro mais alto que
(p dr
dr )
alto e o,an e
Andr.

Frmula composta condicional, cujo antecedente uma conjuno. O nico smbolo predicado utilizado alto. Trs smbolos constantes foram usados: pedro, ana, andre.
(11)
..
Maria l jornal.

SENTENA

LGICA DE PREDICADOS

. le(maria,jornal).

F)imula atmica, cujo smbolo predicado le e com dois argumentos, que so,os termos
constantes maria e jornal.

..

}~~- .,

130

EdUFSCar-Apontammtos

( 12) SENTENA

- LGJCA DE PREDICADOS

gosta(mae(maria),maria)

A me de Maria gosta de Maria.

Frmula atmica, cujo smbolo predicado gosta. Um dos argumentos o smbo~o funcional mae, com aridade-1. O nico smbolo constante maria,::que. usado tanto como
argumento do smbolo funcional mae quanto do smbolo predicado gosta.
LGicA DE PREDICADOS

(13) SENTENA

A me da me de Maria gosta da me de Ma- gosta(mae(mae(maria)),mae(maria)) A


ria e gosta de Maria.
gosta(mae(mae(maria)),maria)
Frmula composta conjuntiva, cujo smbolo predicado que define os dois tomos envolvidos na frmula.. gosta. No primeiro tomo, o primeiro argumento o smbolo funcional
mae, com aridade 1, cujo argumento o smbolo funcional mae com argumento maria. o
segundo argumento do primeiro. tomo o smbolo funcional mae com argumento maria..
O segundo tomo tem por primeiro argumento o mesmo primeiro argumento do primeiro
tomo e, como seg\lndo argumento, o termo constante maria.
.

( 14) SENTENA
Todos os homens so mortais.

LGICA DE PREDICADOS

('v'X mortal(X))

Frmula quantificada universalmente, cujo nico smbolo predicado usado mortal. Est
subentendido que o domnio o conjunto dos seres humanos. Na eventualidade do domnio ser, por exemplo, seres yivos, a sentena em lngua natural seria: ('v'X (homem(X) ~
mortal(X))).
(15)

SENTENA

Alguns homens so mortais.

LGICA DE PREDICADOS

. (3X mortal(X))

Frmula quantificada existencialmente, cujo nico smbolo predicado usado mortal. Est
subentendido que o domnio o conjunto dos seres humanos. Na eventualidade do domnio ser, por exemplo, seres vivos, a sentena em lngua natural seria: (3X (bomem(X) /\.
mortal(X))).
( 16) SENTENA

Nenhum homem mortal.

LGICA DE PREDICADOS

(V'X -.mortal(X))

Frmula quantificada existencialmente, cujo nico smbolo predicado usado mortal.Est


subentendido que o domnio o conj\llltO dos seres hwnanos.

A cartilha da lgica . . 131

(17) SENTENA

. LGICA DE PREDICADOS

Alguns cachorros latem, outrdrS no.

(3X late(X)) /\ (3X -,late(X))

- - - - - - - - - - - - - - - - - - ' - - - - - - - - - - - - - - - - -...~!1~-

Frmula quantificada existenqialmente, cujo nico smbolo predicado usado late: Est
subentendido que o domnio

: 1;~.

Lgica estaria incorreta se fosse escrita como: (3X late(X) /\ -,late(X)), uma vez que a .
sentena estaria afirmando que existe um objeto do domnio (um cachorro, no caso) que .
late e que no late.
(18)

SENTENA

LGICA DE PREDICADOS

EXistem pessoas bondosas, no entanto nem

_
(3X bondosa(X)) A-~VX bondosa(X)}
todas as pessoas sao bondosas.
.
Cqnsiderando o domnio dos seres humanos, essa uma frmula composta (conjuno)
que pode ser lida como: existem pessoas que so bOndosas e no verdade que todas as
pessoas so bondosas .
. (19) SENTENA

LGICA DE PREDICADOS

Se Pedro no estudioso, nenhum dos rapa.


dr )
-,estud1oso(pe o ~
zes estudioso.

c.....v
. di (X))
v A-,estu oso

Frmula composta (condicional).


(20)

LGICA DE PREDICADOS

SENTENA

Se Guilherme acordar tarde, ento Gabriel acordartarde(guilherme) ~

ir ao mercado e algum vai gastar dinheiro. (irmercado(gabriel) /\ (3X gastar(X)))


Frmula composta (condicional).

(21)

LGICA DE PREDICADOS

SENTENA

Se Guilherme acordar tarde, ento Gabriel acordartarde(guilherme) ~

ir ao mercado e algum vai gastar dinheiro. (irmercado(gabriel)" (3X gastar(X)))


Frmula composta (condicional).
(22)

LGICA DE PREDICADOS

SENTENA

Se.' b abacate e o caqui engordam, ento h (engorda(abacate)" engorda(caqui)) ~


alimentos que engordam.

(3X engorda(X)))

Frmula composta (condici~nal), cujo antecedente uma conjuno ~e dois tomos. O


domnio o conjunto de alimentos.
~ i

e o conjllllto dos cachorros. Note que a ~epresentao em ~..~

-_../ : ~ ~- : ~- J ... .

J ~.. -

132

Ed UFSCar.,.. Apontamentos

(23)

LGICA DE PREDICADOS

SENTENA.

Alguns alunos estudam, e nem todos os alu- (3X estuda(X)) "-.('v'X estuda(X))
nos estudam.
.
Frmula composta:(conjuno), cujo domnio o conjunto de estudantes.

(24) SENTENA

i .

LGICA DE PREDICADOS

Todo aluno mais novo que alguns profes- ('v'X (aluno(X) ~ (3Y(professor(Y)
sores.

maisnovo(X, Y)))))

Frmula composta (condicional), cujo cons.~ente uma expresso composta (conjuno).

(25)

LGICA DE PREDICADOS

SENTENA

Nem todos os pssaros podem voar.

-.('v'X (passaro(X)

voa(X)))

O domnio o conjunto dos animais. Alternativamnte, a sentena em Lgica de Predica..


dos poderia ter sido escrita como -.(3X (passaro(X) "-.(voa(X))).
(26) SENTENA
'T'-.l.L\Al

LGICA DE PREDICADOS
...

cnana e mais nova que a mae da cnana.

('v'X('v'Y ((crianca(X) "mae(Y,X)) ~


maisnova(X, Y))))

Alternativamente, a sentena em Lgica de Predicados poderia ter sido escrita como ('v'X
(crianca(X) ~ maisnova(X,mae(X)))). Note que nesta expresso mae/l usado como smbolo funcional; na expresso anterior, mae/2 um smbolo predicado.

(27) SENTENA
Nenhum nmero natural negativo.

LGICA DE PREDICADOS

--,(3X negativo(X)) .

Pr-condio: o domnio o conjunto dos nmeros naturais.


Nenhum nmero natural negativo.

j-.(3X (natural(X) " negativo(X)))

Pr-condio: o domnio o conjunto dos nmeros inteiros.


Nenhum nmero natural negativo.

-.(3X (natural(X) "negativo(X)))

Pr-condio: o domnio o conjunto dos nmeros reais.

A cartilha da lgica 133

(28)

LGICA DE PREDICADOS

SENTENA

Alguns nmeros primos so pares.

(3X (primo(X) A par(X)))

Pr-condio: o domnio o conjunto dos nmeros naturais. Os dois predicados :usados ~~: ..
so: primo e par, ambos com aridade 1. O nico termo que comparece na

expres~~o 'a ~~~

varivel X.
Todos os nmeros pares so maiores que 1. (V'X (par(X} ~ maior(X, 1)))
Pr-condio: o domnio o conjunto. dos. nmeros naturais. Os dois predicados usados
so: par e maior, com aridade 1 e 2, respec~ivamente ..Os dois termos que comparecem na
expresso so: varivel X e constante 1.
Nmero pares so primos apenas se forem
.
.
.

:
('VX ((par(X) /\ pnmo(X)) ~ menor(X,3)))
menores que 3.
.

Pr-condio: o domnio o conjunto dos nmeros naturais. A frmula usa trs predicc.tdos: .~: .,,,.
par, primo e menor. Os dois primeiros cmn: aridade 1 e o segundo com aridade 2.

O~dois<j::

termos usados so: a varivel X e a constante 3.


No existe nmero primo menor que 3.

--,(3X (primo(X) /\ menor(X,3)))

Pr-condio: o domnio o conjunto dos nmeros naturais. A frmula usa dois predicad()s: primo e menor. O primeiro com aridade 1 e o segundo com aridade 2. Os dois termos
usados so: a varivel X e a constante 3.

3.3 INTERPRETAES E MODELOS


Como visto no Captulo 1, frmulas bem-formadas tm significado apenas quando uma interpretao dada aos smbolos. Na Lgica Proposicional, uma interpretao consiste em uma atribuio
de valores-verdade a tomos. Na Lgica de Predicados, uma vez que existem variveis envolvilas,
para a definio de uma interpretao para uma linguagem . devem ser especificados:

(1) o domnio;
(2) atribuies a constantes, smbolos funcionais e smbolos predicados que ocorrem na lin-

'f. guagem. Devem ser associados a cada:


smbolo constante, uma entidade no domriio;
smbolo funcional, uma funo no domnio;
smbol~ predicado, wna correspondente relao no .domnio.
:.

134

EdUFSCar -Apontamentos

Definio 3.22 Uma interpretao I de uma linguagem de primeira ordem2_. consiste em:
1. um conjunto no-vazio D, chamado de domnio da interpretao, no qual variveis iro
assumir valores;
2. atribuio a cada:
smbolo constante de , de um elemento de D;
smbolo funcional n-rio de A., de uma funo de D1 ~ D;
smbolo predicado n-rio de A., de uma funo de D1 ~ {v, f}.
Observao 3.9 Cada interpretao especifica um significado para cada smbolo da linguagem.
Essas atribuies definem a semntica da linguagem de primeira ordem.
Observao 3.10 Para uma dada interpretao, uma frmula bem-formada sem variveis livres
representa uma proposio que verdadeira ou falsa, enquanto uma frmula bem-formada com
variveis li~es representa uma relao no domnio de interpretao que pode ser verdadeira para
alguns valores no domnio da varivel livre e falsa .para outros.
Definio 3.23 Seja I uma interpretao de uma linguagem de primeira ordem . Uma atribuio
varivel (com relao a I) a atribuio a cada varivel em!.. de um elemento do domnio de I.
Deieio.3.24 Seja I uma interpretao de uma linguagem de primeira ordem , com domnio D.
Seja A uma atribuio varivel com relao a I. Uma atribuio a termos (com relao a I e a A),
para os termos de . definida da seguinte maneira:
a cada varivel dada uma atribuio de acordo com A;
a cada constante dada uma atribuio de acordo com I;
se t 1', , tn' so as atribuies de termos dos termos t 1, ... ,tn e se f' a atribuio a f, ent_o
f'(t 1', ,tn') e D a atribuio de termo de f(t 1, ,tn).
Definio 3.25 Seja I uma interpretao de uma linguagem de primeira ordem A., com domnio D.
Seja A uma atribuio varivel com relao a I. Uma frmula em 'A. pode ser avaliada, isto , a ela
pode ser atribudo o valor-verdade v ou f (com relao ~ I e a A):
1. Se a frmula um tomo p(tl' ... ,t), ento o valor-verdade obtido calculando o valor de

p'(t, ', ... ,tn'), no qual p' a funo associada a p por I e t 1', , tn' so as atribuies de termo
dos termos t 1, , tn, com relao a I e A.

2 Algumas vezes, a definio de uma interpretao pode ser dada com relao a uma frmula

guagem
de primeira ordem . - a definio a mesma, exceto que . deve ser substituda
por a..
.
.

a, em vez de uma lin-

A cartilha da lgica

2. Se a frmula tem a forma -.a, a /\ p, a v


pela Tabela 3.3.

p, a

135

p, a tt f3, ento seu valor-verdade dado

Tabela 3.3 Valores-verdade de frmulas compostas usando conectivos lgicos.

.;.,!

-,.:

a/\ f3

av . ~

a.~~

Cl~

f3

~?~

..

3. Se a frmula da forma (3X a), seu valor-verdade v, se existe d e D tal que a tem valorverdade v com relao a I e a A(X/d) (A(X/d) A exceto que a X atribudo o valor d); caso.
'contrrio, seu valor-verdade f . .
4. Se a frmula da forma (V'X a.), seu valor-verdade v se, para todo d e D, a tem valorverdade v com relao a I e a A(X/d) (A(X/d) A exceto que a X atribudo o val,pr d); casp
contrrio, seu valor-verdade f.
& ,..

Observao 3~11.0 valor-verdade de uma frmula.fechada.no.depende de atribuio de varivel;


conseqentemente, a atribuio de varivel no deve ser levada em considerao no clculo do .
valor-verdade d.e uma frmula fechada - o valor-verdade de uma frmula fechada sempre considerado apenas com relao a uma interpretao.
Definio 3.26 Seja I uma interpretao de uma linguagem de primeira ordem e seja a uma frmula fechada de . I um modelo de a. se o valor-verdade de a. com relao a I for v.
Exemplo 3.11 Considere uma linguagem com os seguintes smbolos:
Smbolo funcional f/1 g/1
Smbolo predicado

p/1 q/2 r/l

Smbolo constante - a

Smbolo variv

Seja I a seguinte interpretao para :


Domnio: {1,2}
Atribuio a constantes:

~
~

.136

EdUFSCar -Apontamentos
.

.Atribuio a variveis:

1TIE
~tribuio a smbolos funcionais:

f(l) f(2) g(l) g(2)


2

.Atribuio a smbolos predicados:

p(l)

p(2)

q(l,l) q(l,2) ,.q(2,1) q(2,2)


V

r(l)

r(2)

'ca) Usando a mterpretao dada, a seguir determinado o valor-verdade da {rmula:


a: fv'X (p(X) --+ q(f(X),a)))

para X= 1
p(X) --+ q(f(X),a)

p(l)

--+ q(ftl),a)

p(l)

--+ q(2,l)

--+V

p(X)

--+ q(f(X),a)

p(2)

--+ q(ft2),a)

p(2)

--+ q(l,l)

--+

(avaliada v)

para X= 2

(avaliada v)

l]roa vez que a frmula (p(X)-+ q(f(X),a)) v para todos os elementos X do domnio D, a: (V'X

(p(X) ~ q(f(X),a))) v na nterpretao I e, conseqentemente, I um modelo. /

(b) Usando a interpretao dada anteriormente, a seguir determinado o '. valor-verdade da


frmula ~' que tem Z como varivel livre:
~:

('tX (p(X)-.+ (q(f(X),a) A p(Z))))

A cartilha da lgica

137

Para X= 1
p(X)

q(f(X),a) "p(Z)

p(l)

q(f(l),a) "p(2)

p(l)

q{2,l)

V/\ V

4V

p(X)

q(f(X),a)" p(Z)

p(2)

q(f(2),a) /\ p(2)

p(2)

q(l,l)

V/\ V

~.< '

/\V

(ava'ada v)

ParaX=2

/\V

(avaliada v)

Como a frmula

de
H

~valiada

v para todo possvel valor de X do domnio, o valor-verdade de

acordo com a interpr~o dada v. Note que se a atribuio a variveis considerada fosse tal qu~~

z --

1 ou 2 (tanto faz; dado que Y nem


1ou2 (tanto faz,
dado que X campaj

comparece na frmula~)

rece ligada na:frmula~)

o valor-verdade da frmula~ seria f.


!

(e) Usando a int~rpretao dada anteriormente, a segui! determinado o valor-verdade da frmulay.

y: ('v'X(3Z((p(X)

q(Z,X))

~r(Z))))

Para X= 1
;

Z=l (p(l)

q0,l)) /\ -.r(l) (avaliadaJ)

Z=2 (p(2)

q(2,l)) /\ -.r(2) (avaliada v) <=

Z=l (p(2)

q(l,2)) "-.r(l) (avaliada f)

Z=2 (p(2)

q(2,2)) /\ -.r(2) (avaliada v) <=

ParaX=2

A frmula y interPretada como v, uma vez que, para qualquer valor de X, xiste um valor de
Z que a toma v.
. ..: . .

138

EdUFSCar -Apontttmmtos

(d) Usando a interpretao dada anteriormente, a seguir determinado o valor"".verdade da


frmula8.

: (3Z('v'X ((p(X) -t q(Z,X))" ;(Z))))


ParaZ= 1
X=l (p(l) ~ q(l,l)) "-.r(l)

(avaliada f)

Se existe um Z que toma a frmula v, ele no 1


ParaZ=2
X=l (p(l) -t q(2,1))

t\

-ir(2) (avaliada v)

X=2 (p(2) -t q(2,2)) "--,r(2) (avaliada v)


A frmula 8 v na interpretao dada, uma vez que existe Z = 2, tal que para todo valor de X
do domnio avaliada v.

(e) Usando a interpretao dada anteriormente, , a seguir determinado o .valor-verdade da


.frmula 'I'.
\jl:

A frmula

\jl

(3Y(3X {(p(X) " q(Z,X) "-.r(Z)))))

X=l p(l)" q(l,l) "--,r(2)

(avaliada t)

X=2 p(2)" q(2,l) "--,r(2)

(avaliada v)

v na interpretao dada, uma vez que existe Y (Y=l) e existe X (X=2), que tor-

nam a frmula v na interpretao dada.

(f) Usando a interpretao dada anteriormente, a seguir determinado o valor-verdade da


frmula cr.

cr: ('v'X'v'Y ((q(X,Y) v r(X)))" (3X ((q(X,a) -t p(Y)))


Considerando que a frmula cr est no padro a "

f3, tal que:

a: ('v'X('VY ((q(X,Y) v r(X)))) e

f3: (3X ((q(X,a) -t p(Y)))


a avaliao de a depende da avaliao de a e de ~
(1) Avaliando a.

A cartilha da lgica 139

Para X= 1

Y=l q(I,l) v r(l) (avaliada v)


Y=2 q(I,2) v r(l) (avaliada v)
ParaX=2
Y=J q(2,1) v r(2)

(avaliada v)

Y=2 q(2,2) v r(2) (avaliada v)


e, portanto~ a frmula a avaliada v na interpretao dada.
(2) Avaliando j3.

X=l q(l,l)

p(l) (avaliada f)

X=2 q(2,1)-+ p(I) (avaliada f)


e, portanto, a frmula~ avaliada f na interpretao I, uin vez que no existe valor de X que toma
a frmula v. Dado que d. e J3 so avaliadas v e f, respectivamente, a frmula cr avaliada f em L~

Exemplo 3.12 Considere uma linguagem . que s tem o smbolo funcional p/2 e por .variveis,
os smbolos:

{X,Y;ZJ. Os stnolbs constante e--funcional no comparecem na especificao de

linguagem. Considere, ainda, uma interpretao que tem por domnio D

= {a,b,c}

e associa ao

predicado puma funo (tambm nomeada p: D~ {v,f}), como segue:


p(a,a)

p(a,b)

p(a,c)

p(b,a)

p(b,b) p(b,c)
V

p(c,a)

p(c,b)

p(c,c)

(a) Determinar o valor-verdade da frmula (V'X(3Yp(X,Y))).


X=a Y=a p(a,a) = v Para X=a, existe Y=a que torna a frmula v.

Para X=b, Y =a torna a frmula f e, portanto, uma outra instanciao para a varivel
X=b
Ytentada.
.
Y=b p(b,b) =V
Para X=b e Y==b a .frmula p(b,b) == v.
Y=a p(b,a) = f

Para X=c, Y=a torna a frmula f e, portanto, uma outra instanciao para a varivel
X=c
Y tentada.
Y=b p(c,b) =V
Para X=c e Y=b a frmula p(c,b) v.
Y=a p(c,~) = f

Como a frmula 3Y p(a, Y) avaliada v, a frmula 3Y p{b, Y) tambm avaliada v e a 3Yp(e,Y)


tambm v, a frmula (V'X(3Yp(X,Y))) avaliada v na interpretao dada.

140

EdUFSCar-Apontammtos

(b) Determinar o valor-verdade da frmula (VYp(Y,b)).

Y =a j p(a,b) = f j Para Y=a, p(a,b) f.


(VYp(Y,b)) fuma vez que p(a.b) = f.
(e) Determinar o valor-verdade da frmula (VYp(Y,Y)).

Y= a p(a,a) = v
Y = b p(b,b)= V

Y=c p(c,c)=v
Como p(a,a), p(b,b) e p(c,c) so interpretada5 v, a frmula (VYp(Y,Y))) interpretada v.
(d) Determinar o valor-verdade da frmula (3X(3Yp(X,Y)).

Qualquer outra entre as seis possveis combina X = a Y = a p(a,a) = v es que tomam a frmula v poderia ser considerada tambm.
.

Como p(a,a) = v, a frmula (3X(3Y p(X,Y)) avaliada v.


(e) Determinar o valor-verdade da frmula (VYp(Y,Y)) A (3X(VYp(X,Y))).
Note 11ue ('VY p(Y,Y)) foi avaliada v na parte (b) deste exemplo. Resta, pois, avaliai a subfrmula (3X(VYp(X,Y))).
Se existir uma instanciao da varivel X que toma
Y=a p(a,a) = v a frmula v, certamente essa instanciao no com
X=a
Y=b p(a,b) = f a constante a, dado que, para X instanciado com a, a
frmula ('VY p(a, Y)) f, uma vez que p( a, b) = f.
X~b

Y=a p(b,a)= f Vale o mesmo comentrio anterior, dado quep(b,a)=f.

X=c Y=a p(c,a) = f Vale o mesmo comentrio anterior, dado que p(c,a)=f.
. Como (VY p(a,Y)) = f, ('VY p(a, Y)) = f e (VY p( a, Y)) = f, a frmula (3X(VYp(X,Y))) = ' o que
faz com que a avaliao da frmula ('VYp(Y,Y))" (3X('VYp(X,Y))) seja f.
Observao 3.12 Os axiomas de uma teoria de primeira ordem so um subconjunto de frmulas
fechadas da linguagem da teoria.
Definio 3.27 Seja t uma teoria de primeira ordem e seja . a linguagem de t. Um modelo para t

uma interpretao para ., a qual um modelo para cada axioma de t.

A cartilha da lgica

141

Definio 3.28 Seja S um conjunto de frmulas fechadas de uma linguagem de primeira ordem e
seja 1 uma interpretao de . 1 um modelo para S, se 1 for um modelo para cada frmula de.$ ...
; ;_

'

Observao 3.13 Ndte que se S = {F 1, ... ,Fn} um conjunto finito de frmulas fechadas, entd;~
'~
um modelo para S se .e somente se 1 for"Ulllmodelo para F1 A /\ F.
Definio 3.29 Seja S um conjunto deTrnulai;'feehadas de uma linguagem de primeira ordem J..:

S satisfatvef em . se tem uma interpretao que um modelo para S;


S vlida se toda interpretao de . for um modelo para S;

S insatisfatvel se no tem modelos (ou seja, no existe interpretao de . que seja um


modelo para S).

Definio 3.30 Seja S um conjunto de frmulas fechadas de uma linguagem de primeira ordem
.. Seja F uma frmula fechada de .. Diz-se que F conseqncia lgica de S se, para toda interpretao Ide , I for um modelo para S, I tambm um modelo para F. Se S = {F 1, ,Fn} foi;o
conjunto de frmulas fechadas, ento a frmula fechada F conseqncia lgica de S se e someii'fo
se a frmula

F1 A

F:o ~ F for vlida.

Teorema 3.1 Seja S um conjunto de frmulas fechadas de uma linguagem de primeira ordem ..
Seja a uma frmula fechada de .. Ento
F conseqncia lgica de S se e somente se S v {-.a} for insatisfatvel.
Prova:
Suponha que a seja conseqncia lgica de S. Seja I uma interpretao de . e suponha que
I seja um modelo para S. Ento, I tambm um modelo para F. Portanto, I no um modtdo
para S u {-.a.}. Assim, S u {-,a} insatisfatvel.
Suponha agora que S u {-,a} seja"f~fatisfatvel. Seja 1 uma interpretao de .. Suponha
que I seja um modelo para S. Desde que S u {-.a} seja insatisfatvel, I no pode ser um
modelo para -,a, o que toma 1 um mode1o para a, ou seja, a cons~qncia lgica de S.
Exemplo 3.13 Seja S = {p(a), (VX(p(X)--> q(X)))} e seja a a frmula q(a). Seja I um modelo para
S. Assim, p(a) verdade com relao a I. Segue disso e da verdade de (VX(p(X) ~ q(X))) em I que
q(a) deve ser v com relao a L
Observao 3.14 Como discutido, a conseqncia lgica pode ser reduzida ao teste de insatisfatibilidade de uma frmula na form,.a conjuntiva. Em Lgica Proposicional posS.i~,el, eo,~erar todas
.

'

. . . ..;.,_~ _;

'>;;

......

1,42

EdUFSCar ""'."'Apontamentos

as atribuies de valores-verdade para testar insatisfatibilidade. Em Lgica de Predicados, entretanto, ser necessrio enumerar todas as estruturas para usar essa abordagem, o que a toma inexeqvel, uma vez que exi_stem infinitas dessas estruturas. Felizmente, entretanto, existe uma maneira
de decidir sobre insatisfatibilidade por meio do.exame de.apenas uma estrutura. Para _cada frmula
existe um domnio especial - chamado de universo de Herbrand - e uma funo especial, com base
na interpretao de Herbrand, tal que apenas estruturas usando esse domnio e esS funo devem
ser consideradas. Isso discutido em detalhe no Captulo 5.

t
~-

'

li

j
1

4. suBSTITUIO, UNIFICAO E FORMA NORMAL .


Freqentemente, quando se lida com conceitos lgicos e particularmente na prova de teoremas
.

~ - :~ :;

que envolvem frmulas quantificadas, necessrio fazer o "casamento" de certas subexpres~.s.

Encontrar substituies de variveis por termos de maneira a tomar as subex:pre$5es

'.t~;

idntiea~t

um processo extremamente importante-em~Artmeta'1-e.ftmdarrrenta qualquerraciocnio


representado por expresses lgicas de primeira ordem. Esse processo denominado unificao .

e fundamenta-se no conceito de substituio, que troca variveis por termos e que definido na
Definio 4.2.

4.1 O PROCESSO DE SUBSTITUIO


Definio 4.1 Uma expresso E um termo~ ou um literal ou uma conjllllo ou disjuns:o de literais. Uma expresso simples um termo ou um literal. .
Definio 4.2 Uma substituio um conjunto finito da forma:

e= {t/v1, tfv2, ... ,vvn}


no qaal cada vi (1 ~ i ~ n) uma varivel, cada t1 (1 :Si~ n) um termo diferente de vi e no existem
dois elementos no conjunto e que tenham a mesma varivel aps a barra (propriedade dafuncio-
na/idade).
Observao 4.1
1. quando t 1,..., t11 so termos ground, a substituio chamada de substituio ground;
2. uma substituio que consiste em nenhum elemento chamada de substituio vazia (ou
substituio identidade) e notada por e;
3. geralmente, substituies so representadas por letras gregas;
4. a restrio de e ao ~bnjunto de variveis V a substituio {t/v
Observao 4.2 Uma substituio

e= {t/v1, t/v2, ... ,t/v

}
11

e 0 Jv

e V}.

pode ser abordada como uma funo

do conjunto de variveis de uma linguagem, no conjunto de termos da linguagem, da seguinte

maneira:
ti se x=vi

e(x) = { x caso.contrrio
Definio 4.3 Seja

e= {t/v1, t/v2, ... ,t/v

uma substituio. O conjunto {v 1, v2, , v11 } chamado

de domni~ de 9 ,(dom(S)) e o conju~to {t 1, t2, ... , t11 } chamado de contradomn;~ ,qe 8 .


...

:;

..

144 EdUFSCar -Apontamentos

Definio 4.4 Seja e= {t/v1, t/v2, ,t,/vu.} uma substituio e seja E uma expresso. Ento, E0
uma expresso obtida a partir de E substituindo simultaneamente cada ocorrncif da varivel vi (1
~ i ~ n) em E pelo termo ~- O resultado da operao E0 chamado de instancia~o de E por 0.
Exemplo 4.1 Uma substituio troca variveis por tennos. Por-exemplo, na

cl~,p(X) ,v q(X),

a varivel X pode ser substituda pelo termo f(a), e uma nova clusula p(f(a)) ~ q(f(a)) obtida.
Considerando que clusulas so universal.mente quantificadas, pode-se dizer qu~ esta substituio
toma a clusula "menos geral". Note, entretanto, que a segunda clusula uma c{.>nseqncia lgica da primeira, ou seja:
!
p(X) v q(X)

1
1

1= p(f(a)) v q(f(a)).

i.
1

Exemplo 4.2 Considere E= p(Y,f(X)) e a substituio 9 = {a/X, g(g(X))IY}. A instanciao de E


por 9 . dada por E9 = p{g(g(X)),f(a)). Note que X e Y so simultaneamente substitudas.
ConsideI
rando agora a substituio cr = {f(a)/X,b/Y}, tem-se Ecr p{b,f(f(a))).
j
.

.,.I'

Exemplo 4.3 A Tabela 4.1 mostra quatro instanciaes do literal p(X,f(Y),b}obti?as usando quatro

substituies diferentes.

1:

Tabela 4.1 Quatro instanciaes do literal p(X,f'(Y),b).


Substituio
{Z/X,W/Y}

Instanciao resultante
p(Z,f(W),b) .

{a/Y}

p{X,f(a),b)

{g(Z)/X,a/Y}

p(g(Z).f(a),b)

'

'

{c/X,a/Y}

p(c,f{a),b)

. i
Observao .4.3 importante que qualquer
substituio 9 seja idempotente.
Isso ~igni:fica
que, para
.
.
t
qualquer expresso E, 9 deve ser tal que-Er= (E9)9. Isso, por sua vez, exige gue para qualquer
substituio {t/v1, t/v2, ... ,1nfvn} nenhuma das variveis vi deve ocorrer em qualquer dos termos tf
.

f
~}.Ento,

Ecr 1 =
p(X,Y){Z/X, a/Y} = p(Z,a). Aplicando novamente a substituio ao resultado ob,,tido, tem-se (Ecr 1)
Exemplo 4.4 Considere a expresso E= p(X,Y) e a substituio cr1 = {Z/X,

cr 1 = p(Z,a)cr 1 = p(Z,a){Z/X, a/Y}= p(Z,a) = Ecr 1 P<Jrtanto, a substituio cr 1 id~mpotente.


.

Exemplo 4.5 Considere a mesma expresso anterior E= p(X,Y) e a substituiq a2 = {Y/X, a/Y}.

Ento; Ecr2 = p(X, Y) {Y/X, a/Y} = p(Y,a). Aplicando novamente a substituio a~ resultado obtido, .
tem-se (Ecr2)cr2 = p(Y,a)cr2 = p(Y,a){Y/X, a!Y} = p(a,a). A substituio a 2 no /idempotente uma

vez que Ecr2 * (Ecr2)cr2

i
1
1

'

. A cartilha da lgica . 145

]={t/x

tJ>s, ... ,t/x

e= {u/y

u/y2' ... ,u.lym}. A composio de 0 1 e 0


a substituio notaqa por 0 10, que obtida a partir do conjunto {t 10/x 1, t 20/>s, ... ,tn0/x11,u/y1, u/
y2, ,um/ym}, por me)b da e~o de qualquer elemento tj0/x; para o qual tj0 = xj, e qualq*er
elemento u/Yi' tal qu; yi est em {x 1,>s,.. .,~n}.
Definio.4.5 Seja 0 1

1,

11

1,

}i

,,

Exemplo 4.6 Considefe as substituiOOi.Bt=..tp(X,..~}--e-6-=-{a/X,-bN, c/W; d/Z}. Iem-se, ento,

0 10= {p(a,b)/Z,a/X,bl\Y,c/W}. A Tabela 4.2 mostra mais algumas composies de substituies. : .


!

Tabela 4.2 Composio1de substituies.

Substitui~ e Substituio e1
'

{f(Z)/Y}

{b/X, a/Y, a/Z} {f{Z)9/Y,b/X, a/Y, a/Z}

{f(Y)/X,U/.i}

{f(b)/X, Z/Z, b/Y, Z/U} = {f(b)/X,b/Y, Z/U}

{a/X,a/Y}

{Y0 1/X,a/X,a/Y}

{p(X,Y)/Z}

= {f(a)/Y, b/X, a/Z}

{f{Y)0 1/X,U0/Z;b/Y, Z/U} =

{b/Y, Z/U}

{Y/X}

Substituio composta 08 1

{a/X,b/Y,c/
J W,d/Z}

= {a/X,a/Y}

{p(X,Y)0/Z,a/X,b/Y,c/W,d/Z}

{p(a,b )/Z,a/X,b/Y,c/W}

Exemplo 4. 7 Considete a expresso W-= p(Ul ,g(Vl ;,V2'-e a:s "SUbstituies e1 = {f(Vl)/Ul} .e 02
.

= {a/Vl, bN2, c/Ul}. :I

(a)

we 1 = p(U1,gtv1),V2)0 1 =p(f(Vl),g(Vl),V2)
:1

(W0 1)02 = p(f(\Tl),g(Vl),V2)62 = p(f(a),g(a),b)


1

(b) W02 = p(Ul,gVl),V2) 0 2 = p(c,g(a),b)


(W02)0 1 = p(clg(a),b)8 1 = p(c,g(a),b)
J

(e) 9 192 = {f(V1)9~/Ul, a/VI, bN2, c/Ul} = {f(a)/Ul,a/Vl,bN2}


(d) W(0 102) = p(Ujl ,g(Vl),V2){f(a)/Ul,a/Vl,bN2} = p(f(a),g(a),b) = (W8 1)82 (ver (a)) .
. (e) 628 1 = {a8 1N b0Q2,
1

c0 1 /Ul~'f(Vt)/Ul'Y="'{WV1,1>!V2, c7Ul}

(f) W (62e.) = p(U ~ ,g(V 1),V2){ alV<i.,-bN-2-~,-eA:J-I+-=p(-c;g(-a~;bjc:-(~1.02Jei'"(ver'(b) ).


.

Observao 4.4 Pode

~er mostrado que aplicando 8 1 e 0 sucessivamen~e a uma expresso E o

mesmo que aplicar a cdmposio 0 1e a E, ou seja,

(E8 1)8 = E(8 18)

'

i
1

O Exemplo 4.7 (a) ei(d), bem como (b) e (e), mostram isso.
,

.,

(0 10)02 = 0 1c002)

Observao 4.5 Pode ~er mostrado que a composio de substituies associativa, ou seja:
i

.;

146

EdUFSCar - Apontamentos

No procedimento de prova de teoremas por resoluo comum ter de unificar duas ou m_ais
expresses. A prxima definio contempla essa situao.
Observao 4.6 A composio de duas substituies que satisfazem a propriedade de ~cionali

dade satisfar a propriedade de funcionalidade tambm.


Definio 4.6 Uma substituio 9 chamada de unificadora do conjunto de expresses {El, E2, ...,
Ek} se e somente se:

O conjunto {E 1, E2,

E1 } dito unificvel se existir uma substituio unificadora para ele.

Exemplo 4.8 Considere as expresses EI = p(X,f(Y),b) e E2 = p{X,f(b),b).Asubstituio e= {a/X,b/Y}


unificadora do conjunto {E1, E2}, uma vez que:

Exemplo 4.9 Considere as expresses E 1 = p(a,Y) e E2 = p(X,f(b)). O conjunto {E 1, E2 } unificvel. A substituio 0 = {a/X,f(b)/Y} uma unificadora do conjunto, uma vez que: E 10 = E28 =
p(_a,f(b)), ou seja, {E 1,B2}0 =,{p{a,f(b)) }.
Observao 4.7 No Exemplo 4.5, embora 0

{a/X,b/Y} seja um unificador do conjunto

{p{X,f(Y),b), p(X,f(b),b)}, no o unificador mais geral. A varivel X, por exemplo, no precisava


ser substituda pelo termo constante a para tornar as duas expresses unificveis. A prxima definio estabelece o critrio que .caracte~za a substituio cham~da de unificadora mais geral.
Definio 4. 7 Uma substituio unificadora do conjunto de expresses {E 1, E2 , ... , E1 } a unificadora ma'is geral - mgu 1 - se e somente se para cada unificadora e do conjunto existir unia substituio y, tal que e= 8y. Duas ou mais expresses so unificveis se elas tm a mesma mgu.
Observao 4.8 Parafraseando a Definio 4.6, a mgu de {E.} tem a propriedade que se 0 qual~
1
quer unificadora de {EJ produzindo {EJ0, ento eXiste uma substituio y, tal que {EJ0 = {EJy.
Exemplo 4.10 Considere novamente o conjunto de expresses do Exempl_o 4.8, {p(X,f(Y),b),

p{X,f(b),b)}.
A mgu do conjunto de expresses = {b/Y} e {p(X,f(Y),b), p(X,f(b),b)} = {p(X,f(b),b),
p(X,f(b),b)} = {p(X,f(b),b)}.
Considere uma substituio unificadora e = {a/X, b/Y}. Tem-se: {p(X,f(Y),b), p{X,f(b),b)}
Decidiu-se por manter a identificao mgu (most general unifier) para referenciar a substituio que a unificadora
mais geral de w:h conjunto de expresses.

A cartilha da lgica

147

{a/X, b/Y} = {p(a,f{b),b), p(a,f{b),b)}} = {p(a,f(b),b)}.


Para a substituio 0, 3y

= {a/X}

to, {p(X,f(Y),b), p(X,f(b),b)}y

= {b/Y,a/X}

tal que a composio y

e, portan-

{p(X,f(Y),b), p(X,f(b),b)} {b/Y,a/X} = {p(a,f(b),b)~_;


-~:::,

p(a,f{b),b)}} = {p(a,f(b),b)}.

,.~.,:.

"'

.........

Definio 4.8 Sejam C 1 e C2 duas frmulsem-forfudas e sejaffa subsfitilio {t/v 1, , tnIV},


na
n
qual, parai :;t: j, t. :;t: t..J Diz-se que C 18 e C2 8 so padronizadas parte sempre que no
existir varivel
.
que ocorra em ambas ela e c2e.

4.2 O PROCSSO DE UNIFICAO


Existem muitos algoritmos que podem ser usados para unificar um conjunto finito de--expresses
unificveis e que sinalizam uma falha quando o conjunto no po_de ser unificado. O procedimento
recursivo descrito DO Procedimento 1, encontrado em Nilsson (1980), til para o estabelecimento
da idia geral de como unificar duas expresses estruturadas em lista, que o formato de entrada
esperado pelo algoritmo (e.g., o literal p(X,f(a,Y)) representado como (p X (f a Y)).
(~

t~

Procedimento 4.1 Procedimento para a unificao de -duas ex.p:resses..E.1.-e E2...Se-as-.expresses .sG-unifi- : :_.
cv-eis, oprocedimento retoma a mgu das duas expresses; se no forem unificveis, o procedimento falha.
recursive procedure unif.KE1,E2)

if either El or E2 is an atem (that is, a predicate symbol, a function symbol, a


ccinstant symbol, a negation symbol ora variable), interchange the arguments El
and E2 (ifnecessary) so that El is an atom, and do:
begfn
if El and E2 are identical
then return nil

els e
if El is a variable
then
ifEl occurs in E2
then retumfaO
else return {E2/El}
else
if E2 is a variable
then return fRl /~
else returnfa

Fl ~ the first element of El; TI ~ the rest of El


F2 ~the first element ofE2; T2 f-the rest ofE2
Zl ~ wziJ.j.(Fl,F2)
if Zl =/ai!
then return/ai/
else
begin
G1 ~ result ofapplying Zl to Tl

G2 ~ result of applying Z 1 to T2
Z2 ~ uniff(G1,G2)
ifZ2=fail
then return/ai/
else return thc compQ!!itiO? of Zl and Z2
end

end/

.. .,,
.

148

;
i

EdUFSCar-Apontamentos

l
1

pseu~

Observao 4.9 Na descrio do Procedimento 4.1 optou-se por manter o


. ocdigo original,
como descrito em Nilsson (1972). Note que o teste de ocorrncia de varivel apenas feito com . .
relao a E1 e E2, e no vice-versa, e, por essa razo, se E2 for varivel e E 1 foi u~ termo, preciso
que os dois argumentos troquem entre si suas posies. O Exemplo 4.14 trata d~ssa situao..
1
1
1

4.2.1 Exemplos do processo de unificao- o procedimento UN[FY

Exemplo 4.11 Considere a interrogao Prolog e a respectiva instanciao de varirveis subseqente,


provocada pela prova:
i
?- f(X,b,"X) = f(a,b,c).
X=a

Y=c
Segue o "trace" do algoritmo descrito no Procediment9 4.1, que faz a unifica~o de dois termos,

retomando a substituio unificadora (mgu) entre eles (caso a unificao seja pss~el, o que, no exemplo em questo, j se sabe que , em Illo de a interrogao Prolog anterior ter si<o bem-sucedida).
1,
E2
E1
unify( (--!-X. . . . .b-~-.
. . , (~
~ retorna {a/X,bfY} (substituio final)
1

3 )

FJ.TJ

F2T2

Zl +- unify (f,f) =>procedimento bem-sucedido e retoma nil

nil{a/X,c!Y}

t ..........,

flTI

F2T2

=r {a/X,c!Y}
!;composio das

Z2 +-unify ((X b Y), (a b c))


t ..........,

d.

b t'tui' -

uas su s 1 oes

1
!

Zl +- unify (X,a) =>procedimento bem-sucedido e retoma {a/X}~ {a/X} {c~}

= {a!X,c!Y}

Gl +- (b Y){a!X} => (b Y)

G2 +- (b c){a!X} => (b e)

composio das

~ .a
Z2 +-unify (~ ~ ~b ~)

duJ substituies

Fl TI F2T2

i;

Z 1 +- unify (b , b) => procedimento bem-sucedido e retoma nil ~ nil {c!Y} ::= {~/Y} .

G1 +- (Y)hil => (Y)

ci>mposio das
duk
,.' s substitu1'o-es

G2 ~ (c)nil => (c)

Z2 +- unify ( (Y) , (c) ) procedimento bem-sucedido e retoma substituio {c/Y}

cfY~mJosio das

Z 1.+- unify( Y , e) :::::> procedimento bem-sucedido e retoma {


Z2 ~ unify(( )/, ( )):::::> procedimento bem-sucedido e retoma nil ~~

duas ~ubstituies
1

A cartilha da lgica ... 149


1

Exemplo 4.12 Consiqere a interrogao Prolog e a respectiva instanciao subseqente de vari'

veis, provocada pela prova:


?- p(M,a,h(X,b)) = p(N,Y,h(Z,R)).

M= 0084
X= 0098
N= _0084

Y=a
Z= 0098
R=b
1

Segue o "trace" d algoritmo descrito em Procedimento 4.1, que faz a unificao das duas
lj .

'':':,.,,

expresses, retomand9 a substituio unificadora (mgu) entre elas (dado que a unificao be~
sucedida, como visto tia interrogao Prolog anterior). Com o objetivo de manter o "trace" legvel,
os vrios nveis da rechrso foram enumerados.

El
E2
unify ( (p M a (h X b)), (p N Y (h Z R )) )
i ~

Fl

TI

.!

'---v-----'

F2

T2

.1

i
1
1

(a.1)

Zl f- unify (p,p) =:> niil


(a.2)

Eli

E2
Z2 f-unify ((Ma (h'.X b)), (N Y (h"ZRJ)")
~

t~

F1

Jl

F2

T2

(a.2.1)
.
[
Z l f- unify (M,N) =:> {N/M}.
Gl f-(a (h X

b)){N~} =:>(a

(h X b))

G2 f- (Y (h Z R)) {N/M} =:> (Y (h Z R))


1
1

(a.2.2)

El
E2
,----A----.
Z2 f- unify( (a (h X~)), (Y (h Z R)))
1

'

t~

f1

Tl

F2
1

! '
1

~ <>

T2

150

EdUFSCar - Apontamentos

(a.2.2.l)
Zl f- unify (a, Y) => {a/Y}
Gl f- ( (h X b)){a/Y}:::) ( (h X b))
G2 f- ( (h Z R) ){a/Y}:::) ( (h Z R))
(a.2.2.2)

Z2 f- unify ( (h X b) ), ( (h Z R)) (ambos, TI e T2, so listas vazias, i.e., ())


Fl .

F2

(a.2.2.2.1)
Zl f- unify ( (h X b), (h Z R))
t~
t.....__.

Fl TI

F2 T2

(a.2.2.2.1.1)
Zl f-unify (h,h}=> nil

(a.2.2.2.1.2)
Z2 f-unify ((Xb) ~ (Z R}}
t

't t

FITI F2T2
(a.2.2.2.1.2.1)
Zl f-unify (X, Z) => {Z/X}
(a.2.2.2.1.2.2)

Z2 f- unify ( (b), (R)) (ambos, Tl e T2, so listas vazias, i.e., ())


i

. Fl

F2

(a.2.2.2.1.2.2.1)
Zl f- unify(b,R) => {b/R}
(a.2.2.2.1.2.2.1)

Z2 f- unify ( ( ),( ) ) => nil

(a.'.!.t1.:Z}'
Z2 f- unify ( ( ),( ) ) => nil
Compondo as substituies para a obteno da substituio mgu final:
1. (a.2.2.2.L2.2.l) com (a.2.2.2.1.2.2.1) => {b/R}nil = {b/R}, que a substituio que retoma
da unificao (a.2.2.2.1.2.2);

A cartilha da lgica

2. (a.2.2.2.1.2.1) com (a.2.2.2.1.2.2) => {Z/X}{b/R}:


retoma da unificao (a.2.2.2.1.2);

151

= {Z/X,b/R}, que a substituio que

3. (a.2.2.2.1.1) com (a.2.2.2.1.2) => nil{ZIX,b/R} = {Z/X,b/R}, que a substituio que ret.or"'~~:-'-~
na da unificao (a.2.2.2.1);
~
.,: \.
..

4. (a.2.2.2.1) com (a.2.2.2.2) => {ZJ.X,b/R}nil =.~{ZIX,b/R},-que a substituio que retoma da


unificao (a.2.2.2);
5. (a.2.2.1) com (a.2.2.2) => {a/Y} {z/X,b/R} = {a/Y,z/X,b/R}, que a substituio que retoma
da unificao (a.2.2);
6. (a.2.1) com (a.2.2) => {N/M} {a/Y,z/X,b/R}
retoma da unificao (a.2);

= {N/M,a/Y,z/X,b/R}, que a substituio que

7. (a.1) com (a.2) => nil{N/M,a/Y,z/X,b/R} = {N/M,a/Y,z/X,b/R}, que a substituio final do


processo de unificao das expresses dadas. Compare essa substituio com os resultados
exibidos pela interrogao Prolog mostrada anteriormente.
No "trace" anterior, as expresses associadas s variveis G1 e G2 foram, muitas vezes,
das para simplificao.

omiB~

Exemplo 4.13 Considere a interrogao.Prolog e a respectiyainstanciao subseqente de vari-_

veis, provocada pela prova:


?- p(M,K,c) = p(Z,f(a),M).
M=c
K

f(a)

Z=c
Segue o "trace" do algoritmo destrito-em'ilrotdimento4:1, _que faz a -unificao das duas
expresses, retornando a substituio .unif:.adora,{mg.u).entre..elas.,{.dado.!}ue .a.J.lilifiao. .bemsucedida, como visto na interrogao Prolog anterior).
El
E2
r---A-----,,
unify( (p Y Me), (p Z (f a) M))
i

Fl

TI

1' ,,________.,

F2

(a.1)
Zl -<-- unify (p,p) => nil

T2

152

EdUFSCar -Apontamentos

(a.2)

El
Z2

E2

unify ( (M K e), (Z (f a) M))


1' .....,,_.

1'

FlTl

F2

'---v--' .

T2

(a.2.1)

Zl +-unify (M,Z) => {Z/M}


Gl +-- (K c){ZJM} => (K e)
G2 ~ ( (fa) M){Z/M} => ( (fa) Z)
(a.2.2)

El
,_.-..,...

E2

Z2 ~ unify( (K e), ( (f a) Z))


1' t

1'

Fl Tl

1'

F2 T2

(a.2.2.1)
Zl ~ unify (K, (f a))=> {(f a)/K}

Gl

(c){(f a)/K} =>(e)


G2 +-- (Z){(f a)/K} => (Z)

(a.2.2.2)
Z2 +-- unify ((e), (Z)) (ambos, Tl e T2, so listas vazias, i.e., ())
1'

1'

Fl F2

(a.2.2.2.1)
Zl

unify (e, Z) => {c/Z}

(a.2.2.2.2)
Z2 +-- unify ( () , () ) => mi
Compondo as substituies para a obteno da mgu final:
1;

1. (a.2.2.2.1) com (a.2.2.2.2) => {c/Z}nil = {c/Z}, que a substituio que fetoma da unificao (a.2.2.2);
1

2. (a.2.2.1) com (a.2.2.2) => {(f a)/K} {c/Z}

= {(f a)/K, c/Z}, que a subst~tuio que retorna

da unificao (a.2.2);
3. (a.2.1) com (a.2.2) => {Z/M} {(f a)/K, c/Z}

.{c/M,(f a)/K,c/Z}, que ja substituio que

retorna da unificao (a.2). Note que o resultado da composio de du~s substituies a


..

A cartilha .da lgica

153

substituio A_ue resulta da aplicao da segunda substituio aos termos da primeira, seguindo o estabelecido na Definio 4.5 deste Apontamento;
1i:,

4. (a.1) com (a.~)=> nil{c/M,(f a)/K,c/Z}

r.,.

= {c/M,(f a)/K,c/Z}, que a substituio mgu :@ili.

'

Exemplo 4.14 Con~idere a interrogao Prolog e a respectiva instanciao subseqente de v~riveis, provocada peld! prova:
?- p(g(a)) = p(X).

X= g(a)
1

,i

Segue o "trace" do algoritmo descrito no Procedimento 4.1, que faz a unificao das duas expresses, retomando a substituio unificadora (mgu) entre-elas {dado que 1l unificao bem1

sucedida, como vistd.1 na interrogao Prolog anterior) .


El
E2
,..-,_
unify( (p (g a)), (p 1X ))
l

t._,_.

Fl TI

t !t

F2ff2

(a.1)
Zl

f-

unify (p,p) => t;ril

(a.2)

El

E2
,....,._,

Z2

f-

unify ( ((g a)) (X) ) (ambos, Tl e T2, so listas vazias, i.e., ())
't

F2

Fl

(a.2.1)
Zl f- unify ( (g a), X}=> unify (X, (g a))=> {(g a)/X}
(a.2.2)
i
Z2 f- unify( ( ) , ( ) ) => nil
1

Compondo as substituies para a obteno da mgu final:


1

l. (a.2.1) com (a.2.2) => {(g a)/X}ni/ = {(g a)/X}, que a substituio que retorna da unifica-
!

o (a.2);
2. (a.1) com (a.2) .i=> nil {(g a)/X} = {(g a)/X}, que a substituio mgu final.
1

154

EdUFSGar -Apontammtot

4.2.2 Implementao Prolog do algoritmo UNIFY


A seguir, apresentado um metaprograma escrito em Prolog que implementa o processo de unificao realizado pela linguagem Prolog (por meio do operador=).
% unificando duas variaveis

unify(X,Y) :var (X),


var (Y),
X = Y.

% unificando urna variavel com urna nao-variavel


% a unificao apenas pode ser feita se a varivel em questo
% no comparece na no-variavel

unify {X, Y) : var (X) ,


nonvar (Y)

( {atomic (Y), ! ) ; not_appear (X, Y)),


X = Y.
% mesmo que anterior

unify(X,Y) :var (Y) ,


nonvar (X),
((atornic(X),!); not_appear(Y,X)),
X = Y.

% argumentos atomicos

unify{X,Y) :nonvar. (X)

nonvar{Y),
-atomic (X)

atomic (Y)

!,

X = Y.
% argumentos sao estruturas

unify(X,Y) :nonvar (X),


nonvar (Y),

A cartilha da lgica

X - . . [F, Xl l Xs] ,
Y - . . [F, Yl l Ys] ,
unify_args([XljXs], [YljYs]).
unify_args ( [] , []) .
unify_args ( [X 1Xs] , [Y 1Ys] ) : unify(X,Y),
unify_args(Xs,Ys).
not_appear(X,Y) :Y = .. L,

not_appearl(X,L).
not_appearl(X, []).
not_appearl(X, [LjLs]) :atornic (L) , ! ,
not_appearl(X,Ls).
not_appearl(X, [LjLs]) :var(L), ! ,
not ( X

== L),

not_appearl(X,Ls).
not_appearl(X, [LjLs]) :not_appear(X,L),
not_appearl(X,Ls), !.
Exemplos de interrogaes com o programa Prolog anterior carregado em memria:
?- unify(not p(X,a), not p(a,Y)).

yes
?- unify(not(p(X,a)), not(p(a,Y))).

X = a

yes

155

156

EdUFSCar - Apontttmentos

?- unify(p(X,q), p(N,M)).

=
=

0084
0084

M = q ->;

no
?- unify(p(M,g(X)),p(a,X)).

no

unify( [a], [M]).

?-

M= a
yes
?- unify([a),[MjN]).

[)

yes
?-

unify(f(g(Y)),f(Z)).

0084

= g(_0084)

->;

no

Observao 4.10 O programa Prolog que implementa a operao de unificao~ descrito anteriormente, usa alguns predicados predefinidos do Prolog (no caso, Arity Prolog): t
r

var/l: predicado que bem-sucedido se seu argumento for uma varivel !no-instanciada;
. smbolo '= ': o predicado de unificao do Prolog;
1

nonvar/1: predicado que bem-sucedido quando seu argumento estiver instanciado;


1

atomic/l: bem-sucedido quando seu argumento for um tipo atmico de dadb (tomos, inteiros,
'
.
!
reais, cadeias);
1

smbolo'==': predicado que compara dois termos e bem-sucedido se 9s termos so equi. valentes.

A cartilha da lgica . ~ 57

4.3 O PROCESSO:DE CONVERSO PARA A FORMA CLAUSAL


;J

Como
visto na Seo:4 1.9 do.. Captulo 1, a FNC de wffs de extrema importncia para viabilizar

.,
o uso do mtodo de r~soluo, uma vez que para tal mtodo ser aplicado a uma frmula ela de'!,[;e
j
~
estar representada na fNC. Para frmulas da Lgica de Predicados a tran8formao exige alglls
cuidados adicionais qiie os exigidos eni,LPgia Proposicional, fundamentando-se tambm no.~on
ceito de forma Prenexl
)

Definio 4.9 Uma fbiula a da Lgica de Predicados est na Forma Normal Prenex (FNP) se e
~
somente se a estiver na iorma:

em que cada (Q.X.),


id1 1, ... ,n (VX)1 ou (3X),
eM umaf6rmulaqueno
contm quantificadores.
1 1
1
.
.
Aparte (Q 1X 1)(Q2X2). ].{QnXn) chamada de prefixo de q. e M chamada de matriz de a.
Diz-se que a est D,a FNC se e somente se estiver na FNP e sua matriz:for uma conjuno de
disjunes de frmutaJ atmicas, negadas ou no.
'
1

As regras, a seguir, devem ser seguidas para transformar uma frmula da Lgicade Predicados
em sua representao ~m forma normal conj~tiva.
j

1. Eliminar vari~eis livres


1

Se a frmula &.j tiver uma varivel livre, X, substituir a por (3X a). Isto deve ser repetido
.
at que a f~u1a no contenha mais varivel livre.
]

2. Eliminar quant(flcadores redundantes


Eliminar todo ~uantifi.cador 'v'X ou 3X que no contenha nenhuma ocorrncia livre de X
em seu escopd ..__isto , eliminar todo quantificador 'desnecessrio'.
.

1
1

3. Renomear variveis quantificadas,mais do que uma vez


1

Se uma mesma varivel govemada.,por dois quanti:ficadores.,.subl>tituir..a.Y.ariv.elde. um


deles e todas as suas ocorrncias livres no escopo do quantificador por uma nova varivel
1
.
que no ocorra na frmula. Esse passo deve ser repetido at q~e todos os quantificadores
1

governem variveis diferentes. Assim, em vez de:


y:

(V'X p(X)) ~ (3X q(X)),


escreve-se~

(V'X p(X)) ~ (3Y q(Y))

158

EdUFSCar-Aponttt.mentos

4. Remover equivalncias e implicaes


a~

j3 substituda por sua equivalente (-,a. v j3) /\

(--,~

v a.) e a. 4

~por

(-,a. v

~).

5. Mover a negao para o interior da frmula


Os sinais de negao so movidos de fora dos parnteses para a frente dos tomos, usando
as generalizaes de De Morgan e o fato de -,(....,a.)== a. Ento, at que a ocorrncia de...,
preceda imediatamente wna frmula atmica, substitui-se:
-,(V'X)( a.) por (3X)(-,a.)
:(3X)(a.) por (VX)(-,a.)
-,(a. /\ j3) por (-,a v -,j3)

-..,(a. v j3) por (-.a. /\ -.j3)


....,....,a. por a.
Dada a frmula: (V'X (-,p(X) v (-,(V'Y (-,q(X,Y) v p(Y)))))), aps o Passo 5, obtm-se:
(V'X (-,p(X) v (-,(t/Y (-,q(X,Y) v p(Y))))))
(t/X (-,p(X) V (3Y (q(X,Y) /\ -,p(Y))))).

6. Eliminar os quantificadores existenciais - Skolemizao

Considere a wff:
(VY(3X p(X,Y)))
que pode ser lida como para todo Y, existe um X, tal que p(X,Y). Pelo fato de o quantificador existencial estar dentro do escopo do quantificador universal, est aberta a possibilidade de o X que existe depender do valor Y. Esta dependncia pode ser evidenciada por
meio de uma funo g(Y), a qual associa cada valor de Yao X que existe. Essa funo
chamada de funo de Skolem, e, se for utilizada no lugar do X que existe, o quantificador
existencial pode ser eliminado e a frmula anterior reescrita da seguinte maneira:
(V'Y)(p(g(Y) 'Y) ).

A regra geral para eliminar um quantificador existencial de uma wff substituir cada ocorrncia da varivel quantificada existencialmente por uma funo de Skolem. Tal funo
tem como argumentos as variveis quantificadas universalmente, desde que o escopo do

A cartilha da lgica

159

quantificador universal inclua o escopo do quantificador existencial sendo eliminado. Por


exemplo, ao se skolemizar a varivel Z da frmula a seguir:
('VW q(W)) /\ ('v'X(VY(3Z ( p(X,Y,Z) V ('v'U r(X,U,Y,Z))))))

obtm-se a frmula:
('VW q(W)) /\ ('v'X(V'Y(p(X,Y,g(X;J?) V ('v'U r(X,U,Y,g(X;J?)))))).

Se o quantificador existencial que est sendo eliminado no estiver dentro do escopo de


nenhum quantificador universal, ento usada a funo de Skolem sem argumentos, a
qual simplesmente uma constante. Assim, 3X p(X) toma-se p(a), em que o smbolo a
usado como referncia a um objeto do qual se sabe a existncia. O smbolo a deve ser um
novo smbolo constante, e no um smbolo j usado em referncia a objetos conhecidos.
Para eliminar todas as variveis existencialmente quantificadas de uma wff usase, repetidamente, o procedimento descrito.
7. Obter a forma normal Prenex e remover os quantificadores universais
Neste ponto no existem mais quantificadores existenciais, e cada quantificador universal -:
tem sua prpria varivel. Pode-se, pois_, mover todos os quantificadores universais para
a frente da wff e deixar que o escopo de cada um deles inclua a wff inteira; esse procedi-
mento deixar a frmula da FNP.
Desde que todas as variveis nas wffs estejam ligadas, certo que todas as variveis que
comparecem na frmula, neste ponto, esto quantific~das universalmente. Pode-se, ento,
eliminar as ocorrncias explcitas dos quantificadores universais e assumir, por conveno, que todas as variveis da matriz so universalmente quantificadas.
8. Colocar a matriz da FNP na forma conjuntiva

Qualquer matriz pode ser escrita como uma conjuno de um conjunto .finito de disjunes
de literais - forma conhecida.oome-forma .nanna}-conjuntiva; Ento, at que a matriz da
frmula seja uma conjuno.de disjunes, su~stituir:
(a 1"a) v a 3 ::::::> (a 1 v a 3) /\ (a.2 v a.3)
. a, v (a.2 /\ a.3) ::::::> (a1 v a2)" (a.1 v a.3).

Exemplo 4.15 Considere a obteno da FNC associada a cada uma das wffs a seguir, usando o
processo anterior.

160

EdUFSCar -Apontamentos

(a)
('v'X(3Y(VZ(irma(Z,Y) ~ (irma(Z,x) /\ irma(X,Y))))))

JJ
(VX(3Y(VZ((irma(Z,Y)

((irma(Z,X) /\ irma(X,Y)))" ((irma(Z,X)" irm(X,Y))) ~ (irma(Z,Y))))))

JJ
(VX(3Y(VZ((-,i1Illa(Z,Y)v(irma(Z,X)/\irma(X,Y)))/\((-,irma(Z,X)v-,inn(X,Y))v(irrna(Z,Y))))))

' JJ
(VX(3Y(VZ((-,irrna(Z,Y)v(inna(Z,X))/\(-,irma(Z,Y)virma(X,Y))A((-,i1Illa(Z,x)v-ii1Illa(X,Y))v
(inna(Z, Y))))))

. U
(VX(VZ((-,irma(Z,f(X))v(inna(Z,X))f..(-rma(Z,f(X))virma(X,f(X)))/\((-,irma(Z,X)v-,irma(X,f(X))v
(irma(Z,f(X))))))
C 1: -,irma(Z,ftX))v(irma(Z,X)
C2 : ....,inna(Z,f(X))virma(X,ftX))
C3 : -,irma(Z,x)v-,irma(X,f(X))v irma(Z,f(X))

(b)
(VX(VY((3Z(p(X,Z) /\ p(Y,Z))) ~ (3U q(X,Y,U)))))

u
(VX(VY(-,(3Z (p(X,Z) /\ p(Y,Z))) ~ ((3U q(X,Y,U)))))

JJ
(VX(VY((VZ -,((p(X,Z) /\ p(Y,Z)))

((3'U q(X,Y,U)))))

u
(VX(VY((VZ (-.p(X,Z)

-.p(Y,Z))) V ((3U q(X,Y,U)))))

JJ
(VX(VY((VZ (-,p(X,Z) V -ip(Y,Z))) V (q(X,Y,f(X,Y))))))

JJ
(VX(VY(VZ (-,p(X,Z) V -,p(Y,Z) V q(X,Y,f(X,Y))))))

C: -,p(X,Z) V -,p(Y,Z) V q(X,Y,f(X,Y))

A cartilha da lgica

(\tX(\tY( s(X, Y) +-> (\tU( p(U.X) ~ p{U,Y))))))

lJ
(\tX(\tY((s(X, Y) ~ (\tU( p(U){) p(U,Y))))" ((\tU( p(U,X) ~ p{U,Y))) ~ s(X,Y)))))

JJ
(\tX(\tY((-.s(X,Y) v ('v'U(-. p(U)f}"Vi'('tl~)))" (-.('v'tJ('p{U,Xl4.p(U;Y))Yv s(X,Y)))))

JJ
('v'X('v'Y((-,s(X,Y)

(\tU(-, p(U,X) V p(U,Y)))) /\ ((3U -.(.-:.p(U,X) V p(U,Y))) V s(X,Y))))

JJ
(\tX(V'Y((-,s(X,Y) v (V'W(-, p(WX) v p(W,Y)))) /\ (3U ( p(U,X) A -.p{U,Y)) v s(X,Y))))

JJ
(\tX(\tY((-,s(X,Y) v (\tW{-i p(W,X) v p(\v,Y))))

(((p(f(X,Y),X) "-.p(f(X,Y),Y)) v s(X,Y))

u
(\tX(\tY((-.s(X,Y)v(\tW(-.p(W){)vp(W,Y)))) A ((p(f(X,Y),X) v s(X,Y))

(-.p(f(X,Y),Y)) v

s(X,Y))))

JJ
(V'X(V'Y(VW cc:.s(X,Y)v--.p(WX)vp(W,.Y})-" (p(f(X,Y),X) v--s{X;Y)) (\ (-.p{f(X,Y),Y)) V
s(X,Y)))))

C1: -,s(X,Y) v-,p(W,X) v p(W,Y)

C2 : p(f(X,Y).X) v s(X,Y)
C3 : -.p(f(X,Y),Y)) v s(X,Y)

(d)
(V'X(p(X)) ~ (3X q(X))

lJ
(V'X(p'{X)) v "{3Y q(Y)j

.JJ .
(3X -,p(X))

(3Y q(Y))

C: -.p{a) v q(b)

. ; ;...

161

, 5. RESOLUO EM LGICA DE PREDICADOS


5.1 CONSIDERAES INICIAIS
Como visto na Seo 1.9 do Captulo 1, sistemas fundamentados em resoluo so projetados para
a produo de provas por contradio ou refutao. A regra de inferncia da resoluo pode ser
aplicada a certas wffs denominadas clusulas, que so disjunes de literais. O processo de unificao com a obteno de uma substituio, tratado no Captulo 4, fundamental para o uso de
resoluo em Lgica de Predicados, em razo das variveis e dos termos que comparecem em literais. Para o uso de resolu~ em clusulas contendo variveis, preciso encontrar uma substituio
'

'

(mgu) que possa ser aplicada a clusulas pais de maneira que essas clusulas passem a ter (quando
for possvel) literais complementares, precondio que permite o uso de resohio. Este captulo
discute o processo em detalhes, com base nos conceitos apresentados e discutidos no Captulo 4. ,
Considere S um conjunto de wffs a partir do qual se deseja provar alguma meta G (wff). Em um
processo de resoluo por refutao, primeiro se nega a wff meta e, ento, adiciona-se a negao ao
conjunto S. Esse conjunto expandido ento convertido em um conjunto de clusulas e a resoluo
usada para derivar a contradio, representada pela clusula nil.
Se G for uma wff que segue logicamente de um conjunto S de wffs, toda interpretao que sa- .
tisfaz S satisfaz G tambm, ou seja, nenhuma interpretao que satisfaz S ir satisfazer-,G. Como
visto anteriormente, um conjunto de wffs que no pode ser satisfeito por qualquer interpretao
denominado insatisfatvel. Assim, se G segue logicamente de S, o conjunto S u {...,G} deve ser
insatisfatvel. Pode ser mostrado que se a resoluo for repetilamente aplicada a um conjunto de
clusulas insatisfatveis, eventualmente a clusula vazia, nil, ser produzida. Assim, se G segue logicamente de S, o processo de resoluo dever, eventualmente, produzir a clusula vazia, a partir
da representao clausal de S u {...,q}. De maneira anloga, pode ser mostrado que, se a clusula
vazia produzida a partir da representao clausal de S u {-,G}, ento G segue logicamente de S.

5.2 UM EXEMPLO
Considere as trs expresses da Lgica de Predicados, a.seguir, que representam trs premissas:
1. a.: (V'X (p(X)
. 2. .j3: (V'X (r(X)

q(X)))

-,q(X)))

3. y: (3X (r(X)" s(X)))


Suponha que se queira provar, usando resoluo, que a concluso:

4. : (3X (s(X)" -.p(X)))

Acartilha da lgica 163

segue logicamente das trs premissas. Como visto anteriormente, o uso de resoluo condicionado representao das frmulas envolvidas em FNC. Assim, primeiramente a representao de
cada uma das premissas na FNC deve ser obtida como a seguir (lembre-se de que na representao
,..
em FNC as variveis esto implicitamente quantificadas universalmente).
' .~

'PNC(a): -..,p(X) v q(X)


..

" ~

FNC(~):-.r(X)

v -.q(X)

FNC(y): r(a) /\ s(a)


Na FNC(y), a letra a representa uma constante de Skolem. A negao da concluso e sua subse- .
qente converso para a FNC produzem: -..,(3X (s(X) "-..,p(X)))
(-.s(X) v -.(-.p(X))))

=(V'X (-.s(X) v p(X))). Portanto,

={.'v'X -..,(s(X)" -.p(X))) = (V'X

FNC():-.s(X) v p(X)
Identificando cada uma das clusulas das FNCs obtidas, tem-se:
C 1: -.p(X)

q(X)

C2: -..,r(X) V -..,q(X)


C3 : r(a)

C4 : s(a)

C5: -..,s(X) v p(X)


Padronmmdo as variveis parte, de maneira que clusulas no compartilhem variveis, tem-se:

c 1: -,p(X) v q(X)
"C; .:o:;r(Ytv .::,q(Y)

, c3 : t{a)
C4 : s(a)

C5: -..,s(Z) v p(Z)


A prova que a concluso segue das premissas usando resoluo por refutao envolve a gerao
de resolventes a partir do conjunto de clusulas, a adio dos resolventes obtidos ao conjunto e a
repetio desse pr~cesso at que a clusula vazia seja pr~duzida .
.

" - . ~.

164

EdUFSCar-Apontamentos
,.
1

A Figura 5.1 mostra a rvore de refutao para o exemplo. Via de. regra exist~m vrias clusulas
e vrios pares de literais complementar~s candidatos aplicao do processo ~e resoluo. Isso,
entretanto, no previne a aplicao da resoluo apropriada, mesmo aps a ap11cao de algumas
1
irrelevantes.
!
r(a)

-.r(Y) v -.q(Y) -.p(X) v q(X)

s(a)

-.s(Z) v p(Z)

V:

+-{a/Z}

p(Z)9

p(a)

+--{a/X}
q(X)81

-,r(a)

nil
Figura 5:1 rvore de refutao relativa prova, usando resoluo para o exemplo cotjsiderado.
1

5.3 USANDO RESOLUO

i.
'

Definio 5.1 Sejam duas clusulas candidatas a serem cllli;ulas pais, que nb tm variveis co-

muns, representadas como conjuntos de li~erais C:{LJ e C': {Mi}, com a disjm{o implcita entre
eles. Seja {IJ e {LJ e {mJ e {MJ, tal que exista a substituio 8 = mgu( {IJ/'u -.{mJ ). Diz-se,
ento, que as duas clusulas podem ser resolvidas e que a nova clusula:

({LJ - {IJ)S u ;; ({MJ- {mJ)S


1:

o resolvente das duas clusulas C e C'.

' 1:

Observao 5.1 Se duas clusulas resolvem, ento pode existir mais do que

~m resolvente, uma

vez que podem existir diferentes escolhas para o subconjunto de literais {IJ e o $ubconjunto de literais {mJ da Definio 5.1. Em qualquer caso, o nmero mximo de resolvente~ existentes finito.
O Procedimento 5.1 descreve um pseudocdigo geral do processo de resolu~, que recebe como
entrada um conjunto de clusulas, cujas variveis jforam padroniz.adas part~.
i
1
1

!;

A cartilha da lgica 165


1
1

,1

Procedimento 5.1 ProFedimento de resoluo.

lprocedure resolution(S)
1begin
! c~s

1 repeat
selecionar( {Cu('.;}.,q
:i
while not (resolvvel(CitCj)) selecionar({q,Cj},C)

fij ~ resolven~.C;,C;)

.1

e +- e u {rij}
until nil E C do

:J
,
1

!end
;

i
,.

Exemplo 5.1 Considere as duas clusulas e as vrias possibilidades de escolhas dos subconjuntos
de literais, como mostra a Tabela 5.1.

,1

C1: p(X,f(a)) v p(X,f(\)) v q(Y)


C2 : -,p(Z,f(a)) v -,q(Z)

'
1

Tabela 5.1 Diferentes escolhas dos subconjuntos de literais, quando aplicando resoluo.
1

{mJ

1{IJ
1

resolvente

{-ip(Z,f(a)) } ~ p(Z,f{Y)Yv q(Y) v-,q(Z)

{p(X,f(a))}

. {p(X,f(a)),p(X,f(Y))} {-,p(Z,f(a))} q(a) v -,q(Z)

{q(Y)}

{--,q(Z)}

p(X,f(a)) V p(X,f(Z))

--,p(Z,f(a))

{--,p(Z,f(a))} p(Z,f(a)) v q(a) -,q(Z)

{p(X,f(Y})}

Exemplo 5.2 Conside*e a sentena lgica a e a FNC(a) dadas a seguir:


!

i a: ('VX('VY p(X,Y) ~ q{X,Y))" (VY p(Y,a))


FNC(a):

(~p(X,Y)

v q(X,Y)) /\ p(Y,a)

C1:"(-,p(K,Y1v -q{K;Y))
c ,z;J?{Y,a)
;I

Como pode ser vist0 na Figura 5.2, a frmula logicamente implicada por a foi muito especiali.

zada, como conseqnccia da varivel Y, comum s duas clusulas.


1

'!

166

EdUFSCar -Apontamentos

p(Y,a)

-.p(X, Y} V q(X, Y)

unify(p(Y,a),p(X,Y))

JJ
0, ~{XIY}
Gl ~(a) 0 1 => Gl: (a)
G2 ~ (Y) 01 =) G2: (X)
q(a,a)

02 ~ unify((a),(X)) =){a/X}
0 ~ 0102 =) 0 ~ {aJY,a/X}

Figura 5.2 Efeito indesejvel causado por compartilhamento de variveis entre clusulas, quando do uso
de resoluo.
Como mostra a Figura 5.2, usando a regra de inferncia da resoluo, chega-se apenas a q(a,a).
Se a frmula original for analisada cuidadosamente, entretanto, fcil verificar que a frmula a:
(\:/X(\:/Yp(X,Y) ~ q(X,Y)) A (\:/Yp(Y,a)) logicamente implica a frmula ('VYq(Y,a)); no entanto,
no processo descrito, foi obtido apenas q(a,a)- note que houve um excesso de especializao desnecessria, quando da unificao. A razo disso se deve ao fato de ambas as clusulas compartilharem a varivel Y. Considere novamente todo o processo, agora renomeando a varivel da segunda
clusula. Como pode ser visto na rvore de derivao mostrada na Figura 5.3, q(X,a) foi obtida e,
como todas as variveis so consideradas quantificadas universalmente, tem-se ('VX p(X,a)).
a 1: ('VX(\:/Yp(X,Y) ~ q(X,Y)) A ('VZ p(Z,a))
FNC(a 1): (--.p(X,Y) v q(X,Y)) A p(Z,a)
Cl: (--.p(X,Y) V q(X,Y))
C2 : p(Z,a)
-.p(X,Y) v q(X,Y)

p(Z,a)

-~ e~unify(p(Z,a),p(X,Y))

q(X,Y)9

0 1 ~ {X/Z}

q(X,a)

G1 ~(a) G1 => Gl: (a)


G2 ~ (Y) 0 1 =) 02: (Y)
92 ~Unify((a),(Y)) =) {a/Y}
e~ 0102=) 0 ~ {XJZ,a/Y}

Figura 5.3 Processo de resoluo em clusulas que no compartilham variveis.

Exemplo 5.3 Os possveis resolventes das clusulas C1 e C2 dadas a seguir esto mostrados na

Tabela 5.2.

A cartilha da lgica

e,: p{X,f(Y)) V

q(g(Y))

167.

r(X,Z,b)

C2 : -,p(X,f(b)) v -,q(Z) v r(X,a,b)


Como ambas as clusulas tm variveis comuns, o primeiro passo reescrev-las de rruRi~p-a
: it:

que no compartilhem variveis. Reescrevendo C 2 comoC2':


CI: p(X,f(Y))

C2.:

~(U,f(b))

Tabela 5 2 Possveis resolventes de C:i e C

~2.

literal,

q(gty)) V f(X,Z;b)

y-iq(V) V r(U,a,b)

..

mgu

literal2

resolvente

p(X,f(Y)) {~(U,f(b))} {U/X,bN}. q(g(b) v r{U,Z,b) v -iq(V) v r(U,a,b)


q(g(Y))

{-,q(V)}

{g(Y)N}

p(X,f(Y))

r(X,Z,b)

V ~(U,f(b)) V

r(U,a;b)

Teorema 5.1 (Princpio de Resoluo) Sejam a. e~ duas wffs da Lgica de Predicados que tm
como resolvente a clusula C. Ento, {a.,

~} 1= C.

.,;,~:
;

- ~ ,'

Exemplo 5.4 A Figura 5.4 exemplifica o uso do princpio de resoluo para evidenciar a insatisfatibilidade de A= {{-,p(X),q(X)}, {p(a)}, {r(b,a)}, {-,q(Y),...:,r(b,Y)} }. Note que as clusulas agora
esto representadas como conjuntos de literais com ad.isjuno implicitamente assumida entre eles .

a--{v

.{-.p(X}, q(X)}

.fp(a)l

.{-,q(Y},-,r(b,Y)}

.{r(b,a)}

{q(a)}

81 ~ {a!Y}

nil .
Figura 5.4 Resoluo usada para evidenciar insatisfatibilidade.

Exemplo 5.5 A Figura 5.5. exemplifica o Uso do princpio de resoluo para evidenciar que o conjunto de clusulas A= {{p(X), q(X,Y)}, {-,p(Z)}, {-,q(a,b),p(a),p{b)} insatisfatvel. Nesta figura, .
a segnda clusula foi repetida trs vezes para facilitar a visualizao.

168

EdUFSCar -Apontammtos

{p(X), q(X, Y)}

{-,p(Z}} . {-,q(a,b),p(a),p(b)}

0<-{~

{-,p(Z)}

{q(Z,Y)}
. 01

~ {a/Z,b/Y}""
{p(a),p(b)}

02 ~ {a/Z}
{p(b)}

92 ~ {b/Z}
ni] .

Figura 5.5 rvore de refutao para um conjunto de clusulas.


;:

Exemplo 5.6 Considere o seguinte argumento represe~tado em Lgica de Predicados pelas duas
premissas e pela concluso:
~~~~.--~~~~~~~~~~~~~~~-

Premissa1

a: (VX(VY((pai(X,Y) "pai(Y,Z))

Premiss~

p: (VX(3Ypai(X,Y)))

avo(X,Z))))

Concluso 8: (3X(3Y avo(X,Y)))

A Tabela 5.3 mostra o processo de obteno da forma normal conjuntiva de;ambas as premissas
a e p, bem como a concluso negada, de maneira a construir um conjunto de clusulas para o uso
de resoluo por refutao, como mostrado na Figura 5.6.
Tabela 5.3 Obteno da FNC de duas premissas e da concluso n~gada.

=
(VX(VY(-.(pai(X,Y) "pai(Y,Z)) v avo(X,Z)))) =

a: (VX(VY((pai(X,Y) "pai(Y,Z)) ~ avo(X,Z))))

(VX(VY(-.pai(X,Y) v -.pai(Y,Z) v avo{X,Z)))


FNC(a):(-.pai(X,Y) v -,pai(Y,Z) v avo(X,Z)) (uma nica clusula com trs
literais)
p: (VX(3Y pai(X,Y)))
FNC(p): pai(f(Y),Y) (uma nica clusula com um nico literal)

A cartilha da lgica

Tabela 5.3 Continuao...

o: Concluso: (3X(3Y avo(X,Y)))


Negar a concluso: -,(3X(3Y avo(X,Y)))
FNC(-,): -,(3X(3Y avo(X,Y)}) =
(V'X-,(3Yavo(X,,Y)))

(V'X(V'Y -,avo(X,Y)))
FNC(-,8): --,avo(X,Y) (uma nica clusula com um nico literal)
~eescrevendo

o conjunto de clusulas com as respectivas variveis padroni-

zadas parte, tem-se:


C 1: (-,pai(X,Y) v--,pai(Y,Z) v avo(X,Z))
C2 : pai(f(K),K)

C3 : --,avo(U,V)

C1:(-.pai(X,Y) v -.pai(Y,Z) v avo<X.Z)}

---------,1

.'9 . ~ unify(avo(X,Z),avo(U,V))

(-.pai(X,Y) V -,pai(Y,Z))01

JJ

01 ~ {U/X; V/Z}

-.pai(U,Y) v -ipai(Y,V)
-,pai(U,Y)

-,pai(Y,V>

(-,pai(U,Y))02 4; ....................................::

JJ

2 ~ unify(pai(f(W),W),pai(Y,V))
U

-.pai(U,f(V))

02 ~ {flV)/Y, V/W}

-.paiCU.ffV>l

03 ~ unify(pai(f(W),W),pai(U,f(V)))

nil

03 ~ {f(ftV))/U, f(V)/W}

Figura 5.6 rvore de refutao de tim rgUiiiento usando resoluo.

169

170

EdUFSCar -Apontamentos

Para promover o entendimento, na Figura 5.6 esto mostrados os resultados dos processos de

unificao entre literais, bem como as clilsulas esto representadas com os operadores v, e no
como conjuntos de literais, coino supostamente deveriam estar para a .aplicao do processo de
unificao, como formalmente definido anteriormente.
Nesta figura, a clusula C2 mostrada duas vezes para uma me1hor visualizao do processo,
dado que uma das clusulas pais em duas vezes que a regra de resoluo usada. As trs substituies que possibilitaram o processo de resoluo esto mostradas na Figura 5.7.
0 1 ~ unify((avo X Z), (avo UV)} => 01

{UIX, V/Z}

82 ~ Unify((pai (fW) W), (pai Y V))=> {(fV)/Y, V/W}~ - - - - - - - - - - - - ...

. .

unify(((fW)), (Y)) => {(fW)IYJF..- - - - (W) {(fW)/Y} => (W)


',
(V) {(f W)/Y} => (V)
\

.u.
unify( (W) , (V)) => {VIWJ -

- - ~ ..

->

,'

{(fW)/Y} {V/W}

= {(fV)/Y, V/W}

,'

03 ~ unify((pai (fW) W), (pai U (fV)) => {(fV}'Y, V/W~ - - - - - - - - - - - ~.U.


unify(((fW)), (Y)) => {(f W)/Y}lt- - - .- (W) {(fW)/Y} => (W)
',
(V) {(fW)/Y}=> (V)
\

.u.

unify( (W), (V))=> {V/W~_,;. ... - .....

~ {(fW)/Y} {V/W} = {(fV)/Y, V/W}


.

.Figura 5.7 Principais passos das trs substituies usadas no proc~sso de resoluo mostrado na Figura 5.6.

Exemplo 5. 7 Considere a seguinte descrio em lngua natural:


1. Todo nmero primo outro que 2 mpar.
2. O quadrado de um nmero mpar mpar.
3. O nmero 7 primo.
4. O nmero 7 diferente de 2.
5. O quadrado de 7 mpar.
Usando resoluo, verificar se a assertiva 5 segue das premissas 1, 2, 3 e 4. Para a representao das
sentenas em Lgica de Predicados os seguintes predicados sero usados: primo/!, mpar/!, iguaV2 e
o smbolo funcional quadrado/1. Cada uma das premissas e a concluso so traduzidas para:
1. (\iX ((primo(X) "-,igual(X,2)) ~ impar(X)))

2. (VX (impar(X) ~ impar(quadrado(X))))

A cartilha

da lgica

171

3. primo(7)
4. -,igual(7,2)
5. impar(quadrado(7)).

Obtendo a FNC de cada premissa e daconeluso negada tem-se:


1. (v'X ((primo(X) " .igual(X,2)} ~ impar(X))) = (V'X (_:,(primo(X) " -,igual(X,2)) v
impar(X))) (V'X (-,primo(X) v igual(X,2) v impar(X))).

2. (\7'X (impar(X) ~ impar(quadrado(X))))

=('v'X (-,impar(.X}v impar(quadrado(X)))).

3. primo(7).
4. -,igual(7 ,2).

5. -,impar(quadrado(?)).
A Figura 5.8 mostra a rvore de refutao referente ao processo de resoluo usado, na qual

a clusula referente premissa 2 teve sua varivel renomeada, uma vez que ela j comparec~
na clusula referente premissa 1.
:f
{-.primo(X), igual(X,2), impar{X)}

{-.igual(7,2)}

{primo(7)} {-,impar(Z),impar(quadrado(Z))}

9<-{~
{-.impar(quadrado(?))}

{-,primo(7), impar(7)}

9 1 ~ {7/Z}
{mpar(quadrado(?))}

nil
Figura 5.8 rvore de refutao para um conjtm.to de clusulas.

5.4 ESTRATGIAS DE CONTROLE PARA MTODOS DE RESOLUO


A deciso de quais clusulas considerar para o uso de.resoluo, no Procedimento 5.1, feita via
estratgia de controle. Existem diferentes estratgias para controlar esse processo. A seguir, so apresentadas brevemente quatro estratgias, cujas descries esto fimdamentadas na discusso apresentada em Nilsson (1972).

172

EdUFSCar -Apont4mmtos
(

Como mostrado anteriormente, uma resoluo por refutao pode ser representada como uma
.

.. .

rvore de refutao (dentro do grafo de derivao), tendo um n raiz rotulado, nil. A estratgia de

controle busca a refutao, por meio do crescimento do grafo de derivao, at que a rvore seja
li

produzida com o n raiz rotulado pela clusula nil.

:;

li

Uma estratgia de controle para um sistema de refutao completa se seu !uso


resultar em um .
,.
procedimento que ir encontrar uma contradio (eventualmente) sempre on1e existir uma. Para ,
muitas aplicaes mais interessante ter uma estratgia eficiente do que compJeta.
r
1:

5.4.1 Estratgia em largura

Na estratgia em largura, todos os resolventes do primeiro nvel so calculados primeiro, ento os


1

do segundo nvel e assim por diante. Um resolvente do primeiro nvel obtido entre duas clusulas do conjunto base; um resolvente no i-simo nvel aquele cujo pai em rvel mais profundo
um resolvente do nvel (i-1 ). A estratgia em largura. completa mas altariiente ineficiente. A
I~

Figura 5.9 mostra o uso da estratgia no exemplo discutido na Seo 5.2.


s(a)

-,s(Z) v p(Z)

:-ip(X)

q(X)

r(a)

-,s(a)

q(a)

....---------------~ ----- - -
Figura 5.9 Estratgia para uso de resoluo em largura.

5.4.2 Estratgia do input linear


A estratgia do input linear garante que cada resolvente tenha pelo menos um 4os pais pertencente
ao conjunto bsico (conjunto inicial de clusulas). A Figura 5 .10 mostra o
exemplo discutido na Seo 5.2.

tis o da estratgia no

A cartilha da lgica

173.

-,s(Z) v p(Z)

'i

------------------------------'

....

't

------------r-------------------------nil
;!

Figura S.10 rvore de tefutao gerada pela estratgia do inp-ut linear.

..;,.

A estratgia do inp'Ut linear no completa. Existem casos em que a refutao. existe e, no entan'
to, a estratgia no a deriva.
Apesar da faha de completude, a estratgia do inpt linear freqen-

temente usada por ca~a de sua simplicidade e eficincia.


1

5.4.3 Estratgia

d~

conjunto suporte

;!
~

O controle do process9 de resoluo via estratgia do conjunto suporte garante que pelo menos um
pai de cada resolvente seja selecionado entre as clusulas que resultam da negao da concluso
1

ou de seus descendentes (o conjunto suporte). Pode ser provado que sempre que existir uma refui

tao, a estratgia do c,pnjunto suporte a identifica. A Figura 5.11 mostra a rvore de refutao para
o exemplo em questo; Comparando a Figura 5.9 com a Figura 5.11, fica evidente que a estratgia
do conj~to suporte p~oduz menos clwhs a .c aa .n1vcl.que a AStrati\gia em ]ar.glu-a.
'

174

EdUFSCar-Apontammtos

negao da concluso

u
-.s(Z) v p(Z)

s(a)

-.p(X)

q(X)

-.r(Y)

-.q(Y)

r(a)

-,r(a)

- - - rvore de refutao

nil

Figura 5.11 rvore de refutao gerada pela estratgia do conjunto suporte.

5.4.4 Estratgia da preferncia por clusulas unitrias


Esta uma modificao da estratgia do conjunto suporte, em que, em .vez de preencher cada nvel
em largura, a estratgia busca selecionar como um dos pais do resolvente uma clusula que tenha
um nico literal (clusula unitria). Toda vez que clusulas unitrias so usadas em resoluo, os
resolventes tm menos literais que seuspais. Esse processo ajuda a focalizar a busca na direo
da produo de uma clusula vazia e, assim, aumenta a eficincia. A rvore de refutao da Figura
5.12 uma que pode ter sido produzida por uma estratgia de preferncia por Clusulas unitrias,
no exemplo discutido na Seo 5.2.

A cartilha da lgica

-,s(Z) v p(Z)

s(a)

-,p(X) v q(X)

-.r(Y) v -.q(Y)

175

r(a)

--~-----~------------ -------------- ------------------------------------.r(a)

----.- -- ".' ---------------- -~ --nil


Figura 5.12 rvore de refutao usando a estratgia com base em clusulas unitrias.

A estratgia de preferncia por clusulas unitrias um exemplo de estratgia de ordenao.


Outras estratgias fundamentadas no nmero de literais em uma clusula e na complexidade

de

seus termos podem tambm ser consideradas. A ordem, na qual resolues so realizadas, cruciJi

eficincia de sistemas de resoluo.

. ..-.

6. UNIVERSO, INTERPRETAO E MODELO DE HERBRAND


6.1 CONSIDERAES INICIAIS
Como discutido anteriormente, a implicao lgica pode ser reduzida ao teste de insatisfatibili-.
dade de uma frmula na forma normal conjuntiva. Em Lgica Proposicional possvel enumerar
todas as atribuies de valores-verdade para testar insatisfatibilidade. Em Lgica de Predicados,
entretanto, seria necessrio enumerar todas as estruturas para usar essa abordagem, o que a toma
no-factvel, uma vez que existem infinitas de tais estruturas. Felizmente, entretanto, existe uma
maneira de decidir sobre insatisfatibilidade por meio do exame de apenas uma estrutura. Para cada
frmula existe um domnio especial - chamado de universo de Herbrand - e uma funo especial
- com base na interpretao de Herbrand, tal que apenas estruturas usando esse domnio e funo
devem ser con.sideradas. Esses conceitos so discutidos ~este captulo.
Como apresentado na Seo 5.1 do Captulo 5, para uma frmula G ser conseqncia lgica de
um conjunto de frmulas S, toda interpretao que for modelo de S deve tambm ser modelo de G.
Assim, nenhum dos modelos de S pode ser um modelo de --,G e, portanto, nenhum modelo pode
satisfazer S A {-.G}. Portanto, S A {-.G} deve ser insatisfatvel, o que permite dizer que, se M for
conseqncia lgica de S, S A {-.G} insatisfatvel.
Sabe-se que um conjunto de clusulas insatisfatvel (ou inconsistente) se e somente se for
falso sob todas as interpretaes, em todos os domnios. Dado que no possvel considerar todas
as interpretaes em todos os domnios, um domnio particular H ser definido, tal que S ser insatisfatvel se e somente se S for falso sob todas as interpretaes em H. Este domnio particular

chamado de universo de Herbrand de S, e as interpretaes so chamadas de Interpretaes de


Herbrand.

6.2 O UNIVERSO E A BASE DE HERBRAND


Definio 6..1 Seja S um conjunto de clusulas e H 0 o conjunto de constantes que aparecem em S.
Se nenhuma constante aparece em S, ento seja H 0 = {a}.
Parai= 0,1, .... , seja

tal que T o conjunto de todos os termos da forma fh(t)2 , ... ,tn) para todos os smbolos funcionais
fh ocorrendo. em S, tal que tj para j

= 1, ... ,n so elementos de Hr

A cartilha da lgica

177

Cada Hi chamado de conjunto constante de nvel i de S e H.., (ou simplesmente H) chamado


de universo de Herbrand de S. Assim, o universo de Herbrand coincide com o conjunto de tennos

ground que so gerados a partir dos smbolos de constantes e dos smbolos funcionais que af>a,,t;ecem em S. Trs situaes podem ocorrer:

1. se S contm ambos, constantes'e"fune8'{sTuibols funcionais), ento o universo .de Herbrand ser sempre contavelmente.in:fu:llto;

2. se S contm apenas constantes, o universo de Herbrand ser o conjunto finito daquelas


constantes;
3. se S no contm constantes, uma constante, por exemplo, a, escolhida arbitrariamente.
Dependendo da presena ou ausncia de smbolos funcionais

eJ;ll

S_, o universo de Herbrand

ser infinito ou no, respectivamente.

H 1 = H0 u {f(a),g(a)}.
8i = H 1 u {f(f(a)),f(g(a)),g(f(a)),g(g(a))}.
~ = H u {f(f(f(a))), f(f(g(a))), f(g(f(a)}};-f(g(g(a)));g(f(f(a))), g(f(g(a))), g(g(f(a))), g(g(g(a)))}.
2
H<Xl = {a, f(a), g(a), f(f(a)), f(g(a)), g(f(a)), g(g(a)), f(f(f(a))), f(f(g(a))), f(g(f(a))), f(g(g(a))), g(f(f(a))),
g(f(g(a))), g(g(f(a))), g(g(g(a))), ... }.
Exemplo 6.2 Construir o universo de Herbrand para o conjunto de clusulas S = {p(X) v q(X),
r(Z), -.s(Y) v t(W)}.

Desde que no exista constante em S, seja ento H0 = {a}.


Desde que no exista smbolo funcionai 'etn "S, H0 = H 1 =H2=

.. : ={a}.

Exemplo 6.3 Construir o universo de Herbrand para o conjunto de clulasS= {-.p(f(X),g(X),h(Y))


v q(X),r(Y)}.
Desde que no exista constante em S, seja ento H0 = {a}. Assim,
H 1 = H0 u {f(a),g(a),h(a)}
~ = H,' u {f(f(a)), f(g(a)), f(h(a)), g(f(a)), g(g(a)), g(h(a)), h(f(a)), h(g(a)), h(h(a))}
H = H u { f(f(f(a))), f(f(g(a))), f(f(h(?))), f(g(f(a))), f(g(g(a))), f(g(h(a))), f(h~f(a))), f(h(g(a))),
3

f(h(h(a))), g(f(f(a))), 1''.g{f(g(a))), g(f(h(a))), g(g(f(a))), g(g(&(f!))), g(g(h(a))),


~' '

. "' i,: '

178

EdUFSCar -Apontamentos

g(h(f(a))), g(h(g(a))), g(h(h(a))),~ h(f(f{a))), h(f(g(a))), h(fh(a))), h(g(f(a))),


h(g(g(a))), h(g(h(a))), h(h(f(a))), h(h(g(a))), h(h(h(a)))}

'

H.., = {a, f(a), g(a), h(a), f(f(a)), f(g(a)), f(h(a)), g(f(a)), g(g(a)), g(h(a)), h(f(~), b(g(a)), h(h(a)),
f(f{f(a))), f(f{g(a))), f(f(h(a))), f(g(f(a))), f(g(g(a))), f(g(h(a))), f(h(f())), f-Oh(g(a))), f(h(h(a))),
1

'

.g(f(f{a))), g(f{g(a))), g(f(b(a))), g(g(f(a))), g(g(g(a))), g(g(h(a))), g(li(f(a))), g(h(g(a))),


t,

g(h(h(a))), h(f(f(a))), h(f(g(a))), h(f(h(a))), h(g(f(a)).), h(g(g(a)}), h(J.. (h(a))), h(h(f(a))),


h(h(g(a))), h(h(h(a))), ... }

. ~emp'o 6.4 Construir o universo de Herbrand para


a,b,f(X),g(Y),c)}.
.. o conjunto de clusulas S = {p(
,.
1

Uma vez que existam trs constantes - a,b e e - em S, ento:


~={a,

b, e}.

H 1 = H0 u {f(a), g(a ), f(b), g(b), f(c), g(c)}.


'

'

H2 = H 1 u { f(f(a)), f(g(a)), f(f(b)), f(g(b)), f(f(c)), f(g(c)), g(f(a)), g(g(a)), g(f(lj>)), g(g(b)), g(f(c)),
g(g(c))}.
.
Hco ={a, b, e, f(a), g(a), f(b), g(b), f(c), g(c), f(f(a)), ... }.
Definio 6.2 Seja S um conjunto de clusulas e seja H0 o universo de Herbr81td de S. O conjunto
dos tomos ground da forma pn(t 1,t2, ,tn) para todos os predicados~ ocorren~o em S, em que t 1,
1

t2,

tn s~o elementos do universo de Herbrand de S, chamado de base de Hef brand ou conjunto

.atmico de' S e notado por B 8


Exemplo 6.5 Seja S= {p(X) v q(X), r(f(X))}.
Ento, B 8 = {p(a), q(a), r(a), p(f(a)), q(f(a)), r(f(a)), ... }.
Exemplo 6.6 Seja S= {p(X), -.p(X) v q(f(X)), -.q(f(a))}.
Ento, B 8 = {p(a), q(a), p(f(a)), q(f(a)), ... }.
Exemplo 6.7 Seja S= {-.p(X,a,Y) v -,p(b,X,Z) v q(Y,Z)}.
;'

Desde que S no tenha smbolo funcional, o universo de Herbrand de S H = j. {a,b }. Ento,


.

..,

B8 = {p(a,a,a), p(a,a,b), p(a,b,a), p(a,b,b), p(b,a,a), p(b,a,b), p(b,b,a), p(b,b,b),

~(a,a),

q(a,), q(b,a),

q(b,b)}.
Definio 6.3 Uma instncia ground de uma clusula C de um conjunto S de clusulas uma clu1'

sula obtida pela substituio das variveis em C por elementos do universo de Herbrand de S.
'

'

1
1

, A cartilha da lgica 179

Exemplo 6.8 Seja

:.

~~;~:a~.:'.

.
.:-;

A Tabela 6.1 mosrrr algumas das instncias ground das duas clusuias-C, e-C2 de S.
1

'I

Tabela 6.1 Instncias

grpund de clusulas.

~~~-.-~~~~~~~

e,: p(X)
p(a)

q(f(a)) v r(a)

p(f(a))

q(f(f{a))) v r(f(a))

p(f(f(a))) q(f(f(f(a)))) v r(f(f(a)))

f(c,b).
1

Note que P pode se, reescrito como o conjunto de clusulas S = {-,f(X,b) v f(a,X), f(c,b)}).
Considerando que H = j{a,b,c}, a instanciao ground GP de P o programa ground:

f(a,a):- f(a,b).

'I

~I

f(a,b):- f(b,b).

=j

f(a,c):- f(c,b).
1

'I

f(c,b).

1\

Note que o program~ citado pode ser reescrito como o conjunto G8 =q:,f(a,b) \i f(a,): -,f(0,15)

v f( a,b), -,f( c,b) v f(a,c~, f( c,b)}. GP essencialmente proposicional.


ij

6.3 INTERPRETA~O E MODELO DE HERBRAND


~

11

segu~, ser definida ka interpretao especial sobre o universo de Herbrand de.S chamada de ;

interpretao de Herbr~nd de S.
1

ij

180

EdUFSCar -Appntammtos

Definio 6.5 Seja

S - um conjunto de clusulas.
H - o universo de Herbrand de S.

I - uma interpretao de S sobre H.


I uma interpretao de Herbrand de S se satisfaz s seguintes condies:
1. I associa cada uma das constantes de S a ela prpria;

2. seja f um smbolo funcional n-rio e sej~ h1, ~' , hn elementos de H. Em I, a f atribuda


uma funo que associa (h 1, ~ , h.)- um elemento de Hn - a f(hl'~, .. ,hn) - um elemento
deH.
No existe restrio com relao atribuio a cada smbolo predicado em S, de maneira que
diferentes interpretaes de Herbrand podem existir, dependendo de tais diferentes atribuies.
Desde que para as interpretaes de Herbrand a atribuio a constantes e smbolos funcionais seja
fixa, possvel identificar uma interpretao de Herbrand com um subconjunto da base de Herbrand. Assim:, daqui para frente:
Uma interpretao de Herbrand 1 de um conjunto de clusulas S qualquer subconjunto de.
BS' a base de Herbrand,

entendendo que, sob a interpretao I, a qualquer tomo q em B8 atribudo o valor-verdade v se


q e I; caso contrrio, atribudo f. Com o objetivo de avaliar um dado conjunto de clusulas com
relao a uma dada interpretao de Herbrand (I), as seguintes regras.devem ser aplicadas:

1. a frmula atmica ground A v em I se e somente se A e I;


2. uma literal negada ground -.A v em I se e somente se A ~ I; .

3. uma clusula ground 1 1 v 1 2 v ... v Ln v em I se e somente se pelo menos um literal Li for


vem!;
4. em geral, uma clusula e V em I se e somente se toda instncia ground Ccr de e for V em 1
(Ccr obtida substituindo toda ocorrncia de uma varivel em C por um termo de H. Ocorrncias diferentes da mesma varivel so substitudas pelo mesmo termo);
5. um conjunto de clusulas S vem I se e somente se cada clusula de S for vem I.

Um literal, clusula ou conjunto de clusulas f em I se e somente se no for v. Uma interpretao de Herbrand , pois, uma livre atribuio de valores-verdade (v ou f) a todos os tomos da B8

A cartilha da lgica 181

Tal intezpretao deve, portanto, atribuir tambm vou f a todos os tomos em GP; assim, os valoresGP"
, ,
verdade desses tomos determinam os valores-verdade de todas as clusulas

em

Definio 6.6 Seja


S - um conjunto de clusulas.

H - o universo de.Herbrand de B.

I - uma intezpretao de Herbrand de S sobre H.


Se S for v em I, ento I um modelo de Herbrand de S.
Exemplo 6.1 O Seja S = {p(X) v -,q(X)} um conjunto de clusulas.

Desde que S tenha B8 = {p(a),q(a)}, as possveis 21Bsl = 4 intezpreta;es de Herbrand de S so:


! 0 : 0;
11 : {p(a)};

1i: {q(a};
I3:{p(a),q(a)}.
De acordo com as regras de. avaliao mostradas ~teriormente, as interpretaes 10, 11 e 13 so
modelos de Herbrand de S e 12 simplesmente uma interpretao de Herbrand de S.
Exemplo 6.11 Seja S = {p(X) v -,q(X), m(Y) v -,g(a), q(Z)} um conjunto de clusulas. Desde que

S tenha B8 = {p(a),q(a),m(a),g(a)}, as possveis


mostradas na Tabela 6.2.

21Bsl =

16 interpretaes de Herbrand de S esto

Tabela 6.2 As 16 possveis interpretaes de Herbrand.

{g(a)}

{q(a),rn(a)}

{p(a),q(a),g(a)}

{p(a)}

{p(a),q(a)} {q(a),g(a)}

{p(a),rn(a),g(a)}

{q(a)}

{p(a),m(a)} {m(a),g(a)}

{q(a),m(a),g(a)}

{m(a)} {p(a),g(a)} {p(a)~q(a),m(a)}' {p(a),q(a),m(a),g(a)}


Na Tabela 6.2, as interpretaes em negrito so modelos.
Exem~o

6.12 [Hooger, 1991] Considere o conjunto de clusulas P:

likes( chris,X) if likes(X,logic)


likes(bob, logic)

EdUFSCar-Apontammtos

182

O universo de Herbrand de P o conjunto {chris, bob, logic} e a instanciao ground de P, ie,

GP :
likes(cbris,chris) if likes(chris,logic)
likes( cbris,bob) if likes(bob,logic)
likes(cbris,logic) if likes(logic,logic)
likes(bob, logic).
que pode ser escrita, para maior facilidade de leitura, como:
CCifCL
CBifBL
CLifLL
BL

A base de Herbrand BP= {CC,CL,CB,LC,LL,LB,BC,BL,BB}. O conjunto {BL,CB} e BP ,


assim, uma interpretao de Herbrand. Para essa interpretao, GP reproduzido, a seguir, com os
valores-verdade associados escritos em lugar de seus tomos:

fiff

vifv
fiff
v

Com essa atribuio, todas as clusulas de GP so v. Esta interpretao ., portanto, um modelo


de Herbrand para GP e, portanto, um modelo de Herbrand de P.
Proposio 6.1 Seja S um conjunto de clusulas e suponha que S tenha um modelo. Ento, S tem
um modelo de Herbrand.
.

Prova: Seja I uma interpretao de S. A interpretao de Herbrand I' de S pode ser definida como:

I'= {p(t1, ... ,t) B 8 p(t 1, .,tn) v com relao a I}.


1

direto mostrar que, se I for um modelo, I' tambm ser um modelo. Os dois exemplos seguinWi moitr.am a construo de modelos de Herbrand correspondentes a modelos.

Exemplo 6.13 Seja S = {-,p(X) v q(f(X),a)} a forma clausal da frmula a: (VX (p(X) ~ q(f(X),a)))
e seja I o seguinte modelo:
a) domnio: {1,2}

A cartilha da lgica 183

b) atribuio a constante: a atribuda a 1


e) atribuies a smbolos funcionais:

f(l) f(2)

d) atribuio a smbolos predicados; .

p(l)

p(2)

q(l,1)

q(l,2)

q(2,l)

q(2,2)
V

Note que esta interpretao um modelo, desde que {--.p(l) v q(f(l),l)} e {-.p(2) v q(f(2),l)}
sejam, ambos, verdade. Para a definio do correspondente modelo de Herbrand, .neoessrie:
encontrar a base de Herbrand B 8 de S e
avaliar cada elemento de B 8 , usando a dada inteq)retao I,
a fim de selecionar como elementos do modelo de Herbrand aqueles elementos de B 8
liados como v pelo modelo I. Para o conjunto S considerado,

que'!,~'a~i~
..

: : "'

B 8 = {p(a), q(a,a), p(f(a)),. q(a,f(a)},-q(f(a),a), {}(f(a),f(a)), ... }


e a avaliao de cada elemento de BS usando o dado modelo I :
p(a)

p(l)

q(a,a)

q(l,l)

p(f(a))

p(2)

q(a,f(a))

=
=

q(l,2)

q(a,f(a))

q(2,1)

=
=
=
=
=

f
V

V
V

Portanto, o modelo de Herbrand !'correspondente a I :

I'= {q(a,a), f(p(a)), q(a,f(a)), ... }


No caso de no existirem constantes em S, a constante arbitrariamente escolhida a, que usada
para iniciar o universo de Herbrand de S, pode ser associada a qualquer elemento do domnio D.
Neste caso, quando existir mais que um elemento em D, existir mais que um modelo de Herbrand .
correspondente a I, como mostra o Exemplo 6.14.

184

EdUFSCar -Apontamentos

Exemplo 6.14 Seja S = {-.p(X) v q(f(X),Y)} com~ interpretao I, mostrada ~o exemplo anterior,
exceto que no existe atribuio constnte. A base de Herbrand de S a me~ma
do exemplo an,,
. terior, e a avaliao de cada elemento de B8 usando o dado modelo I :

ij
...

Para a= 1
p(a)

p(l)

q(a,a)

q(l,1)

p(f(a))

p(2)

=
=
=

f
V
V

Portanto, I' = {q(a,a),p(f(a)), ... }.


Para a= 2
p(a)

p(2)

q(a,a)

q(2,2)

p(f(a))

p(l)

q(a,fta))

q(2,l)

q(f(a),a)

q{l,2)

Portanto, I" = {p(a),q(a,a),q(f(a),a), ... }.


Para avaliar se um conjunto S de clusulas insatisfatvel; apenas necess~o considerar interpretaes sobre o universo de Herbrand de S. Se S for f sob todas as interpretaes sob o universo
.
de Herbrand de S, ento S insatisfatvel.
Desde que, usualmente, exista um nmero infinito dessas interpretaes, eJas devem ser orga1i
nizadas de maneira sistemtica; isso pode ser feito usando uma rvore semntica. Existem muitas
maneiras. de. expressar e de especializ.ar o Teorema de Herbrand,
talvez a espeializao
do Teore.
1
ma 6.1 seja a mais adequada ao contexto.de programao lgica.
!
~

'i

Teore_ma 6.1 Uma contradio pode ser derivada de um conjunto de clusulas S {-.G} se e somente
. se puder ser derivada a partir de algum subconjunto finito de instanciaes grourli G<sv{-,G })'
.

j:

A~wafinito garante a existncia de um procedimento efetivo (algoritmo)~ por meio.do qual a


contradio pode ser demonstrada e, portanto, indiretamente, mostrado que G ~ uma conseqncia
lgica de S. Em
trabalhos, este teorema foi reescrito em termos de insatisfatibilidade
em vez
. . outros
.
.
de derivabilidade e se toma:

A cartilha da lgica.

185

Teorema 6.2 Um conjunto de clusulas S u {-.G} insatisfatvel se e somente se algum subconjunto finito de G<svc--0i; for insatisfatvel.
~

Exemplo 6.15 Seja S ~ {p(X),-.p(f(a))}.

S insatisfatvel. Po~to, pelo TeoremadeHerbrand,_existe um conjunto.iasatisfatvel S' de instncias

ground de clusulas em S. Pode ser verifi~ado que um desses conjunto~ :-~-= {p(f(a)),-,_p(f(a))}.
ji

Exemplo 6.16 Seja S,;,. {-.p(X) v q(f(X),J(),p(g(b)),-.q(Y,Z)}.


S insatisfatvei. Um dos conjuntos insatisfatveis de instncias ground de clusulas em S :

S'~ {-.p(g(b)) V q(f(g(b)),g(b)),p(g(b)},-.q(f(g(b)),g(b))}.


Um dos aspectos Dl.ais importantes da interpretao de Herbrand que no h mais a necessidade de considerar o universo de todas possveis interpretaes e usar os objetos de cada
:
.
.
universo de toda a forip.a possvel, dado que as interpretaes de Herbrand representam todas as
outras. Todas as

inteiP~etaes de Herbrand compartilham o mesmo universo - o de If~rb:and.

Isso significa que apenas necessrio considerar instncias obtidas, substituindo variveis por
.

elementos do universo'i de Herbrand.


Com um pouco de Cfidado possvel garantir que nenhuma das possveis conjunes de instncias de clusulas seja otrutida no teste. Neste caso, o teste eventualmente ir-Oesoobrir-se-uma-meta
G conseqncia lgia de um conjunto de clusulas; entretanto, a busca por todas as possveis
instncias pode continJ~ para sempre. Os seguintes casos podem acontecer:
I'

1. G uma conseqncia lgica de S. Neste caso, a busca ir eventualmente terminar com


sucesso, ou seja~ uma contradio ser encontrada.
:1

2. G no uma con5eqncia lgica de S. Existem dois possveis subcasos a serem considerados:


2.1 todas as possveis instncias foram geradas sem que tenha sido encontrada uma contra1

<lio. Neste caso, G no uma conseqncia lgica -de S; .


2.2 instncias so geradas continuamente e uma contradio n\lD.Ca encontrada. Neste
caso, no existe ~rteza com relao a G ser ou no uma conseqncia lgica de S.

'

. .. ,!

! .. ~ !

1 LISTA DE EXERCCIOS
1) Considere uma interpretao I e as frmulas a, p, y e /... como definidas a seguir:
a: (p 4 q);

p: (p tt q); y: (-,p V p) e .: ((-ip V p) 4

(-,q V p))

a) se I[a] = v, o que se pode concluir a respeito de I[p] e I[q]?


b) se I[p] = v, o que se pode concluir a respeito de I[p] e I[q]?

= v, o que se pode concluir a respeito de I[p] e I[q]?


d) se I[a] = f, o que se pode concluir a respeito de I[p] e I[q]?
c) se I[y]

e) se Jfr] = f, o que se pode concluir a respeito ~e I[p] e I[q]?


f) se I[p] = f, o que se pode concluir a respeito de I[p] e I[q]?
g) se l[.]= v, o que se pode concluir a respeito de I[p] e I[q]?
h) se I[/...] = f, o que se pode concluir a respeito de I[p] e I[q]?
i) se I[q]

= v, o que se pode concluir a respeito de I[a], I[p], I[y] e I[/..]?

j) se I[p] = v, o que.se pode concluir a respeito de I[a], I[~], I[y] e I[/..]?

2) Construa tabela-verdade associada a cada frmula dada a seguir:


a) ((-,p 4 q) v (r A-iq)) tt p

b} (-,(p V q)) tt (-,r 4 -,q)


c) (p" q" r) 4 (-,r tt -,q)
d) (falso 4 q)

e)(falso ~ p)
f) (p 4 falso)
g) (p 4 verdade)
h) ((p tt --,q) 4 --,r) 4 (--,(r /\ --,q) v p)
i) (falso ~ q) ~ (--,r)
j) ((p v--,q) 4 r) 4 (s tt --,q)
k) (q v r) 4 ((q v s) 4 (p vs))

l)(p 4r) 4q
m)(p4r)vq
n) ((p 4 q) 4 r) ~ (p 4 (q 4 r))
o) (p 4 (q 4 r)) ~ ((p 4 q) ~ (p ~ r))
p) (p 4 q) 4 (( p /\ (q /\ r)) ~ (p /\ (p v r)))

3) Seja I uma interpretao tal quel[p

q] = f, e J uma interpretao tal que J[p 4 q] = v. O que

se pode dizer a respeito dos resultados das interpretaes a seguir?


a) I[(p v r) 4 (--,q v r)]

A cartilha da lgica

187

b) I[(p /\ r) ~ (q /\ r)]
c) I[(-,p v p) ~ (q v .p)]
d) J((p V r) ~ (q V -ir))
e) J[(P /\ r) ~ (q /\ r)]
f) J((-,p V p) ~ (q V p)]
g) J[(p /\ q) ++ (--iq)] .
4) As sentenas a seguir esto em lngua natural. Escreva cada uma delas usando a linguagem da
Lgica Proposicional.

a) Se chove, ento as ruas :ficam molhadas.


b) Joo magro ou Maria no brasileira.
c) Se Maria estuda bastante, ento Maria vai ao cinema.
d) Antonio vai ao cinema se e somente se o filme for uma comdia.
e) Ou Maria ir ao cinema e Joo no, ou Maria no ir e Joo ir.
'f) Maria tem 1Oanos ou se Maria estudiosa, ento boa aluna.
g) Uma condio necessria para que uma seqncia s convirja que seja limitada.

-.:lo

h) Se x > O, x2 > O.
i) Se Carlos materialista, Carlos ateu. Se Carlos--ateu; ento earlos materialista.
j) Se Pedro est no teatro,.ento Guilherme est no teatro tambm.
k) Se ele tiver tempo~ ele vir.
1) Se voc no sair, eu chamo a polcia.
m) Duas crianas tm o mesmo tio se e somente se elas tm a mesma me e tm o mesmo pai.
n) Sei> j, ento (i-1) > j seno j = 3.
5) Verifique se a informao dada suficiente para determinar:
a) I[(p -4 s) -4 r], sabendo que I[r] = v.
b) I[(p v r) v (s ~ q)], sabendo que I[q] = f e I[r] = v.
e) I[((p v q)++ (q "p)) ~ ((r" p) v q}j;sabentlo que1ftt] = v.
6) Determine I[p] e I[ q], sabendo que:
a) I[(p ~ q)] = v e I[(p" q)] = f.
b) I[(p tt q)] = f e I[('-ip v q)] = v.
?)Verifique quais das frmulas a seguir so tautologias, quais so contradies e quais so contin- .
gentes. Justifique sua resposta.
a) ((p A q) t\ r) ++ (p "(q "r))
b) ((p V q) V r) ~ (p V (q V r))

188

EdUFSCar -Apontammtos

d) (p vp) ~p
e) (p A (q v r)) ~ ((p A q) v (p Ar))

f) (p V (q /\ r)) ~ ((p

q) /\ (p

r))

g) (p /\ (p V q)) ~ p

h) (p V (p /\ q)) ~ p
) p ~ p

8) Seja I uma.interpretao tal que I[p] = I[q] = v e I[r] = I[s] = f. Encontre:

(a) I[(-.(p A q) v .r) v ((p tt -.q) ~ (r v-.s))]


(b) Jf.(p tt r).A (-.q ~ s)]

(c) I[(p v (q ~ (r A -.p))) tt (q v -.s)]


9) Considere a segliinte afirmativa como verdadeira:

Se Maria for escola, ento Gabriel oti Paula iro, e se ~aria no for escola, ento Paula e Guilherme iro.
possvel chegar a al~ma concluso de quem com certeza ir escola?
10) Verifique se as frmulas a seguir esto bem-formadas, de acordo com a definio.de.fnnulas
bem-formadas, e mostre todos os passos da verificao e a concluso final a que chegou.
(a) (p v -.(q A verdade)) tt falso
(b) ((verdade v q) tt -.(q A p)) ~ (r A falso)
(c) (-.(verdade tt --.(q A p)) ~ (-,-,p v -.,( q A verdade)) tt falso

2 LISTA DE EXERCCIOS
1) Verifique, usando a definio de conseqncia lgica, se pode ser escrito:

1= p ~ r
b) ((-,p ~ q) v (r /\ -iq)) 1= p ~ -,r
c) ((p ~ q), (r /\ -,q)) 1= p ~ r
d) (-i(p V q)) ~ (-,r ~ -,q), -,q 1= ((p /\ -,q) V r)
e) (p /\ q /\ r) ~(-ir~ -,q), -,r 1= p ~ r
t) p ~ (q V r), p 1= p /\ q
g) -,p ~ -,-,q, ~p 1= q
a) ((-,p ~ q), (r /\ -,q))

h) (p A q)

i) p 1= {p

(r /\ s), -,-,p, q )= s

q) /\ {p

j) p, -i-i(p ~ q)
k) p ~ (q

r)

l=q V -,q

r), q j=p

-, r, -, r ~ -.s 1= q ~ -,s

1) p, (p /\ q)

m)-,p~p

l=p

n) p ~ -,-,q 1= -,q ~ -,p


o)-,p ~ (-,q v -ir), r A p 1= p
2) Repita o exerccio 1), mas agora usando o resultado estabelecido pelo Teorema 1.1.
3) Considere que:

Se o universo finito, ento a vida curta.


Se a vida vale a pena, ento a vida complexa.
Se a vida curta ou complexa, ento a vida tem sentido.
A vida no tem sentido.

Verifique, usando regras de inferncia e e_quivalncias lgicas:


a) Se o universo finito e a vida vale a pena, ento a vida tem sentido.

b) A vida no curta.
e) A vida no complexa ou o universo no finito.
d) A vida vale a pena se e somente se a vida tem sentid~
4) Dado que:

Eu no como muito ou eu engordo.


Se chove, ento a temperatura cai.
. Se eu engordo ou a temperatura cai; ento assisto TV.
No assisto TV.

j. ,

190

EdUFSCar -Apontamentos

Verifique, usando regras de inferncia, conseqncias e equivalncias lgicas, se as assertivas a


seguir so vlidas:
a) Se eu no como muito e chove, ento Ssisto TV.
b) Se a temperatura cai ou eu engordo, ento eu no como muito.
5) Identifique os tomos, construa o argu.tnento e verifique a validade para as situaes:
a) Se Deus existe, ento a vida tem significado.
Deus. existe..
Portanto,
A vida tem significado;
b) Deus no existe.
Se Deus existisse, a vida teria significado.
Portanto, a vida no tem significado.
e) Como hoje no quinta-feira, deve ser sexta-feira.
Logo, hoje quinta-feira ou sexta-feira.
d) Se hoje for quinta-feira, ento amanh ser sexta-feira.
Se amanh for sexta-feira, ento depois de amanh ser sbado.
Comeqentemente, se hoje for quinta-feira, ento depois de amanh ser sbado.
e) Hoje um fim de semana se e somente se hoje for sbado ou domingo.
Portanto, hoje um fim de semana, desde que boje seja sbado.
f) Hoje um fim de semana se e somente se hoje for sbado ou domingo.

Hoje no sbado. Hoje no domiilgo.


Portanto, hoje no um fim de senma.
g) Ela no est em casa ou no est atendendo ao telefone.
Mas se ela no est em casa, ento ela foi seqestrada. Se ela no est atendendo ao telefone, ela
est correndo algum outro perigo.
Portanto, ou ela foi seqestrada ou ela est correndo um outro perigo.
6) Prove, usando as regras de inferncia e o princpio da substituio, que os argumentos a seguir
s.o v.lidos.

1- P-Hx
b) -.a ~ (P-4 8), -.a, P1- 8
e) -,a ~ -,-,p, -,-,-,a 1- p
a) a

d) a 1-a v a

A cartilha da lgica

e) 0.1-(a. V

J3) /\(a. V

191

f) a.~ J3, (a.~ J3) ~ (J3~a.)1- (a.~

J3)

"'

., '

7) Encontre uma frmula equivalente frmula-,(p /\ q) v r, onde s ocorra~.

8) Verifique, justificando quais dos emiricidos a seguir so verdadeiros.


a)-,(p /\ q) v q uma contradio.
b) (p ~ q /\ -,p) ~ -.q uma contradio.

e) Se p for avaliado f ento q

=-,p v q.

d) p /\ p insatisfatvel.
e) p

p satisfatvel.

f) p ~ p vlida

g) p v -.p vlida.
9) Usando tanto o mtodo da tabela-verdade quanto o de manipulao algbrica de fnnulas via
equivalncia lgica, determine a FNC equivalente a:

a)p

-,q

b) -,(p /\ q)
c){p /\ q)
d) p

t\

-,(q V r)

e) -,(p A (q v r))
f) p V (-,p /\ ,q t\ r)
g) -.(p ~ q) V (p V q)
h) -.(p ~ -,q) /\ (p /\ q)

1O) Usando tanto o mtodo da tabela-verdade quanto o de manipulao algbrica de frmulas via
equivalncia lgica, determine a FND equivalente a:

a) -:oP ~ (q "r)
b) -,q /\ ( q ~ r)
C)

(p ~ q) V -,p

d)(-,p t\ q)

e) -,(p /\ .(q v r))


f)pv(q~r))~s

g) -,(p

q) /\ {s

h) -,(p /\ q)

t\

(p

t)

q)

3 LISTA DE EXERCCIOS
1) Usando o algoritmo de Wang, prove (passo a passo) se cada uma das expresses lgicas a seguir
(ou no) um teorema do clculo proposicional (note que as expresses j esto usando~ separador do algoritmo de Wang (=>)).
a) ((-.p v q), (r /\ -.q)) ~ p 4 r

b) ((-.p 4 q) v (r A -.q)) => p 4 -.r,q .


c) ((p 4 q), (r A -.q)) ~ p 4 r
d) (-.(pv q))B (-.r 4-.q), -.q=> ((p A -.q) v r)

e)(p A.q Ar}4 (-,i~ -,q), -.r ~p ~ r


f) p 4 (q V r), p => p /\ q
g) -,p ~ -,-,q, -,-,-,p => q

I .

h) (p A q) ~ (r As), -,-,p, q => (s v q) /\ r


i) p => (p

q) /\ (p V r)
j) p, -,(p ~ q) => q,-,q
. k) p ~ (q V r), q 1= p
1) r, (-.,p /\ q) B --, r, ..., r v q 4 -,s => r
V

-,s,p

m) P ~ p => P
n) -.,p 4 -,-,q, s /\ -.p =>-.q ~ -.p
o) p B (q v -ir), -.,r A p => p, -,r

2) Considere as seguintes premissas:


Se o universo finito, ento vida curta.
Se a vida vale a pena, ento a vida complexa.
Se a vida curta ou complexa, ento a vida tem sentido.
A vida nq tem sentido.
2.1) Prove usando o princpio de resoluo (negando a concluso) se:
a) Se o universo finito e a vida vale a pena, ento a vida tem sentido.
b) A vida no curta.
c) A vida no complexa ou o univers? no finito.
d) A vida vale a pena se e somente se a vida tem sentido.
. 2.2) Repita o exerccio 2.1) usando a negao de toda expresso lgica.
3) Considere as seguintes premissas:
Eu no como muito ou eu engordo.
Se chove, ento a temperatura cai.

A cartlha da lgica

Se eu engordo e a temperatura cai, ento assisto TV.


Assisto TY.
3.1) Prove usando o princpio de resoluo (negando a concluso) se:
a) Se eu no como muito e chove, ento assisto TV.

b) Se a temperatura cai ou eu engo~do, ent~o ~u no COl)l() muito.


3.2) Repita o exerccio 3.1) usando a negao de toda expresso lgica.

. r

193

4 LISTA DE EXERCCIOS .
l) Verifique se as frmulas booleanas a e 13, ddas em cada um dos cinco itens a seguir, so equivalentes, usando o estabelecido na Observao 2.6, que diz: "uma conseqncia bvia da unicidade
da forma nonnal que duas formas booleanas so equivalentes se elas tm amesma forma normal.
Suas funes associadas so, conseqentemente, iguais."

a) a= x/ (JS e x,')

f3 =x,' :is
b) a = (x 1 x 2) (x3 E9

(x 1 'S)')

~=x1'SX3

c) a= (x 1 x 2 JS) E9 x 1
~=x1

d) a

(x 1 ~ x3) E9 (x3 ~)

13 = ('S XJ
e) a = X1 E0 (X 1 @ X2) E9 (X 1 @ X3)

13 = x1
2) Considere o conjunto das funes booleanas totais definidas de {0,1}3-+ {0,1}.
a) Escreva as funes: f 1, f1o, fi 6, f38' f 56 , f57' f 94 , f 137, ;55
b) Qual afuna resultante das seguintes operaes (considerando as definies de igualdade funcional)?
f 1 9f10

f88 :t;8
(f63 f123)'
(f59 s1) 9 ( f94 9 f94)

f2SS) E0 fll9
((f161 fs2) e f,9)'
(fl37@

3) Considere o conjunto das funes booleanas totais definidas de {0,1 }4 -+ {0,1 }. Escreva as fun-

es: fl' f'' f,6,

t;s, fS6' fs1 f94 f131 ~s

4) Minimize a forma normal definida pelo conjunto de mintenns:


a) I = {mint 1 i E I}, tal que I ={O, 1, 5, 6, 10, 12, 14}.

b) I = {mint 1 i e I}, tal que I ={O, 1, 5, 6, 7, 10, 12, 14}.


5) Use o teorema a.= a.x 9 a.x' para converter a frmula x 1'S 9 x 1x3 ffi :is'x3 sua equivalente forma .
normal disjuntiva. Minimize a forma normal.
6) Minimize a forma normal definida pelo conjunto de minterms:

A cartilha da lgica

195

a) I ={minis 1 i e I}, tal que I = {3, 4, 6, 9, 10, 11, 16, 17, 20, 21, 22, 23, 25, 30, 31}.

b) I = {min1s 1 i

I}, tal que I = {O, 1, 3, 4, 7, 16, 22, 23, 24, 25, 30}.

8) Usando mapa de Karnaugh, minimize as expresses de a), b), e), d) e) do exerccio}) desta
~L

5 LISTA DE EXERCCIOS
1) Considere um alfabeto A definido por:
Constantes: {a,b,c}
Variveis: {X,Y,Z}
Smbolos funcionais: {f/3, g/2, h/l}
Smbolos predicados: {p/3, q/2}
Quantificadores: 'ri, 3
Conectivos::"".""1, /\; v, -t, ~
Smbolos de.pontuao: (),

Verifique quais das expressesJgicas a seguir so frmulas bem-formadas. Justifique sua resposta
com base na defin9o de frmula bem-formada (Definio 3.9).
a) (3X(V'X p(X,a,b)))
b) ('v'Y('v'X p(X,Y, b)))
e) ('v'Y(3X p(X,Y,b)))
d) (V'X(3Y p(X,a,Y) -t q(f(X),g(Y)))))
e) p(X,g(a,b),Y) v q(h(h(Z)),d) /\ "".""1q(c,d))
t) p(q(X,a),b,Y)-t q(c,d)
g) (VX(3Z(V'YCp{a,b,){) -t q(g(X,Z),f(a,b,Y))))))
h) -.h(p(a,b,c)) v f(d,d)
i) (3Y((3Z(p(Z,Z,Z) V -;q(Y,Y))) V (V'X q(X,X))))
j) ('v'X{3Y(p(X,Y,f(a,b,Y)) -t (3Z p(Z,Z,d)))))
k) (V'X(3Y(p(f(a,b,c),Y,X))) -t (3Y(V'X q(h(Y),g(X,Y))))
1) (V'X(f(X,b,c) B q(h(X)))) .
m) ((a V b

c) B (b

d))

n) (V'X(q(X,Y) v "".""1p(f(a,b,X),g(Z,Z,X),h(a))))
2) Considere um alfabeto A com:
Conectivos: "".""1' A, v, -t e B
Quantificadores: V' e 3
Smbolos de pontuao: ( ) e,

Constantes: {a,b,c}
Variveis: {X,Z}
Smbolos funcionais: {f/2,g/3,h/l}
Smbolos predicados: {p/3, q/l}
a) Crie pelo menos 10 termos (explique por que so termos).

A cartilha da lgica

b) Crie pelo menos 10 frmulas bem-formadas (explique por que so wwfs).


e) Crie pelo menos 5 expresses lgicas que no so frmulas e explique por que.

'

...

3) Identifique as variveis livres e ligas nas frmulas a seguir, e quais frmulas so feclf.,a4as.
a) ('v'X(p(X,Y)

~ (3Z(q(a,Z,M) B r(Z,T,X)))))

b) ('v'X('v'Y(-.p(a) v q(X,Y))))" ('v'X(p(X))).4 (\tY(q(a,Y) v~(Y))}

e) (3Z(p(Z,a) B q(Z,Z))) ~ (V'Y(3X(p(a,X) v -.r(X,Y) v-, q(Y,b)))).


d) (V'X('v'Y(3Z(r(X,Y)" -.r(a,Y))) ~ ('v'Z s(Z,b,Z))))

e) (VX((V'Y(p(X,Y,Z) "-.r(Y,X) v -,q(X))) B ('v'Z q(Z))))


4) Construa o fechamento universal e o existencial das frmulas:
a) (V'X(p(X,Y))
b) ('v'X(p(X,Y)) /\ (3Y q(Y))

e) (V'X(3Y(q(X,Y) v p(Z))))

d) (V'X('v'Z(p(X,Y,Z,T} tt q(Z,M))))
e) (3M(3X(V'Y(p(a,b,Y) v -.q(X,b)))))

5) Coloque na notao de Kowalski as clusulas:


a) (V'X(V'Y(V'Z(-,p(X,a,b) v -,p(Y,Z) v r(X,) v s{Z,c)))))
b) ('v'M('v'N(V'T('v'Z(-,p(T,T,Z) V -,p(M,N,Z,T))))))
e) ('v'Y('v'Z('v'X(p(X,Z,Y) v r(X,X) v q(Z)))))
d) ('v'X('v'Y(V'Z(p(X,Y,b) v -,r(a,Z,X) v -,s(X,Z)))))
e) ('v'X('v'Y('v'Z p(X,Y,Z))))

: . .:,.1::,,,

;;

197

6 LISTA DE EXERCCIOS
1) Considere uma linguagem . cujo alfabefo tem os seguintes smbolos:
Constantes: {a,b,c,d}
Variveis: {X,Y,Z,W}
Smbolos funcionais : {f/l, gil}
Smbolos predicados: {p/l, q/2,s/l}
Quantificadores: V, 3 .
Conectivos:-,, A, v, ~, B
Smbolos de:pontuao: ( ) ,
Seja! a seguinte interpretao: .
Domnio: {1,2}
Atribuio a constantes:

Atribuio a variveis:

Atribuio a smbolos funcionais:

f(l)
2 .

f(2)

g(l)

g(2)d

Atribuio a smbolos predicados


p(l)
p(2)
q(l,1) q(l,2)d q(2,l)
V

q(2,2)
f

s(l)
f

s(~)
y
~

r;-

Avalie cada uma das fnnulas, a seguir, na interpretao I.


a) ('v'X(V'Y(p(X) V q(Y,c)

-,q(X,a)

s(f(W))))

b) (3X('v'Z(p(X) -~ q(Z,c))))
e) ('v'W(3Y(3Z(p(Y) v q(W,W) v -is(Z)))
d) (VX(3Y(q(X,Y) v s(X)))) v ('VW q(a,W))
e) (3X(3Y(( p(X) v s(Y)) ~ q(X,X)))) B ('v'X q(X,W))

f) (3W p(g(W))) v ('v'X(3Y q(f(X),Y))) v s(g(Z))


g) (3X( p(X) B q(X,d))) ~ (V'X(3W q(g(X),f(W))))

A cartilha da lgica

199

fi
li

2) Determine, em cada
caso, o resultado da aplicao da substituio frmula:
li
~~

Substituio

Frmula

j!

; a) gosta(X,pai(Y)
ri

\j,i b) gosta(X,pai(Y))

e= {me(Y)/X, maria/Y}
0 = -{me(maria)IX, maria/Y}

' .:_.

,.,.:

. f-

[, e) arvore(t(X, 1:.0:Y))) 9 = -.{t(ll,UJIX,. ULY}

\' d) p(X,Y,a)

0 = {Z/X, MIY,KJT,aJN}

3) Dada a substituib:
i'

8 = {f(a,Y)J?C, f(b,Z)/Y,c/Z}

!'
11

'. i

determine o menor v4lor de n> opara o qual en seja idempotente.


r

4) Determine a comppsio 0*

= 0102, tal que

!1
11

0 1 = {f(a,Y)/X, f(U,Z)/W}

!1.

;,
1

02 = {f(a,a)/X, b/Y, cN}

1'

i'

e confirme que W0*

{W0 1) 02 para W= p{V,X,Y;W).

li

5) Discuta se as substituies a seguir so vlidas e se satisfazem as propriedades: de funcionalidade


11

e idempotncia.
[~
a) {me(Y)/X, maria/Y}
b) {XIX} ..

e) {2/X, 3/X}

d) {2/X, 2/X}
e) {Y/X, X/Y}
f) {2/X, 2/Y, X/Y}
g) {f(X)/f(Y)}

6) Uma substituio 1~dempotente se e somente se 80 = 0. Verifique se .a seguinte definio tam- .


bm vlida: uma substituio 0 idempotente se e somente se dom(0) n contradomnio(0) = 0.

7) Considermdo que , cr e 0 so substituies, quais das seguintes implicaes so verdadeiras?


li

a) Se cr8 = 88, ento cr;= 8.


b) Se 8cr = 88, ento cr = 8.
e) Se cr = 8, ento cr8 89.
'. .

7 LISTA DE EXERCCIOS .
1) Verifique se cada um dos conjuntos c:ie expresses a seguir unificvel. Para aqueles unificveis,
escreva a substituio unificadora e diga se a.substituio a unificadora mais geral.
a) {p(X,g(Y),a), p(Z,M,N), p(c,K.,T); p{Xl,x2,X3)}
b) {q(a,b), q(M,Z), q(T,A), q(a,N)}

c) {q(g(M),K,L), q(a,b,c), q(N,b,Z)}


d) {p(f(f(g(a))),c,g(b)), p(X, Y,Z)} .

e) {r(a,b,f(Z)),r(X,Y,Z), r(b,b,M)}
f) {s(ZI,Z2,f(f(Z4))),s(g(a);M;N,T),.r(g(Z);c,dJJ}

2) Classifique as clusulas a s.eguir.eni: defiidas, indefinidas; unitrias e meta;.


a) definida(X) v indefinida(X) v negativa(X) v ...:..,clausula(X).
b) -,temperatura(frio) v -,temperatura(quente).

c) -,amigo(X).
d) rico(X) v -,rico(X) v mesquinho(X).
e) -,irma(X,Y) v gosta(X,y).
f) -,gosta(antonio,fisica) v gosta(antonio,futebol) v -,gosta(antonio,arroz).

g) -,gosta(ana,feijoada) v -,gosta(ana,futeboi) v -,gosta(ana,camaval).


h) me(X,Y) v-ifilha(Y,X) v -,mulher(X).
i) p(X,Y) V p(Y,Z) V p(Z,M).
3) Identifique quais clusulas do exerccio 2) so clusulas de Horn.

4) Usando o Procedimento 4.1 (unify), mostre todos os passos da tentativa de unificao (quando
bem-sucedida, mostre tambm todos os passos na obteno da substituio final que viab\Iiza a .
. unificao) de:
a) p(a,b,Z) & p(X,K,.g(X))
b) q(f(f(b)),M,g(a,b)) & q(M,N,g(Y,Z))

c) p(X,X,g(X,Y)) & p(a,b,K)


d) p(X,X,h(a,b,Z)) & p(X,Y,K)
e) q(a,b) & q(X,c)

t) q(g(a,b,c),h(Z),Z) & q(M,K,P)


g) q(U,V) q(f(W),W)
h) p(U,f(V)) & p(f(W),W)

5) Considere o seguinte conjunto de axiomas, escritos na forma clausal, como:


-,p(X) v q(X) v r(f(X))

A cartilha da lgica

-,q(Y)

201

s(Y)

1q(Z) V t(Z)

.r(W) V s(W)

' ti. .

-,r(T) v u(T)
p(g(U))

~-

q(h(U))

Verifique, usando resoluo, se a seguinte assertiva lgica segue logicamente dos axiomas:
(3M(3N({s(M) A t(M)) v (u(N)

s(N)))))

6) Suponha que sejam vlidas as seguintes assertivas:


a) .cachorro(rex) v (late(rex) /\ morde(rex))
b) todos os terriers ~so cachorros: ('v'X (terrier(X) 4 cachorro(X)))
e) ('v'Y(late(Y) ~ barulbento(Y)))
..

Usando resoluo, prove se a seguinte concluso segue logicamente das assertivas:


(3Z(-,terrier(Z) v barulhento (Z)))
7) Considere o axioma: (v'X(3Yp(X,Y)}J.
Usando resoluo, prove que a expresso lgic.a a seguir . ::verdade:
(VX(3Y(3Z(p(Z,Y)

p(Y,X)))))

8) Dadas as premissas:
(a) (VX(estuda(X) ~ aprende(X)))
(b) (VX(aprende (X) 4 professional(X)))
prove que a concluso a seguir segue das premissas:
(VX(estuda {X,) ~_profession~.lXJ))
9) Usando resoluo, prove para cada item..a,.seguir...a..coocluss:>,-indicada. .Em..cada.item-esto.r.epresentadas: as sentenas em lngua natural e sua traduo em. expresses da Lgica de Predicados.
Vrios desses argumentos encontram-se descritos em Hegenberg (1976).
a) TQdos os poetas so sensveis. H poetas; logo, h (pessoas) sensveis.
(VX(poeta(X) 4 sensvel(X)))
(3X poeta(X))
logo
(3X sensivel(X))

" ' .

202

EdUFSCar-Apontamentos

b) Alguns felinos so tigres. Todos os tigres so belos, logo alguns felinos so belos . .
(3X(felino{X) /\ tigre(X)))
(VX(tigre(X) ~ belo(X)))
logo
(3X (felino(X) /\ belo(X)))
c) Todos os so-carlenses so pauliStaS; todos os paulistas so brasileiros; 19go, todos os socarlenses sobrasileiros. .
(\fX(sancarlense(X)~ paulista(X)))

(VX(paulista(X) ~ brasileiro(X))) .
logo
(VX(sancarlense(X) ~ brasileiro(X)))

'

'i

d) Nenhuma baleia peixe. Moby Dick baleia; logo, Moby Dick no peixe.
(VX(baleia(X)

-,peixe(X)))

baleia(mobydick)

logo
-,peixe(mobydick)
e) Nenhum jogador pobre. Alguns pobres so alegres; logo, alguns jogadores:no so alegres.
(VX(jogador(X) ~ -,pobre(X)))
(3X (pobre(X) /\ alegre(X)))
logo
(3X (alegre(X) /\ -.jogador(X)))

f) H uma pessoa em quem ningum acredita. Logo, h uma pessoa que no acredita em si mesma.
i

(3Y(\iX( ...,.,acredita(X,Y))))
logo
-,acredita(a,a)
g) Somente os rpteis so cobras. igumas cobras so perigosas. Assim, nem todo rptil deixa de
ser perigoso.
(VX(cobra(X) ~ reptil(X)))
(3X ( cobra(X) /\ perigosa(X)))
assim
-,(VX(reptil(X) ~ -,perigoso(X)))

A cartilha da lgica

203

h) Ou alguns carros so velozes ou no h carro que no seja bom. Ora, no se d que todos os
carros sejam bons. Logo, alguns carros so velozes.
(3X (carro(X) "veloz(X))) v -{:IX (carro(X)" -,bom(X)))
-i('v'X(carro(X)

:.

veloz(X)))

'"

logo
(3X (carro(X) /\ veloz(X)))

i) Todos os moca-dores

oo bftirro so ciclistas ou pobres. Nem todos os moradores do bairro so

pobres. Logo, algum ciclista no pobre.


('v'X(morador(X)

( ciclista(X) v pobre(X))))

(3X (morador(X) /\ -,pobre(X)))


logo
(3X ( ciclista(X) " -,pobre(X)))
j) Todos os franceses so amveis. S os generosos so amveis. Para ser generoso pre.;Ciso ser
honesto. H industriais desonestos. Logo, nem todo industrial francs.
('v'X(frances(X) ~ amavel(X)))
('v'X(amavel(X)

generoso(X)))

('v'X(generoso(X) ~ honesto(X)))
(3X (industrial(X) /\ ..bonesto(X)))
logo
(3X (industrial(X) /\ -,frances(X)))
10) Usando resoluo, verifique se possvel deduzir a concluso: -,('v'X(-.(blabla(X) "
blablal(X)))) a partir das premissas:
('v'X(-.(blabla(X) "blablal(X))))---+ (3Y(.::::;(b1ab1at(Y) v'b1abfa2(Y))j)
('v'X(blablal(X) v blabla2(X)))

. BIBLIOGRAFIA E REFERNCIAS
BERZTISs, A. T. Data Structures. New York, USA: Academic Press, 1975 .
. CHANG, C. L.; LEE, C. -T. Symbolic Logic anti Mechanical Theorem Proving. New York, USA:
Academic Press, 1973.
COEl..HO, H.; CorrA, J. C. Prolog by Examples. Berlin, Germany: Springer-Verlag, 1988. .
G~,

W. K.; TREMBLAY, J. -P. Logic and Discrete Mathematics ~a Computer Science.Per-

spective. New Jersey, USA: PrenticeHall, 1996..


li:EGENBERG,

L. Simbolizao no clculo de predicados. So Paulo, Brasil: Ed. USP, 1976. V.

HEG:ENBERG,

L. Deduo no clculo sentenciai. So Paulp, Brasil: Ed. USP, 1977. v. II.

HEGENBERG,

L. Tabelas e argumentos. So Paulo, Brasil: Ed. USP, 1978, v. L

HEGENBERG,

L. Deduo no clculo sentencia!. So Paulo, Brasil: Ed. USP, 1978. v. rv.

m.

HoooER, C. J. Essentials o/Logic Programming. New York, USA: Oxford University Press, 1991.

HtITH, M.; RYAN, M. Logic in Computer Science - Mode/ling and Reasoning bout Systems. Cambridge, England: Cambridge University Press, 2004.
KowALSKI, R. A. Logic for Problem Solving. Elsevier-North Holland, London, England: Artificial

Intelligence Series, 1979. v. 7.


MoNARD, M. C.; NICOLEITI, M. e. Mtodo sinttico de prova de teoremas - algoritmo de Wang,
Notas do1CMSC-USP, n. 62, 64 p., 1990.
MoNARD, M. C.; NrcoLETII, M, C.; Naouem, R H. O clculo proposicional: uma abordagemvoltada
compreenso da linguagem Prolog- Verso 1.0. Notas Didticas do ICMSC-USP, n. 5, 68p., 1992.
NIENHWS-CHENG, S. H.; WOLF, H. Foundations oflnductive Logic Programming. Heildelberg, Germany: Springer-Verlag, 1997.
NILSSON, N. J. Principies ofArtificial lntelligence. Palo Alto, CA, USA: Tioga Publishing Co., 1972.
Nn..ssoN, N. J.; MALuszYNSKI, J. Logic, Prograniming and Prolog. New York, USA: John Wiley &

Sons, 1990.

A cartilha da lgica

205

NOLT, J.; RoHATYN, D. Lgica. So Paulo, Brasil: McGraw-Hill, 1991. (Coleo Schaum:).

SILVA, F. s. C.; FINGER, M.; Mao, A. e. V. Lgica para computao. So Paulo, Brasil; Ed. Thomson, 2006.
SINGH, A.

Logics for Computer Science,., New.D~lhi, lndia.:..P..r~ti.ce~llall of.India, 2004{" e . ~ .

SoUZA, J. N. Lgica para cincia da computao.Rio de Janeiro, Brasil: Editora Campus,-2002.


W ANG, H. Towards Mechanical Mathematics. IBM Journal of Research and Development, v. 4,
p. 2-11, 1960.
W ANG, H. A Survey ofMthematical Logic. NewYork; USA: North-Holiand Pubfhing Company,
1964.

Вам также может понравиться