Você está na página 1de 39

1

Apostila de Lgica

Professor Ruy J. Guerra B. de Queiroz
Transcrito por Eduardo Gade Gusmo














2
Sumrio


Primeira Unidade Lgica Proposicional

Introduo lgica pg.3
Introduo lgica simblica pg.9

Sintaxe da Lgica Proposicional pg.12

Semntica da Lgica Proposicional pg.20
O problema da Satisfatibilidade e correlatos pg.23
Consideraes sobre o custo computacional do SAT pg.27
O Mtodo dos Tableaux Analticos pg.28
O Mtodo da Resoluo pg.34
Sentenas Condicionais pg.37
O Mtodo da Deduo Natural pg.39

















3
1 Introduo

Voc consegue descobrir quais das sentenas abaixo so
consistentes?

Seria errado censurar programas violentos na Televiso, pois o
comportamento das pessoas no chega a ser afetado pelo que elas
vem na telinha. Igualmente, seria uma boa idia se ter mais
programas mostrando o lado bom do brasileiro, pois assim
calaramos a boca dos que esto sempre denegrindo o Brasil.

Nunca desenhei nada na minha vida. Mas se eu sentasse e me
concentrasse, bastariam apenas alguns minutos para eu produzir
algo to valioso quanto qualquer coisa que Picasso tenha feito.

Walter se associou ao clube h dois anos, e tem sido um de seus
scios mais leais desde ento. Ano passado ele pagou pelas frias
de exatamente aqueles scios que no pagaram por suas prprias
frias.


Lgica: Estudo dos princpios e critrios da argumentao e
inferncia vlidas.

Elementos Bsicos de um argumento: Sentenas e,
possivelmente, inferncias.

Tipos de Sentenas envolvidas em um argumento:
Proposio: Enunciados que podem ser verdadeiros ou
falsos.
Lgica Aristotlica: Objetos e predicados.


4
Classificao das Sentenas:
Simples: x P e x no P, onde x o objeto e P um
predicado.
Compostas:
- Universal Afirmativa: Todo A B
- Universal Negativa: Nenhum A B
- Existencial Afirmativa: Algum A B
- Existencial Negativa: Algum A no B

Inferncia: Analisar as premissas e chegar a uma concluso.

Premissa 1 Ex: Todo A B Todo A B
Premissa 2 Todo B C Algum B no C
... Todo A C Algum C no A
Premissa n
Concluso
Legenda para os exerccios:
AaB Todo A B
Exerccios: AeB Nenhum A B
AiB Algum A B
1) XaY, ZoY XiZ AoB Algum A no B
Resoluo:
Premissas:
XaY Todo X Y ZoY Algum Z no Y
X=Y Z Y Z
Z Y
Y


Atravs do Diagrama de Venn eu formulei todos os casos
possveis para a primeira premissa (apenas um caso, no diagrama
mais a esquerda), e para a segunda (todos os outros 3 casos).
5
Concluso: XiZ Algum X Z. Vemos que a concluso
insegura pois, caso Z e Y sejam disjuntos (diagrama mais a direita),
e aplicando primeira premissa (onde X = Y), nenhum X ser Z,
gerando uma inconsistncia.

Veja que no exemplo anterior eu formulei todos os casos onde a
premissa verdadeira (atravs do Diagrama de Venn), e consegui
achar um caso onde a concluso no se mostrou correta. Portanto eu
afirmo que essa concluso insegura, mesmo havendo casos onde
ela se mostra consistente.

2) PeR, RiQ QoR 3) Min, Ron MeR
4) SoT, UiS TeU 5) PiQ, ReQ RiP
6) PoR, QiR PeQ 7) AeB, BiC CeA
8) MiN, LeN MiL



Quadrado da Oposio:


I Contrrias II
Universal Afirmativa Universal Negativa
(Todo A B) (Nenhum A B)
Contradi-
Sub- trias Sub-
Alterna Alterna


III IV
Particular Afirmativa Particular Negativa
(Algum A B) Subcontrrias (Algum A no B)



6
Tabelas-Verdade do Quadrado da Oposio:

I II III IV
V F V F
F V-F V-F V


III I II IV
V V-F F V-F
F F V V


As tabelas acima mostram, para um dado estado (verdadeiro ou
falso), de um dado tipo de sentena (I, II, III, IV, veja o que cada
nmero corresponde no Quadrado da oposio), o(s) estado(s)
possvel(is) nos outros tipos de sentena.


Definies:

Contradio: Duas Sentenas esto em contradio se, em todas
as situaes possveis, elas tm valor-verdade opostos. Diz-se que as
sentenas so contraditrias.

Inferncias: Uma figura de inferncia uma seqncia de
sentenas na qual a ltima a concluso e as restantes so as
premissas.

Inferncia Logicamente Vlida (ou segura): Uma figura
de inferncia dita logicamente vlida (ou segura) se, em todas as
situaes nas quais as premissas so verdadeiras, a concluso
tambm verdadeira.

II I III IV
V F F V
F V-F V F-V
IV I II III
V F V-F V-F
F V F V
7
Um argumento uma seqncia ou conjunto de sentenas. Ele
vlido se:
I. No contm contradio, ou seja, no contm duas
sentenas S1 e S2 tal que elas sejam contraditrias.
II. Toda figura de inferncia utilizada no argumento
logicamente vlida.
III. O conjunto de sentenas correspondente ao argumento
consistente.

