Escolar Documentos
Profissional Documentos
Cultura Documentos
Faculdade de Computao
Apostila de Lgica Proposicional
(Fundamentos Bsicos)
Prof. Luiz Gustavo Almeida Martins
UFU - Faculdade de Computao Lgica Proposicional
Fundamentos Bsicos da Lgica
INTRODUO
1.1 Definio de Lgica
A lgica o estudo sobre a natureza do raciocnio e do conhecimento. Ela usada para formalizar
e justificar os elementos do raciocnio empregados nas demonstraes / provas de teoremas.
A lgica clssica se baseia em um mundo bivalente ou binrio (viso restrita do mundo real), onde
os conhecimentos so representados por sentenas que s podem assumir dois valores verdade
(verdadeiro ou falso). Portanto, nesse contexto, uma demonstrao um meio de descobrir uma
verdade pr-existente deste mundo.
1.2 Lgica Proposicional
A lgica proposicional a forma mais simples de lgica. Nela os fatos do mundo real so
representados por sentenas sem argumentos, chamadas de proposies.
Ex:
MUNDO REAL PROPOSIO LGICA
Hoje est chovendo P
A rua est molhada Q
Se est chovendo, ento a rua est molhada. P Q
Definio (proposio): uma proposio uma sentena, de qualquer natureza, que pode ser
qualificada de verdadeiro ou falso.
Ex: 1 + 1 = 2 uma proposio verdadeira da aritmtica.
0 > 1 uma proposio falsa da aritmtica.
Se no possvel definir a interpretao (verdadeiro ou falso) da sentena, esta no uma
proposio. Alguns exemplos deste tipo de sentena so apresentados abaixo:
Frases Interrogativas (ex: Qual o seu nome?).
Frases Imperativas (ex: Preste ateno!).
Paradoxos Lgicos (ex: Esta frase falsa).
Exerccio de Fixao
Verifique se as expresses abaixo so proposies. Justifique sua resposta.
a) Boa sorte!
b) Todas as mulheres possuem sua beleza.
Prof. Luiz Gustavo A. Martins Pg.:1
c) Mrcio no irmo do Mrio.
UFU - Faculdade de Computao Lgica Proposicional
d) No faa isto!
e) Ceclia escritora.
f) Quantos japoneses moram no Brasil?
1.3 Lgica e Informtica
Na computao, a lgica pode ser utilizada, entre outras coisas, para:
Conceber circuitos lgicos (o raciocnio do computador um raciocnio lgico);
Representar conhecimento (programao lgica);
Validar algoritmos e corrigir programas (testes lgicos das especificaes em engenharia
de software).
2 Sintaxe
2.1 Linguagem e Alfabeto
O conjunto de frmulas da lgica proposicional denominado L
=
q
a q a
S
n
N
Soluo:
Base da Induo:
0
0 0 0
0
1
1
1
a
q
q a
q
a q a
S =
=
) (
Passo Indutivo: Assumindo
1
0
=
q
a q a
S
I
I
como verdade, ento:
1 1 1 1
0 1
1
0 0 1
1
0 1
1
= +
= +
=
+
+
+
+
+
+
q
a q a
a
q
a q a
q
a q a
a S
q
a q a
S
I
I
I I
I I
I
I
Como a
I+1
= a
I
q, podemos reescrever a expresso como:
= +
+ + + + +
+
+
1 1 1 1
0 1 1 1 0 1 0 1
1
0 1
q
a q a
q
a q a a a
q
a q a
a
q
a a
I I I I I
I
I
1 1
0 1 0 1
+ +
q
a q a
q
a q a
I I
c.q.d.
Exerccio de Fixao
Demonstre, utilizando o princpio da induo finita, que:
a) X N | (1+2++X) =
2
2
X X +
b) X N | X 5 2
X
> X
2
c) X N | 3 divide X
3
-X
Prof. Luiz Gustavo A. Martins Pg.:17
d) X N | 2
0
+ 2
1
+ 2
2
++2
x
= 2
x+1
- 1
UFU - Faculdade de Computao Lgica Proposicional
7 Relaes Semnticas entre os Conectivos
7.1 Conectivos Completos
Um conjunto de conectivos proposicionais completo se e somente se, possvel expressar,
equivalentemente, os conectivos , , , e utilizando apenas os conectivos de .
Este conceito muito utilizado em cincia da computao e lgica, como por exemplo, para
simplificar os conectivos empregados em um projeto de circuitos lgicos.
Ex: Demonstre que = {, } um conjunto completo.
Soluo: dada uma frmula H, do tipo (P), (P Q), (P Q), (P Q) ou (P Q). Podemos
gerar uma frmula G, equivalente a H e s contenha conectivos de .
Para H = (P) ou (P Q), temos G = H, pois os {,} .
Para H = (P Q), temos G = (P Q), pela aplicao da Lei de Morgan.
Para H = (P Q), temos G = (P Q), pela aplicao da propriedade de substituio do .
Para H = (P Q), temos G = ((P Q) (Q P)), pela seqncia explicada abaixo:
(P Q) (P Q) (Q P), pela aplicao da propriedade de substituio do
(P Q) (Q P), pela aplicao da propriedade de substituio do
((P Q) (Q P)), pela aplicao da Lei de Morgan.
Logo, = {, } um conjunto completo c.q.d.
OBS: A demonstrao que G equivale a H, atravs de tabela-verdade, fica como exerccio.
7.2 Formas Normais
As frmulas da lgica proposicional podem ser expressas utilizando vrios conjuntos de
conectivos completos. Alm disso, tambm podemos represent-las atravs de estruturas pr-
definidas, denominadas formas normais. So elas:
Forma Normal Disjuntiva (FND): se a frmula uma disjuno de conjunes de literais
(smbolos proposicionais ou suas negaes).
Forma Normal Conjuntiva (FNC): se a frmula uma conjuno de disjunes de literais.
Ex: H = (P Q) (R Q P) (P S) FND
G = (P Q) (R Q P) (P S) FNC
OBTENO DAS FORMAS NORMAIS
Prof. Luiz Gustavo A. Martins Pg.:18
Considere a frmula: H = (P Q) R. Podemos escrever H
1
e H
2
, de modo que H
1
seja H na
FND e H
2
seja H na FNC, com segue:
UFU - Faculdade de Computao Lgica Proposicional
1 Passo: Construo da tabela-verdade de H.
P Q R H Linha
F F F F 1
F F T T 2
F T F F 3
F T T T 4
T F F F 5
T F T F 6
T T F F 7
T T T T 8
2 Passo: Gerao de H
1
(FND).
- Extrair as linhas da tabela-verdade onde I[H] = T. Para cada linha N, gerar uma frmula Y
N
,
formada apenas pela conjuno de literais, de modo que I[Y
N
] = T, como apresentado abaixo:
2 linha: I[P] = F, I[Q] = F, I[R] = T Y
2
= (P Q R).
4 linha: I[P] = F, I[Q] = T, I[R] = T Y
2
= (P Q R).
8 linha: I[P] = T, I[Q] = T, I[R] = T Y
2
= (P Q R).
- Gerar H
1
a partir da disjuno das frmulas geradas no item anterior.
H
1
= (P Q R) (P Q R) (P Q R)
3 Passo: Gerao de H
2
(FNC).
- Extrair as linhas da tabela-verdade onde I[H] = F. Para cada linha N, gerar uma frmula X
N
,
formada apenas pela disjuno de literais, de modo que I[X
N
] = T, como apresentado abaixo:
1 linha: I[P] = F, I[Q] = F, I[R] = F X
1
= (P Q R).
3 linha: I[P] = F, I[Q] = T, I[R] = F X
3
= (P Q R).
5 linha: I[P] = T, I[Q] = F, I[R] = F X
5
= (P Q R).
6 linha: I[P] = T, I[Q] = F, I[R] = T X
6
= (P Q R).
7 linha: I[P] = T, I[Q] = T, I[R] = F X
7
= (P Q R).
- Gerar H
2
a partir da conjuno das frmulas geradas no item anterior.
H
2
= (P Q R) (P Q R) (P Q R) (P Q R) (P Q R)
Exerccio de Fixao
Dada a frmula H = ((P Q) (Q R)) (R P).
a) Construa a frmula equivalente utilizando apenas os conectivos do conjunto = {, }.
Prof. Luiz Gustavo A. Martins Pg.:19
b) Gere as frmulas equivalentes na FND e FNC.
UFU - Faculdade de Computao Lgica Proposicional
8 Deduo de Teoremas
O processo de prova por deduo consiste em demonstrar que, dadas algumas expresses como
verdadeiras (hipteses ou premissas), uma nova sentena tambm verdadeira. Quando isso
ocorre, dizemos que a sentena provada um teorema com respeito s hipteses.
A prova de um teorema consiste em derivar a expresso desejada H a partir das hipteses ,
utilizando os recursos disponveis em algum dos sistemas de deduo vlidos ( | H).
Definio (sistemas de deduo): tambm denominados sistemas formais, so completos (se
H, ento | H) e corretos (se | H, ento H) e estabelecem estruturas que permitem a
representao e deduo do conhecimento.
TIPOS DE SISTEMAS DE DEDUO
Os sistemas de deduo podem ser divididos em 2 grupos, como segue:
Sistemas de difcil implementao computacional:
Sistema Axiomtico
Deduo Natural
Sistemas mais adequados para implementao computacional:
o Tableaux Semnticos
o Resoluo
Neste curso, apresentaremos o sistema axiomtico e a resoluo.
8.1 Sistema Axiomtico
O sistema axiomtico uma estrutura para representao e deduo do conhecimento baseado
em axiomas. Ele definido pela composio de 4 elementos:
Alfabeto da lgica proposicional;
Conjunto de frmulas proposicionais (Hipteses)
Subconjunto de frmulas, denominados axiomas; e
Conjunto de regras de inferncia.
HIPTESES
As hipteses ou premissas so frmulas proposicionais tidas (assumidas) como verdadeiras.
Assim, caso se descubra que uma das hipteses pode ser falsa, toda prova feita a partir desta
hiptese perde sua validade.
AXIOMAS
Prof. Luiz Gustavo A. Martins Pg.:20
Os axiomas representam o conhecimento dado a priori. No caso do sistema axiomtico, este
conhecimento representado por tautologias.
UFU - Faculdade de Computao Lgica Proposicional
O conjunto de frmulas axiomticas pode variar entre os sistemas axiomticos. Porm,
independente do conjunto adotado, o mesmo deve assegurar o sistema axiomtico seja completo
e correto.
Neste curso, adotaremos um sistema cujos axiomas so determinados pelos esquemas:
Ax1 = (H H) H (H H) H
Ax2 = H (G H) H (G H)
Ax3 = ((H G)) (((E H)) (G E)) (H G) ((E H) (G E))
sendo, H, G e E quaisquer frmulas proposicionais.
REGRAS DE INFERNCIA
As regras de inferncia so implicaes semnticas. Elas so utilizadas para fazer inferncias, ou
seja, executar os passos de uma demonstrao ou deduo.
Assim como os axiomas, o conjunto de regras de inferncia adotado em um sistema axiomtico
pode variar, desde que mantenham as propriedades de completude e correo. Quanto menor o
conjunto de regras de inferncia, mais elegante o sistema axiomtico.
Abaixo sero listadas algumas regras de inferncia que podem ser utilizadas em um sistema
axiomtico:
Adio:
Q P
Q
Q P
P
Conjuno:
Q
Q P
P
Q P
Simplificao Disjuntiva:
P
Q P Q P ) ( ) (
Absoro:
) ( Q P P
Q P
Modus Ponens:
Q
Q P P ) (
Modus Tollens:
P
Q P Q
) (
Silogismo Hipottico:
R P
R Q Q P
) ( ) (
Silogismo Disjuntivo:
P
Q Q P
Q
P Q P ) ( ) (
Prof. Luiz Gustavo A. Martins Pg.:21
Dilema Construtivo:
)) ( ) ((
) ( ) (
)) ( ) ((
) ( ) (
G Q R P
G R Q P
G Q R P
G R Q P
UFU - Faculdade de Computao Lgica Proposicional
Dilema Destrutivo:
)) ( ) ((
) ( ) (
)) ( ) ((
) ( ) (
R P G Q
G R Q P
R P G Q
G R Q P
Absurdo:
P
Q P
OBS: A maioria dos sistemas axiomticos costuma utilizar apenas o Modus Ponens (MP) como
regra de inferncia.
PROVA EM UM SISTEMA AXIOMTICO
Uma prova ou demonstrao atravs do sistema axiomtico consiste em apresentar a seqncia
de passos necessrios para derivar a frmula desejada a partir das hipteses. Cada passo pode
ser a gerao de um axioma ou a aplicao de uma regra de inferncia.
Proposio: dado um teorema com as hipteses H
1
, H
2
, , H
N
e a frmula a ser provada C. Ele
verdadeiro sempre que:
C
H H H
N
K
2 1
ou H
1
H
2
H
N
C = T
Exerccio 1: Prove P (S G) atravs de um sistema axiomtico que utiliza todas as regras de
inferncia apresentadas acima e com o seguinte conjunto de hipteses:
P (Q R)
Q S
R G
Soluo:
- considerando as hipteses:
P (Q R) (1)
Q S (2)
R G (3)
- Aplicando o dilema construtivo entre (2) e (3), temos:
(Q R) (S G) (4)
- Aplicando o silogismo hipottico entre (1) e (4), temos:
P (S G) c.q.d
Exerccio 2: A partir das hipteses abaixo e utilizando apenas o Modus Ponens (MP) como regra
de inferncia, prove que (S P).
(P R) P
Q P
4
P
1
Q
(P
1
P
2
) Q
(P
3
R) R
P
4
P
Prof. Luiz Gustavo A. Martins Pg.:22
P
1
UFU - Faculdade de Computao Lgica Proposicional
P
3
P
P
2
Soluo:
Gerar um axioma que possua S (pois esta varivel no existe no conjunto de hipteses) e que
esteja mais prximo possvel da frmula a ser provada:
- Usando Ax2 com H = P e G = S, temos:
P (S P) (1)
Derivar a frmula desejada. Para isso, preciso isolar P (necessrio para aplicar MP em (1)):
- Considerando as hipteses:
(P R) P (2)
Q P
4
(3)
P
1
Q (4)
(P
1
P
2
) Q (5)
(P
3
R) R (6)
P
4
P (7)
P
1
(8)
P
3
P (9)
P
2
(10)
- Aplicando MP entre (8) e (4), temos:
Q (11)
- Aplicando MP entre (11) e (3), temos:
P
4
(12)
- Aplicando MP entre (12) e (7), temos:
P (13)
- Aplicando MP entre (13) e (1), temos:
S P c.q.d.
PROVA POR ABSURDO
Neste tipo de prova, nega-se a frmula que se deseja provar, a inclui no conjunto de hipteses e
aplica as regras de inferncia at se obter um absurdo.
Exerccio: A partir das hipteses abaixo e utilizando apenas o Modus Ponens (MP) como regra de
inferncia, prove P.
S P
R P
S
Soluo:
Prof. Luiz Gustavo A. Martins Pg.:23
- Considerando as hipteses:
UFU - Faculdade de Computao Lgica Proposicional
S P (1)
R P (2)
S (3)
P (4) Negao do teorema
- Aplicando a equivalncia (G H H G) em (1), temos:
P S (5)
- Aplicando MP entre (4) e (5), temos:
S (6)
Como (6) contradiz (3), conclui-se que a suposio inicial (P) falsa. Logo | P c.q.d.
OBS: Como j visto, nada pode ser concludo se o absurdo no for encontrado.
DERIVAO SEM HIPTESES
Alm das provas onde uma frmula G derivada a partir de um conjunto de hipteses ( | G),
existem casos onde o sistema axiomtico no possui hipteses ( vazio) e a frmula desejada
derivada somente a partir dos axiomas, denotamos: | G.
Ex: Utilizando um sistema axiomtico sem hipteses e apenas com Modus Ponens como regra de
inferncia, prove (P P).
- Para gerar uma sentena que contenha a frmula a ser derivada, utilizamos o Ax3 com
H = (P P), E = P e G = P, temos:
((P P) P) ((P (P P)) (P P)) (1)
- Note que a parte antecedente de (1) pode ser gerada a partir de Ax1 para H = P:
(P P) P (2)
- Aplicando MP entre (2) e (1), temos:
((P (P P)) (P P)) (3)
- A parte antecedente de (3) pode ser gerada a partir de Ax2 para H = P e G = P:
P (P P) (4)
- Aplicando MP entre (4) e (3), temos:
(P P) c.q.d.
Exerccio de Fixao
Prove os teoremas abaixo, atravs do sistema axiomtico:
Prof. Luiz Gustavo A. Martins Pg.:24
a) Hipteses: hoje no domingo ou Manuel est feliz.
Se Manuel est feliz, ele amoroso.
Maria est feliz ou Manuel no amoroso.
Hoje domingo.
Regra de Inferncia: Modus Ponens
Teorema: Maria est feliz.
UFU - Faculdade de Computao Lgica Proposicional
b) Hipteses: P (Q R)
S Q
P
G S
P G
Regra de Inferncia: Modus Ponens
Teorema: R
c) Hipteses: P (Q R)
Q S
R S
Regra de Inferncia: Livre escolha (descrever na soluo o conjunto escolhido)
Teorema: P S
8.2 Resoluo
Ao contrrio do sistema axiomtico, no mtodo de resoluo no se tem axiomas. Portanto, este
mtodo definido pela composio dos seguintes elementos:
Alfabeto da lgica proposicional;
Conjunto de clusulas, geradas a partir de frmulas proposicionais (Hipteses)
Regra de inferncia.
A resoluo um mtodo de prova aplicado sobre frmulas que esto na forma de conjunes de
disjunes, conhecida como forma normal conjuntiva (FNC).
Ex: H = (P Q R) (R Q) (P R P)
Cada frmula , ento, representada na forma de conjunto de clusulas (FCC). Nesta notao,
cada disjuno um subconjunto (clusula), onde o conectivo ou trocado por uma vrgula. Alm
disso, as vrgulas entre os subconjuntos representam a conjuno (conectivo e) das disjunes.
Ex: H = {{P, Q, R}, {R, Q}, {P, R}}
Note que no exemplo acima, {P, R} representa (P R P). Isto ocorre, pois no se
representa duplicidade na notao de conjuntos (FCC).
REGRA DE INFERNCIA
O mecanismo de inferncia da resoluo utiliza apenas uma regra, denominada regra de
resoluo, como segue:
Resoluo:
) (
) ( ) (
R Q
R P Q P
Ex: Considere as frmulas:
Prof. Luiz Gustavo A. Martins Pg.:25
Original FNC FCC
H
1
= P Q P Q {P, Q}
H
2
= P R P R {P, R}
Res(H
1
,H
2
) = Q R Q R {Q, R}
UFU - Faculdade de Computao Lgica Proposicional
MTODOS DE PROVA POR RESOLUO
Na resoluo, assim como no sistema axiomtico, podemos provar os teoremas de forma direta
ou por refutao.
Resoluo Direta: aps converter as frmulas proposicionais para a forma de conjunto de
clusulas (FCC), aplica-se repetidamente a regra de resoluo sobre as hipteses at se
obter a frmula desejada.
Ex: Prove por resoluo direta o teorema abaixo:
Hipteses: A B
A C
B
Teorema: C
Soluo:
- Considerando as hipteses:
A B {A, B} (1)
A C (2)
B {B} (3)
- Aplicando a propriedade de substituio do em (2), temos:
(A C) {A, C} (4)
- Aplicando a regra de resoluo entre (1) e (4), temos:
(B C) {B, C} (5)
- Aplicando a regra de resoluo entre (3) e (5), temos:
C {C} c.q.d.
Resoluo por Refutao: neste mtodo utiliza-se a prova por absurdo. Para isto, nega-
se a frmula desejada e acrescenta a nova frmula no conjunto de hipteses. Ento, aps
convert-las para o FCC, aplica-se repetidamente a regra de resoluo at se obter uma
clusula vazia, gerada a partir de uma contradio do tipo P e P.
Ex: Prove o teorema do exemplo anterior, atravs da resoluo por refutao:
Soluo:
- Negando o teorema, temos:
C {C} (1)
- Considerando as hipteses:
A B {A, B} (2)
A C (A C) {A, C} (3)
B {B} (4)
- Aplicando a regra de resoluo entre (2) e (3), temos:
Prof. Luiz Gustavo A. Martins Pg.:26
(B C) {B, C} (5)
UFU - Faculdade de Computao Lgica Proposicional
- Aplicando a regra de resoluo entre (3) e (5), temos:
C {C} (6)
- Aplicando a regra de resoluo entre (1) e (6), temos:
{ } c.q.d.
OBS: O mtodo de resoluo por refutao tambm pode ser utilizado para provar a validade de
frmulas proposicionais a partir de um conjunto de hipteses vazio.
Ex: Dada H = (P Q R) (P G) (Q G) (R G) G. Prove H.
Soluo:
- Negando H, temos:
( (P Q R) (P G) (Q G) (R G) G) (1)
- Aplicando a propriedade de substituio do em (1), temos:
( ((P Q R) (P G) (Q G) (R G)) G) (2)
- Aplicando a Lei de Morgan em (2), temos:
((P Q R) (P G) (Q G) (R G)) ( G) (3)
- Representando (3) na FCC, temos:
{{P, Q, R}, {P, G}, {Q, G}, {R, G}, { G}} (4)
- Rotulando as clusulas de (4):
{P, Q, R} (4.1)
{P, G} (4.2)
{Q, G} (4.3)
{R, G} (4.4)
{ G} (4.5)
- Aplicando a regra de resoluo entre (4.1) e (4.2), temos:
{Q, R, G} (5)
- Aplicando a regra de resoluo entre (4.3) e (5), temos:
{R, G} (6)
- Aplicando a regra de resoluo entre (4.4) e (6), temos:
{G} (7)
- Aplicando a regra de resoluo entre (4.5) e (5), temos:
{ }
Logo, H vlida. c.q.d.
OBS: Quando no se consegue chegar ao conjunto de clusulas vazio pela prova por refutao,
assim como nos casos anteriores, nada se pode concluir sobre o teorema.
Exerccios de Fixao
1- Prove os teoremas abaixo, atravs do mtodo de resoluo:
Prof. Luiz Gustavo A. Martins Pg.:27
a) Hipteses: hoje no domingo ou Manuel est feliz.
Se Manuel est feliz, ento ele amoroso.
UFU - Faculdade de Computao Lgica Proposicional
Maria est feliz ou Manuel no amoroso.
Hoje domingo.
Teorema: Maria est feliz.
b) Hipteses: P (Q R)
S Q
P
G S
P G
Teorema: R
c) Hipteses: P (Q R)
Q S
R S
Teorema: P S
Prof. Luiz Gustavo A. Martins Pg.:28
2- Atravs da prova por refutao, mostre que a frmula H = (P Q) ((P Q) Q) vlida.