Consistncia: Um conjunto S de sentenas dito inconsistente se
existe um subconjunto S1 de S, tal que a figura de inferncia que
toma S1 como premissa e uma dada sentena P como concluso
logicamente vlida, ao mesmo tempo em que existe um outro
subconjunto S2 de S, tal que a figura de inferncia que toma S2
como premissa e a contraditria de P como concluso logicamente
vlida.
Um conjunto de sentenas consistente se no inconsistente.


Exemplo:

A, B e C so suspeitos de um crime, foram fornecidos os seguintes
depoimentos:
A: B culpado e C inocente.
B: Se A for culpado, ento C tambm .
C: Eu sou inocente, mas pelo menos um dos outros dois
culpado.

Como podemos observar, no h contradio aparente, ento
temos que usar algum mtodo para descobrir alguma relao entre
os depoimentos.

Vamos estabelecer smbolos para poder escrever as sentenas de
uma forma padronizada:
8
A culpado: X Operaes:
B culpado: Y 1- e: &, ^ 3- no: -, , ~,
C culpado: Z 2- ou: v 4- se ento:

Escrevendo os depoimentos com esses smbolos:
A: Y ^ Z
B: X Z
C: Z ^ (X v Y)


























9
Lgica Simblica (1830)
Gottlob Frege (1879)
Uma linguagem pura para escrever conceitos

o Sintaxe: Variveis representam sentenas atmicas.
Operadores:
^ = Conjuno v = Disjuno
= Negao = Implicao
= quantificador existencial = quantificador universal

Smbolos auxiliares: -, (, )

o Semntica: Leis que regulam o significado de sentenas
compostas em relao ao significado das sentenas que a
constituem.

Nos prximos captulos vamos estudar cuidadosamente essas duas
caractersticas da lgica proposicional (primeira unidade) e da lgica
de predicados (segunda unidade).
Porm antes, veremos algumas definies teis para mostrar o
alfabeto simblico que ser visto no prximo captulo.

Leitura interessante como introduo aos captulos seguintes:
http://en.wikipedia.org/wiki/Logic
http://en.wikipedia.org/wiki/Aristotle
http://nostalgia.wikipedia.org/wiki/Mathematical_logic
http://pt.wikipedia.org/wiki/Silogismo


Definies:

Sintaxe da Lgica Simblica: Estudo da forma das
expresses da Lgica Simblica.

10
Alfabeto Simblico:
Variveis: x, y, z, ...
Constantes: 0, 1
Operadores: ^, v, ,
Smbolos Auxiliares: (, )

Objetivo Inicial: Definir precisamente (i.e. matematicamente) o
conjunto das expresses bem formadas, montadas com o alfabeto
simblico (conforme mostrado acima).

O conjunto das expresses bem formadas (EBF) definido da
seguinte forma:
I. Toda varivel EBF;
II. Toda constante EBF;
III. Se P EBF ento (P) EBF;
IV. Se P e Q so EBF ento (P^Q) EBF;
V. Se P e Q so EBF ento (PvQ) EBF;
VI. Se P e Q so EBF ento (PQ) EBF;
VII. Nada mais EBF;

Etapas para a formao do conjunto das EBF:

Etapa 1) EBF = {0, 1, x, y, z}
Etapa 2) EBF = {(0),(1),(x),(y),(z)}
Etapa 3) EBF = {(0^1), (0^0), (1^0), (1^1), (0^x), (x^0), (0^y),
(y^0), (0^z), (z^0), ...}
Etapa 4) etc...

Nas Prximas etapas eu vou aplicando os outros operadores, at
formar um conjunto com todos os elementos de todas as etapas.

Conjunto Indutivo:
Definio: Suponha que A seja um conjunto, e que x seja um
subconjunto prprio de A (i.e. x C A). Suponha tambm que F
11
seja um conjunto funes sobre A, cada uma com sua aridade.
Um subconjunto Y de A dito indutivo em relao a x e F se:
I. Y contm x;
II. Y fechado sob as funes de F;

Observaes:
- Aridade: Caracterstica da funo relativa aos parmetros que
ela recebe. Por exemplo, a funo eleva ao quadrado receba um
nmero e retorna o seu quadrado, por isso uma funo unria; J a
funo soma recebe dois nmeros e retorna a soma deles, portanto
uma funo binria.
- O conjunto A j um conjunto indutivo em relao a F.

Vamos procurar um mtodo para achar o menor dos conjuntos
indutivos em relao a x e F.
Que tal aplicar a operao de interseo famlia de todos os
possveis conjuntos indutivos em relao a x e F.
Essa famlia seguramente no vazia, pois pelo menos A est
nela. Tome a interseo dessa famlia. O resultado ser o menor dos
conjuntos indutivos em relao a x e F (vamos cham-lo de X).

No prximo captulo vamos definir a lgica proposicional e
relacion-la aos conceitos de conjunto indutivo para definir sua
sintaxe.









12
Lgica Proposicional

Sintaxe da Lgica Proposicional:
Estudo da forma das expresses da lgica proposicional.
Dado o alfabeto simblico a partir do qual construiremos as
expresses que representaro sentenas da lgica
proposicional. Desejamos definir precisamente o conjunto de
palavras sobre que iro fazer parte do que consideramos
expresses bem formadas (ou legtimas).
O conceito de conjunto indutivamente definido exatamente o
que procuramos. ( ver definio no captulo anterior)

Suponha que A seja o conjunto de todas as palavras sobre o
alfabeto simblico = variveis U constantes U operadores U
smbolos auxiliares. Imagine que X seja o conjunto de expresses
atmicas formadas por uma varivel ou uma constante. Assuma
que F seja o conjunto de funes que produzam palavras sobre ao
receber palavras sobre como entrada. Mais especificamente,
suponha que F conter as funes que tero o papel de produzir
expresses contendo os operadores conectivos.

Ou seja, A = * F = {f^,fv,f,f}
Variveis = {x,y,z} Constantes = {0,1} Operadores = {^,v,,}

f^: A x A A fv: A x A A
w1, w2 (w1 ^ w2) w1, w2 (w1 v w2)

f: A x A A f: A A
w1, w2 (w1 w2) w (w)

Exemplo: w1 = x( w2 = )0^v
f^(w1,w2) = f^( x(,)0^v) = (x( ^ )0^v)
f (w1,w2) = f ( x(,)0^v) = (x( )0^v)
13
Desejamos encontrar o menor dos conjuntos indutivos sob X e F.
Para isso podemos imaginar uma famlia de subconjuntos de A
que so todos indutivos sob X e A. Essa famlia no vazia, pois o
prprio A pertence a ela. Agora tome a interseo de todos os
conjuntos dessa famlia, o resultado ser, naturalmente, o menor dos
conjuntos indutivos sob X e F. (como foi visto anteriormente, a
notao deste menor conjunto indutivo formado dessa forma X).

Podemos tambm imaginar um processo mais construtivo de
obter o menor conjunto indutivo sob X e F. Trata-se de um processo
iterativo que comea pelo X, e vai completando com o que falta para
que se chegue a um conjunto que seja fechado sob F, portanto
indutivo sob X e F.

Matematicamente:
Xo = X
Xn+1 = Xn U {f(x1,...,xk) / (x1,...,xk) Xn , f F, aridade(F) = k}

Agora tome a unio de todos os Xi , 0 i < infinito
Obtemos assim, no limite, um conjunto que contm X e fechado
sob F, portanto o fecho indutivo de X sob F. Denotamos esse
conjunto por: X .

Resta-nos mostrar que esses dois mtodos que descrevemos para
obter o nosso menor conjunto indutivo sob X e F, resultam num
mesmo subconjunto de A.

Lema: X = X

Prova: (esboo)

i) X est contido ou igual a X
1- X contm X? 2- X fechado sob F?

14
ii) X est contido ou igual a X

Base: Xo est contido ou igual a X
Caso Indutivo:
Hiptese de Induo: Xk est contido ou igual a X
Tese: Xk+1 est contido ou igual a X

Xk+1 = Xk U {f }
Xo U X1 U X2 U ... est contido ou igual a X
Xi est contido ou igual a X 0 i < infinito


Conjuntos Livremente Gerados

Conforme dissemos anteriormente, desejamos caracterizar
precisamente (i.e. matematicamente) o conjunto das palavras sobre o
alfabeto simblico = variveis U constantes U operadores U
smbolos auxiliares, que sejam expresses da lgica proposicional.
Usando os conceitos de conjunto indutivo chegamos a um ponto em
que temos condies de:
I. Reconhecer as palavras sobre que so proposies da
lgica proposicional.
II. Usar o mtodo da prova por induo para provar uma
afirmao do tipo Todo elemento do conjunto das
proposies tem a propriedade de ....

Definio (Conjunto Livremente Gerado):
Seja A e X conjuntos, X est contido em A, e F um conjunto de
funes sobre A, cada uma com sua aridade. O fecho indutivo X de
X sob F ser livremente gerado se:
I. Todas as funes de F forem injetoras.
II. Para quaisquer duas funes f e g de F, o conjunto imagem de
f em relao a X e o conjunto imagem de g em relao a X
so disjuntos.
15
III. Nenhum elemento de base X resultado de algum f de F
aplicado a argumentos vindos de X.

Lema: O conjunto PROP das proposies da lgica proposicional
livremente gerado.

Observao: Todo conjunto livremente gerado tem a chamada
propriedade da leitura nica, i.e., qualquer elemento tem uma
nica formao. Isso significa que o processo de definio recursiva
de funes sobre conjunto livremente gerado seguro
matematicamente.

Definindo Recursivamente funes sobre PROP:
Legenda: E = expresso atmica;
E1,E2 = expresses atmicas ou no;

1) Contando o nmero de parnteses (de uma dada
proposio):

o f: PROP IN (naturais)
- f(E) = 0 - f((E1)) = f(E1)+2
- f((E1^E2)) = f(E1)+f(E2)+2 - f((E1vE2)) = f(E1)+f(E2)+2
- f((E1E2)) = f(E1)+f(E2)+2


2) Contando o nmero de operadores:

o g: PROP IN
- g(E) = 0 - g((E1)) = g(E1)+1
- g((E1^E2)) = g(E1)+g(E2)+1 - g((E1vE2)) = g(E1)+g(E2)+1
- g((E1E2)) = g(E1)+g(E2)+1


16
3) Montando a rvore sinttica:
4) Montando a rvore sinttic III ^
Exemplo de rvore sinttica: II ^
I. (0v1) , (yz) x
II. ((0v1) ^ (yz)) , (x) I v
III. ((x) ^ ((0v1) ^ (yz))) 0 1 y z


o h: PROP (representao grfica de rvores)

^
- h(E) = E - h((E1)) = h(E1) - h((E1^E2)) = h(E1) h(E2)
V

- h((E1vE2)) = h(E1) h(E2) - h (E1E2) = h(E1) h(E2)


4) Calculando o Posto de uma rvore:

o p: PROP IN
- p(E) = 0 - p((E1^E2)) = 1 + max(p(E1),p(E2))
- p((E1)) = 1 + p(E1) - p((E1vE2)) = 1 + max(p(E1),p(E2))
- p((E1E2)) = 1 + max(p(E1),p(E2))


5) Obtendo o conjunto das subexpresses:

o s: PROP PROP
- s(E) = {E} - s((E1^E2)) = {(E1^E2)} U s(E1) U s(E2)
- s((E1)) = {(E1)} U s(E1) - s((E1vE2)) = {(E1vE2)} U s(E1) U s(E2)
- s((E1E2)) = {(E1E2)} U s(E1) U s(E2)



17
Lema: Para toda proposio o nmero de parnteses de
par.

Prova: Por induo sobre a complexidade de

I) Caso Base: atmica

A funo f conta o nmero de parnteses de uma dada expresso.
(veja sua definio no tpico anterior)
f() = 0 e 0 par c.q.d. (como queria demonstrar)

II) Casos Indutivos:

i) da forma ():
Hiptese de induo: f() par.
Tese: f(()) par.

Como f(PSI) par, ento f() + 2 tambm .
Como f(()) = f() + 2.
Logo, f(()) tambm par. c.q.d.

ii) da forma ( ):
Onde = ^, v,
Hiptese de induo: f() par e f() par.
Tese: f(( )) par.

Da definio de f:
f(( )) = f() + f() + 2

Como f() par, f() tambm par.
Ento f() + f() + 2 tambm par.
Logo f(( )) par. c.q.d.
18
Lema: Para todo PROP, o nmero de subexpresses de
no mximo igual ao dobro do nmero de operadores de
+ 1. (i.e. |s()| 2g() + 1).

Prova: Por induo sobre a complexidade de .

I) Caso Base: atmica.
Ento s() = {}, e g() = 0
Da |s()| = 1. Logo |s()| 2.0 + 1 c.q.d.

II) Casos Indutivos:

i) da forma ( ):
Hiptese de induo: |s()| 2.g() + 1
Tese: |s( )| 2.g( ) + 1

Temos que provar que a tese verdadeira, tendo a hiptese de
induo como verdadeira.
Ora, pela definio de funo que obtm o conjunto das
subexpresses de uma dada proposio, temos que:

s( ) = { } U s()
|s( )| = |{ } U s()|
|s( )| = |{ }| + |s()| - |{ } s()|

Como { } e s() so disjuntos temos:
|s( )| = 1 + |s()|

Tambm, pela definio da funo que conta o nmero de
operadores de uma dada proposio temos que:
g( ) = 1 + g()

Da, temos que mostrar que:
|s( )| 2.g( ) + 1
Isto : 1 + |s()| 2.g() + 1 + 1
Da Hiptese de induo:
1 + |s()| 2.g() + 1 + 1
19
Logo: 1 + |s()| 2.g() + 1 + 1 + 1 c.q.d.

ii) da forma ( ):
Hiptese de induo: |s()| 2.g() + 1
|s()| 2.g() + 1
Tese: |s( )| 2.g( ) + 1

Temos que provar, mais uma vez, que a tese verdadeira, tendo a
hiptese de induo como verdadeira.
Ora, pela definio da funo que obtm o conjunto das
subproposies de uma dada proposio, temos que:

s( ) = {( )} U s() U s()
|s( )| = |{( )} U (s() U s())|
= |{( )}| + |s() U s()| - |{( )} (s() U s())|

Como {( )} e (s() U s()) so disjuntos, a terceira parcela
nula. Da:
|s( )| = 1 + |s() U s()|
|s( )| = 1 + |s()| + |s()| - |s() s()|

Pela definio da funo que conta o nmero de operadores, temos:
g( ) = 1 + g() + g()

Ento a tese que temos que provar :
1 + |s()| + |s()| - |s() s()| 2.(1 + g() + g()) + 1

Da hiptese de induo:
|s()| + |s()| (2.g() + 1) + (2.g() + 1)

Logo:
1 + |s()| + |s()| (2.g() + 1) + (2.g() + 1) + 1
Da: 1 + |s()| + |s()| 2(g() + g() + 1) + 1

Logo:
1 + |s()| + |s()| - |s() s()| 2(g() + g()) + 1 c.q.d.


20
Semntica da Lgica Proposicional

Agora vamos estudar o significado das expresses da lgica
proposicional.

Dado que o conjunto das proposies PROP livremente gerado,
sabemos que se podem definir funes recursivamente sobre PROP que o
resultado ser garantidamente seguro do ponto de vista matemtico.
Particularmente, estamos interessados em definir uma funo que calcula
o valor de uma proposio recursivamente, baseada no fato de que o valor
das possveis variveis que nela ocorrem est fixado.

Assim deparamos com a seguinte situao:
F G
PROP
Booleanos f no(-)
X valor f^ e (-,-)
x y 0 fv ou (-,-)
z v 1 f seEnto
0 1 (-,-)



Teorema da extenso homomrfica nica: Seja A um
conjunto, X C A, e F um conjunto de funes sobre A. Seja B um
outro conjunto, e G um conjunto de funes sobre B tal que existe
uma associao d:F G entre cada funo de F com uma funo de
G com mesma aridade. Se o fecho indutivo de X sob F, isto , X,
for livremente gerado ento, para toda funo h: X B existe uma
nica funo : X B tal que:

I. (x) = h(x) se x X;
II. ( fi(x1, ..., xk) ) = gi( (x1), ..., (xk) )
gi = d(fi)

21
Variveis
U
Constantes
X h 0 B


PROP = X 1

A = *


Obs: Quando X = PROP e B = {0,1},
o h: X {0,1} e o : PROP {0,1} sero tais que:
I. (x) = h(x) se x X ;
II. () = NO( () ) ;
III. ((^)) = E( (), () ) ;
IV. ((v)) = OU( (), () ) ;
V. (()) = SE-ENTO( (), () ) .

Definio de funo de valorao-verdade: Seja PROP o
conjunto de proposies da lgica proposicional. Ento uma funo
de valorao verdade h uma funo que atribui a cada varivel um
valor booleano, ou valor verdade.

Observao: Como PROP livremente gerado, o Teorema da
Extenso Homomrfica nica garante que para cada valorao-verdade
h:X {0,1}, existe uma nica extenso : PROP {0,1}, que exa-
tamente a funo que calcula o valor-verdade de uma dada expresso.

Definio de valorao que satisfaz proposio: Dizemos
que uma valorao-verdade w: X {0,1} satisfaz uma proposio se
() = 1.

22
Exemplo:

Seja h: x {0,1} a seguinte valorao verdade:

h(x) = 0;
h(y) = 1;
h(z) = 0;

Vamos calcular o valor-verdade da proposio = ( (z) ^ (xvy) )
Sabemos que o valor ser dado pela expresso nica de h, dada por:

: PROP {0,1} tal que:

( (z)^(xvy) )
= E( (z), (xvy) )
= E( NO((z)), OU((x), (y)) )
= E( NO(h(z)), OU(h(x), h(y)) )
= E( NO(0), OU(0,1) )
= E(1, 1)
= 1

Portanto o valor-verdade de 1.








23
O Problema da Satisfatibilidade e Correlatos

Lembrando:
Definio (valorao-verdade): Uma valorao-verdade, ou
simplesmente valorao, uma funo w que associa um valor-
verdade, isto , um valor booleano, a cada varivel.
Definio (valorao satisfaz a uma proposio): Uma valorao w
satisfaz uma proposio se a sua extenso aplicada a d como
resultado o valor-verdade 1 (ou seja, o valor booleano
correspondente ao verdadeiro).


Definio de Satisfatibilidade:
Seja uma proposio:
dita satisfatvel se existe pelo menos uma valorao w que a
satisfaz. (i.e., () = 1).
chamada de tautologia se toda a valorao a satisfaz.
dita refutvel se existe pelo menos uma valorao que no a
satisfaz. (i.e., () = 0).
chamada de insatisfatvel se nenhuma valorao a satisfaz.

Dada uma proposio pergunta-se:
satisfatvel? (SAT)
refutvel? (REFUT)
tautological (TAUT)
insatisfatvel (INSAT)

Exemplo: Seja = ( (x(yz)) ((z)v(x^(y))) )
Pergunta-se: satisfatvel?
24
Para resolver o problema proposto existem diversos mtodos, que
estudaremos neste curso. Para ter uma viso inicial, o primeiro mtodo
mostrado ser o da tabela-verdade, onde ns definimos as operaes
booleanas que iremos usar (^,v, ,), e a partir disso calculamos a
valorao da expresso por partes.

Operaes Booleanas:

NO OU E SE-ENTO
X No(x) X Y Ou(x,y) X Y E(x,y) X Y Se-ent(x,y)
0 1 0 0 0 0 0 0 0 0 1
1 0 0 1 1 0 1 0 0 1 1
1 0 1 1 0 0 1 0 0
1 1 1 1 1 1 1 1 1


Construindo a tabela-verdade para :

X Y Z Z Y (X^( Y)) (Z)v(X^(Y)) YZ X(YZ)

0 0 0 1 1 0 1 1 1 1
0 0 1 0 1 0 0 1 1 0
0 1 0 1 0 0 1 0 1 1
0 1 1 0 0 0 0 1 1 0
1 0 0 1 1 1 1 1 1 1
1 0 1 0 1 1 1 1 1 1
1 1 0 1 0 0 1 0 0 1
1 1 1 0 0 0 0 1 1 0

Concluses:
satisfatvel.
refutvel.
no tautologia.
no insatisfatvel.
25
Conjunto de Proposies:
Suponha que S seja um conjunto de proposies, dizemos que S
satisfatvel se existe pelo menos uma valorao que satisfaz a todas as
proposies de S.
S ser insatisfatvel quando no for satisfatvel.

Exemplo 2: Seja S = {(Y^(Z)), (XZ), ((Z)^(XvY))}
Pergunta-se: S satisfatvel?

X Y Z Z XZ (Y^( Z)) (XvY) (Z)^(XvY)
0 0 0 1 1 0 0 0
0 0 1 0 1 0 0 0
0 1 0 1 1 1 1 1
0 1 1 0 1 0 1 0
1 0 0 1 0 0 1 1
1 0 1 0 1 0 1 0
1 1 0 1 0 1 1 1
1 1 1 0 1 0 1 0


Portanto o conjunto S satisfatvel pois existe um mundo onde
todas as valoraes das proposies que compem o conjunto so
verdadeiras(crculos).

Conseqncia lgica: Dizemos que uma proposio uma
conseqncia lgica do conjunto S se toda valorao que satisfaz S
tambm satisfaz .
No exemplo anterior, a proposio (Y^( Z)) conseqncia lgica
do conjunto T formado pelas outras duas.
A proposio (Z)^(XvY) tambm conseqncia lgica do conjunto
T formado pelas duas restantes.
J a proposio (XZ) no conseqncia lgica do conjunto T
formado pelas outras duas. (Veja tudo isso na tabela)

26
Relacionamento entre os conceitos em torno da
propriedade de satisfatibilidade

o Teorema (1): uma conseqncia lgica de S se, e somente se,
S U { } insatisfatvel.

o Teorema (2): Seja uma proposio. satisfatvel se, e
somente se, refutvel.

Prova(do teorema(2)):

I. Se satisfatvel ento refutvel.
Suponha que satisfatvel.
Ora, ento existe w tal que () = 1.
Claro que () = 0. Ento existe valorao que no satisfaz .
Logo refutvel.

II. Se refutvel ento satisfatvel.
Suponha que seja refutvel.
Ento existe w tal que () = 0.
Claro que () = 1. Logo, existe w que satisfaz . Portanto
satisfatvel.









27
Consideraes sobre o custo computacional do
problema SAT

Problema SAT: Dada uma expresso da lgica proposicional
pergunta-se: satisfatvel?

Observao: Note que para resolver uma instncia do problema SAT,
temos que realizar um certo nmero de operaes booleanas, que
depende do tamanho da expresso de entrada .
Que tal tentar encontrar uma forma razoavelmente precisa para
estimar o nmero mximo de operaes que devemos realizar para
chegar a uma soluo para o SAT?

Estimativa:
Seja uma expresso. Assuma que:
n: nmero de operadores em .
k: nmero de variveis listadas em .

Sabemos do conceito de valorao-verdade que vamos ter que testar
(2 elevado a k) valoraes.
Tambm vimos anteriormente que o nmero de subexpresses de
no mximo igual ao nmero de operadores + 1. Da, para cada uma
dessas (2 elevado a k) valoraes, vamos ter que fazer no mximo 2n+1
operaes.







28
Mtodo dos Tableaux Analticos
- Evert Beth (1954)
- Jaakko Hintikka (1955)

Seja S um conjunto de proposies, Suponha que estejamos buscando
uma valorao w: X BOOL, tal que (), para cada S, seja
dado por (1) = w1, (2) = w2, ..., (n) = n, onde vi(1in) um
valor booleano.
Vamos chamar esse conjunto de condies de condies iniciais do
tableaux.

Agora, vamos montar uma rvore de possibilidades que toma cada
equao contida nas condies iniciais como ns de uma rvore, um
imediatamente abaixo do seguinte:

(FI1) = w1 Para cada n da rvore inicial que
contm uma frmula composta, aplique
(FI2) = w2 uma das regras do tableaux.(ver as
regras abaixo).
(FIn) = wn

Repita esse procedimento, sempre expandindo a rvore em direo s
folhas, at que no haja mais nenhum n com frmula composta que no
tenha sido devidamente simplificado por uma das regras do tabelaux.
Agora, percorra todos os caminhos da raiz at uma folha, e utilize
como soluo para o problema original todo caminho que no apresente
contradio. Essas solues, se existirem, sero os mundos possveis.

Regras do tableaux:

1) () = 1 2) () = 0

() = 1
() = 0 () = 1
() = 0
29
3) (^) = 0 4) (^) = 1

() = 1
() = 0 () = 0
() = 1


5) (v) = 1 6) (v) = 0

() = 0
() = 1 () = 1
() = 0


Exemplos:

1) = ( (X(Y)) ((Z) ^ (Y(X))) )
satisfatvel?

Quero saber se existe pelo menos uma valorao que satisfaz a
expresso . Em outras palavras, quero saber se existe um mundo
possvel no qual seja verdadeira.

Como dito anteriormente, vamos construir a rvore de possibilidades
para a expresso . Vamos comear com e ento ir desmontando
esta expresso em subexpresses atravs das regras do tableaux, at no
haver mais subexpresses no qual possamos usar alguma regra. Fazemos
isso de cima para baixo, i.e., da raiz em direo as folhas.

Observe que ns no paramos no momento que acharmos todas as
verses atmicas de cada varivel presente na expresso, e sim quando
no h mais subexpresses para aplicar as regras. Veja que se
parssemos ao achar as subexpresses atmicas das variveis
difcilmente encontraramos uma contradio em algum mundo, pois as
contradies geralmente vm na forma: X e X, no mesmo mundo.
30
rvore de possibilidades:

( (X(Y)) ((Z) ^ (Y(X))) ) = 1


(X (Y)) = 0 ((Z) ^ (Y(X))) = 1


(X) = 1 (I) (Z) = 1 (II) (III)


(Y) = 0 (Y(X)) = 1


(Y) = 1 (I) (Y) = 0 (II) (X) = 1 (III)


(Observe que na parte direita da rvore eu no calculei os NOT, por ser
trivial e ocupar espao desnecessrio. Mas veja que o Z, por exemplo,
iria descender dos ns: (Y) = 0 e (X) = 1 ).
Mundo possvel: caminho da raiz at uma folha.

Mundo (I): (X) = 1, (Y) = 1, (Z) = ?
Mundo (II): (X) = ?, (Y) = 0, (Z) = 0
Mundo (III): (X) = 0, (Y) = ?, (Z) = 0

Veja que juntando todos os mundos ns temos 5 possibilidades (pois a
possibilidade E = possibilidade F) diferentes de valoraes que
satisfazem expresso:

Possibilidade A: (X) = 1, (Y) = 1, (Z) = 0
Possibilidade B: (X) = 1, (Y) = 1, (Z) = 1
Possibilidade C: (X) = 0, (Y) = 0, (Z) = 0
Possibilidade D: (X) = 1, (Y) = 0, (Z) = 0
Possibilidade E: (X) = 0, (Y) = 0, (Z) = 0
Possibilidade F: (X) = 0, (Y) = 1, (Z) = 0

E j que existem esses 5 mundos possveis, a expresso
satisfatvel!
31
2) = ( (X(YZ)) ((X^Y)Z) )
tautologia?

Dessa vez eu vou verificar se existe algum mundo possvel onde ()
= 0. Se existir tal mundo, no tautologia, pois para ser tautologia,
todas as valoraes devem ser 1.

rvore de possibilidades:

( (X(YZ)) ((X^Y)Z) ) = 0


(X(YZ)) = 1


((X^Y)Z) = 0


(X) = 0 (YZ) = 1


(X^Y) = 1 (X^Y) = 1


(Z) = 0 (Z) = 0


(X) = 1 (Y) = 0 (Z) = 1


(Y) = 1 (Y) = 1 (Y) = 1


A partir da rvore de possibilidades, ns percebemos que existem
contradies em todos os mundos possveis, portanto, como no existe
um mundo onde () = 0, tautologia!


32
3) Vamos ver como fazemos para descobrir se uma proposio
conseqncia lgica de um conjunto de proposies atravs do mtodo
dos tableaux.

Veja as seguintes sentenas:
I. O unicrnio, se lenda imortal, e se no lenda mamfero.
II. O unicrnio, se imortal ou mamfero, chifrudo.
III. O unicrnio, se chifrudo, ento bruxaria.
IV. O unicrnio lenda.
V. O unicrnio bruxaria.

Queremos verificar se as sentenas IV e V so conseqncias do
conjunto S formado pelas sentenas I, II e III.
Para fazer isso ns temos que criar uma rvore de possibilidades onde
as valoraes das sentenas do conjunto S so 1 e a valorao da
sentena no qual se quer provar 0. Poderamos verificar se mais de
uma sentena conseqncia lgica de S na mesma rvore, mas mais
prudente que se verifique uma sentena de cada vez.
Primeiro vamos definir os smbolos que utilizaremos para representar
as sentenas acima, e ento mostrar o comeo de como seria a rvore das
possibilidades apenas para a sentena IV (ver se ela conseqncia
lgica das trs anteriores).

Linguagem Simblica:

1) O unicrnio lenda = l
2) O unicrnio imortal = i
3) O unicrnio mamfero = m
4) O unicrnio chifrudo = c
5) O unicrnio bruxaria = b

Dessa forma as sentenas podem ser escritas:

I. ( (li) ^ ((l) m) )
II. ( (i v m) c )
III. (c b)
IV. l
V. b
33
rvore de possibilidades:

((li) ^ ((l) m)) = 1


((i v m) c) = 1


(c b) = 1


(l) = 0


...

A partir dessa configurao inicial da rvore, basta desenvolver o mtodo
dos tableaux. No prximo exemplo mostrarei porque no desenvolvi aqui
este exemplo.


4) = ( ((X^Y)v((X)^Y)) v ((X^(Y))v((X)^(Y))) )
Verifique se tautologia?

Tente desenvolver o exemplo 4. Voc ver que, como no exemplo 3, a
rvore gerada ser muito grande, mostrando que nem sempre o mtodo dos
tableaux a melhor soluo para problemas SAT.
Existem valores onde o nmero de operaes (no tableaux) igual do
mtodo da tabela-verdade, tornando esse mtodo ineficiente.

No prximo captulo ns vamos estudar um mtodo chamado de mtodo
da resoluo, que ir resolver mais rapidamente certos casos, onde a
aplicao do tableaux se mostra demorado.






34
O Mtodo da resoluo

Forma Normal Conjuntiva (FNC)

Literal: Um literal uma frmula atmica ou a negao de uma
frmula atmica.

Clusula: Uma clusula uma disjuno(v) de literais.

Forma Normal Conjuntiva: Uma frmula est na forma normal
conjuntiva se for uma conjuno(^) de clusulas.

Equivalncias Lgicas:

1) 2) v 3) ( ^ ) ()v()
4) ( v ) ()^() 5) ^ 6) v
7) v () T 8) ^ () F 9) ^ F F
10) v F 11) ^ T 12) v T T

Exemplos:

I) (LI) ^ (LM) (L v I) ^ (L v M) (L v I) ^ (L v M)
II) (I v M) C (I v M) v C (I ^ M) v C (C v I) ^ (C v M)

Teorema: Para todo PROP, existe PROP tal que:
I. logicamente equivalente a ;
II. est na FNC (Forma Normal Conjuntiva).

Esboo da Prova: (por induo sobre a complexidade de )

Base: atmica

Casos Indutivos:

I) da forma
Hiptese de induo: existe e na FNC
Tese: existe e na FNC

35
Como est na FNC, pode ser colocada na FNC
aplicando-se as equivalncias lgicas, comeando pelas leis de
DeMorgan. O resultado ser a que procuramos.

II) da forma ( ^ )
Hiptese de induo: existe tal que est na FNC
Existe tal que est na FNC
Tese: existe tal que est na FNC

vai ser ( ^ ) e j est na FNC.


O Mtodo da Resoluo:
Consolidado num artigo de 1965 por John Alan Robinson, o mtodo da
resoluo foi concebido com o propsito claro de tornar computacional
mente vivel a soluo algortmica do problema SAT (e correlatos), mesmo
que para uma classe restrita (e computacionalmente reconhecvel) de
sentenas.

Observaes Chave:

1) Para uma frmula na FNC ser insatisfatvel, suficiente que uma de
suas clusulas seja insatisfatvel.
2) Uma frmula na FNC do tipo: (X v Y) ^ (X v Z) ^ (Y v Z)
logicamente equivalente a: (X v Y) ^ (X v Z) ^ (Y v Z)
(Prove a observao 2 atravs da tabela-verdade)
3) Para toda E PROP:
- insatisfatvel sse no satisfatvel.
- insatisfatvel sse uma tautologia.
- insatisfatvel sse no refutvel.
- Um conjunto S de sentenas satisfatvel sse S no insatisfatvel
(o conjunto de suas sentenas no insatisfatvel).
- uma conseqncia lgica de {1, 2, ..., n} sse
1 ^ 2 ^ ... ^ n ^ insatisfatvel.
36
No exemplo do unicrnio:

B conseqncia lgica do conjunto S = {((L I) ^ (L M)),
((I v M) C), (C B)}?
Essa pergunta equivale a:
((L I) ^ (L M)) ^ ((I v M) C) ^ (C B) ^ (B)
insatisfativel?

O primeiro passo mexer com a sentena ate chegar na FNC, e ento
nomeamos todas as clusulas.

((L I) ^ (L M)) ^ ((I v M) C) ^ (C B) ^ (B)
((L v I) ^ (L v M)) ^ ((I v M) v C) ^ (C v B) ^ (B)
(L v I) ^ (L v M) ^ (I ^ M) v C) ^ (C v B) ^ (B)
(L v I) ^ (L v M) ^ (I v C) ^ (M v C) ^ (C v B) ^ (B)
C1 C2 C3 C4 C5 C6

O segundo passo criar novas clusulas para ver se gera alguma
contradio.

- C1 ^ C2 (I v M) (C7) - C1 ^ C3 (L v C) (C8)
- C2 ^ C4 (L v C) (C9) - C9 ^ C5 (I v B) (C10)
- C4 ^ C5 (M v B) (C11) - C7 ^ C11 (I v B) (C12)
- C10 ^ C12 (B v B) B (C13)

Veja que as clusulas de nmero C6 e C13 geram uma contradio
((B) ^ (B)), pois eles geram uma clusula C14 que vazia. Da ns
vemos que a expresso insatisfatvel. E com isso nos mostramos que a
expresso B uma conseqncia lgica do conjunto S.









37
Sentenas Condicionais
(Sentenas de Horn, em homenagem a Alfred Horn, que as estudou
cuidadosamente nos anos 1950).

Uma sentena condicional uma sentena do tipo:
(X1 ^ X2 ^ ... ^ Xn) Y, onde X1, X2, ..., Xn e Y so sentenas atmicas.
Chamamos X1 ^ X2 ^ ... ^ Xn de corpo da Regra e Y de objetivo da
regra. Observe que a sentena (X1 ^ X2 ^ ... ^ Xn) Y equivalente a
(X1 ^ X2 ^ ... ^ Xn) v Y.

Observao: O custo computacional (ou seja, o nmero mximo de
testes e operaes) do mtodo da resoluo , em geral, da ordem de
uma exponencial, i.e., O(2 elevado a n), onde n o nmero de clusulas.
Porm, se a sentena de entrada for composta de clusulas de Horn, o
nmero de possibilidades reduzido drasticamente, e fica da ordem de
um valor constante k, multiplicado pelo nmero de clusulas, i.e., O(n),
onde n o nmero de clusulas. E para reconhecer uma sentena na
FNC como constituda de apenas clusulas de Horn, temos que visitar
clusula a clusula e verificar se existe mais de um literal positivo. Da
se n for o nmero de variveis, esse nmero de visitas/testes fica na
ordem de n.k, ou seja O(n.k), que baixo.

Mtodos Algortmicos para resolver o SAT

1) Tabela Verdade:
- Vantagens: Simplicidade, confiabilidade.
- Desvantagens: Custo computacional.

2) Tableaux Analticos:
- Vantagens: Baseado num conceito intuitivo de mundos possveis,
regras so mais sensatas, s vezes mais eficientes.
- Desvantagens: Nem sempre mais eficiente, e desprovido de mtodo
eficiente de descobrir os casos nos quais de fato mais eficiente.

3) Resoluo:
- Vantagens: demonstravelmente mais eficiente para casos que so
eficientemente reconhecveis (frmulas de Horn).
- Desvantagens: Nem sempre mais eficiente e no intuitivo.
38
Lema: Seja uma frmula da lgica proposicional. uma tautologia
sse uma conseqncia lgica do conjunto vazio de premissas.

Prova:

(Ida) Se uma tautologia, ento conseqncia lgica de {}
Hiptese de induo: uma tautologia.
Tese: uma conseqncia lgica de {}
Como uma tautologia, ento qualquer v satisfaz . Tambm
qualquer v satisfaz {}. Logo, para toda valorao v que satisfaz {}, v
tambm satisfaz . Da, conseqncia lgica de {}.

(Volta) Se for conseqncia lgica de {}, ento tautologia
Hiptese de induo: conseqncia lgica de {}.
Tese: uma tautologia.
Como conseqncia lgica de {}, para toda valorao v que satisfaz
{}, v tambm satisfaz . Mas qualquer valorao satisfaz . Logo,
qualquer valorao tambm satisfaz .
Da uma tautologia.
















39
Mtodo da Deduo Natural

Você também pode gostar