Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Computação
Universidade do Estado do Amazonas
Tecnologia em Análise
e Desenvolvimento de Sistemas
(Sistema Presencial Mediado)
Lógica
para
Computação
Ficha Técnica
Governador
Eduardo Braga
Vice-Governador
Omar Aziz
Reitora
Marilene Corrêa da Silva Freitas
Vice-Reitor
Carlos Eduardo S. Gonçalves
Pró-Reitor de Planejamento
Osail Medeiros de Souza
Pró-Reitor de Administração
Fares Franc Abnader Rodrigues
Coordenadora Pedagógica
Ângela Timótia Pereira Lima
Revisão
XXXXXXXXXXX
Perfil dos Autores
Manoel S. S. Azevedo
Professor da Escola Superior de Tecnologia (EST/UEA)
Mestre em Engenharia Elétrica-UFCG
1. INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1 O que é lógica? . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2 Origem da lógica . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3 Classificação da lógica: . . . . . . . . . . . . . . . . . . . . . . 13
2. A LÓGICA PROPOSICIONAL . . . . . . . . . . . . . . . . . . . . . . . 15
2.1 Elementos fundamentais da sintaxe da linguagem da Lógica
Proposicional: . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1.1 Formalização de uma proposição: . . . . . . . . . . . 19
3. O CÁLCULO PROPOSICIONAL . . . . . . . . . . . . . . . . . . . . . 34
3.1 Ordem de precedência entre os operadores . . . . . . . . . 34
3.2 Tabela verdade. . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.3 Propriedades semânticas da lógica proporcional . . . . . . 43
3.3.1 Tautologia . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.3.2 Contradição . . . . . . . . . . . . . . . . . . . . . . . . 43
3.3.3 Fórmula satisfatível . . . . . . . . . . . . . . . . . . . . 44
3.3.4 Equivalência lógica . . . . . . . . . . . . . . . . . . . . 45
3.3.5 Implicação lógica . . . . . . . . . . . . . . . . . . . . . 45
4. VALIDADE DE UM ARGUMENTO. . . . . . . . . . . . . . . . . . . . . 49
4.1 Argumento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2 Métodos para avaliar a validade de um argumento . . . . . 53
4.2.1 Método da tabela verdade . . . . . . . . . . . . . . . . 54
4.2.2 Método da Árvore Semântica . . . . . . . . . . . . . . . 55
4.2.3 Método da negação (ou absurdo) . . . . . . . . . . . . 61
4.2.4 Dedução lógica . . . . . . . . . . . . . . . . . . . . . . . 65
4.2.4.1 Regras de dedução . . . . . . . . . . . . . . . . . . 65
4.2.4.2 Outras regras de dedução: . . . . . . . . . . . . . 74 09
5. QUANTIFICADORES . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
5.1 Quantificador universal e existencial . . . . . . . . . . . . . 81
6. RECORRÊNCIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6.1 Seqüência definida por recorrência . . . . . . . . . . . . . . 88
6.2 Algoritmo definido por recorrência . . . . . . . . . . . . . . 91
6.2.1 Construindo uma algoritmo recorrente . . . . . . . . . 91
6.2.2 Como um algoritmo recorrente executa . . . . . . . . 95
Bibliografia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Exercícios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
10
Tecnologia em Análise e Desenvolvimento de Sistemas
Lógica para Computação
Capítulo I
Introdução
13
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
14
Tecnologia em Análise e Desenvolvimento de Sistemas
Lógica para Computação
Capítulo II
A Lógica Proposicional
A lógica proposicional (simbólica ou matemática) não
difere da lógica clássica em essência, mas distingue-se dela pelo
uso de uma linguagem técnica específica, que lhe dá mais rigor,
tornando-se um instrumento mais eficaz para a análise e
dedução formal.
b) Proposição
— Proposição
Cinco é menor que oito.
— Proposição.
Exemplos:
A casa número 5 é amarela. Pode ser representada pela
letra maiúscula P.
A lua é feita de queijo. Pode ser representada pela letra Q.
P e Q, acima, são proposições, pois são sentenças às quais
se pode atribuir um valor verdade (ou valor lógico) falso ou
verdadeiro.
17
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
EXERCÍCIOS
c) Fórmulas
Construídas a partir dos símbolos do alfabeto, conforme as
seguintes regras:
a) Todo símbolo de verdade é uma fórmula;
b) Todo símbolo proposicional é uma fórmula;
c) Se H é uma fórmula então ~H é uma fórmula (negação)
d) Se H e G são fórmulas então:
HÚ G é uma fórmula (disjunção)
HÙ G é uma fórmula (conjunção)
H® G é uma fórmula (condicional)
H« G é uma fórmula (bicondicional)
18
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
Fórmulas do tipo
))A « Ù B C, AÚ Ú BÚ ® , PÙ « não são fórmulas
válidas na lógica proporcional, pois não estão de acordo com as
regras de formação acima. Pode-se dizer que são fórmulas mal
formuladas.
As cadeias (A « C) ÙB e (A Ú BÚ C) ® (B ÙB1), são cadeias
válidas na Lógica Proposicional.
Uma cadeia válida é chamada de fórmula bem formulada,
ou, de forma abreviada, fbf.
Obs.: Alguns autores adotam wff (em vez de fbf) que á a
abreviação da expressão well formed formula, no idioma inglês.
Seja a sentença:
A se e somente se B
Bicondiconal
A é condição necessária e suficiente A«
B
(equivalência)
para B
Tabela 1 – Indicações para formalização de uma proposição (Geristing, 2001, p. 4).
EXERCÍCIOS
O rio é raso ou não É falso que o rio seja raso ou O rio não é raso ou
está poluído não esteja poluído. está poluído
Não é verdade que o rio é raso
ou não está poluído
O rio é fundo e está poluído
Tabela 3 – Negação de uma proposição.
P ~P
V F
F V
EXERCÍCIOS
25
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
Exemplos:
(1) Paris está na França e 2 + 2 = 4.
(2) Paris está na França e 2 + 2 = 5.
(3) Paris está na Inglaterra e 2 + 2 = 4.
(4) Paris está na Inglaterra e 2 + 2 = 5.
Conclusão:
A conjunção entre duas proposições só é verdadeira se
ambas o forem.
P Q PÙ Q
V V V
V F F
F V F
F F F
26
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
EXERCÍCIOS
1. Dê o valor lógico das proposições abaixo:
a) 4 é par e 6 é ímpar
b) 4 = 2 + 2 e 5 + 5 = 10
c) A lua é um satélite e a Terra é um planeta.
d) Roma é capital da França e Londres é capital do Brasil.
e) 6 + 4 = 12 e Manaus é a capital do Amazonas.
2.2.1.3 Disjunção
P Q PÚ Q
V V V
V F V
F V V
F F F 27
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
EXERCÍCIOS
2.2.1.4 Condicional
P Q Pà Q
V V V
V F F
F V V
F F V
EXERCÍCIOS
2.2.1.5 Bicondicional
P Q P« Q
V V V
V F F
F V F
F F V
EXERCÍCIOS
30
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
P Q PÚ Q
V V F
V F V
F V V
F F F
Observe que a disjunção exclusiva não foi apresentada
como um conectivo do alfabeto da lógica proposicional. Não só
esse como outros conectivos podem ser definidos a partir
daqueles.
O significado de “P ou Q mas não ambos” como um
conectivo é uma simplificação da fórmula (P Ú
Q) Ù
~(P ÙQ).
EXERCÍCIOS
P ÚQ P
® H
V F V
P Ú Q ® P H
V V F V V V
Exemplo 2:
(~ P ÙQ) ®
(R ÙP) E
V F V
(~ P Ù Q) ® (R ÙP) E
F V F F V V V
32
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
Exemplo 3:
P Ú Q G
? V ? V
EXERCÍCIOS
1. Seja I uma interpretação tal que I[P ® Q] = F. O que se
pode deduzir a respeito dos resultados das interpretações:
a) I[~P ÙQ]
b) I[P Ú~Q]
c) I[Q ® P]
Solução
Só há uma situação em que I[P ® Q] = F: quando I[P] = V e
I[Q] = F. Com esses valores lógicos de P e Q, analisa-se cada uma
das fórmulas dadas para concluir, ou não, pelo seu valor verdade.
G = (P ®
(~Q Ú
R)) Ù
~(Q Ú
(P «
~R))
33
Tecnologia em Análise e Desenvolvimento de Sistemas
Lógica para Computação
Capítulo 3
O Cálculo Proposicional
Tem por objetivo avaliar o valor verdade de uma fórmula.
34
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
A B C
V V V
V V F
V F V
V F F
F V V
F V F
F F V
F F F
Exemplos:
Construir a tabela verdade para as fórmulas G e H abaixo:
a) G = A Ù
B® AÚ B
A B AÙ B
V V V
V F F
F V F
F F F
A B AÙ B AÚ B AÙ
B® AÚ
B
V V V V V
V F F V V
F V F V V
F F F F V
1 2 3 4 5 6 7 8 9
A B A B
Ù ® A Ú B
V V
V F
F V
F F
Etapa
1 2 3 4 5 6 7 8 9
A B A Ù B ® A Ú B
V V V V V V V V
V F V F F V V F
F V F F V F V V
F F F F F F F F
Etapa 1 2 1 3 4 3
37
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
1 2 3 4 5 6 7 8 9
A B A Ù B ® A Ú B
V V V V V V V V V
V F V F F V V V F
F V F F V V F V V
F F F F F V F F F
Etapa 1 2 1 5 3 4 3
b) H = ((A Ú
B) ®
C) «
(B ®
~C)
A B C AÚ B
V V V V
V V F V
V F V V
V F F V
F V V V
F V F V
F F V F
F F F F
38
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
A B C AÚ B ((A Ú
B) ®
C)
V V V V V
V V F V F
V F V V V
V F F V F
F V V V V
F V F V F
F F V F V
F F F F V
1 2 3 4 5 6 7 8
A B C AÚ B ((A Ú
B) ®
C) ~C (B ® ~C) «
V V V V V F F F
V V F V F V V F
V F V V V F V V
V F F V F V V F
F V V V V F F F
F V F V F V V F
F F V F V F V V
F F F F V V V V
Coluna 1 2 3 4 5 6 7 8 9 10 11 12 13
A B C ((A Ú B) ®C) «(B ® ~ C)
V V V V V V V V
V V F V V V F F
V F V V V F V V
V F F V V F F F
F V V F V V V V
F V F F V V F F
F F V F F F V V
F F F F F F V F
Etapa 1 2 1 4 3
Coluna 1 2 3 4 5 6 7 8 9 10 11 12 13
A B C ((A Ú B) ®C) «(B ® ~ C)
V V V V V V V V V F F V
V V F V V V F F V V V F
V F V V V F V V F V F V
V F F V V F F F F V V F
F V V F V V V V V F F V
F V F F V V F F V V V F
F F V F F F V V F V F V
F F F F F F V F F V V F
Etapa 1 2 1 4 3 5 7 6 5 41
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
1 2 3 4 5 6 7 8 9 10 11 12 13
A B C ((A Ú B) ®C) «(B ® ~ C)
V V V V V V V V F V F F V
V V F V V V F F F V V V F
V F V V V F V V V F V F V
V F F V V F F F F F V V F
F V V F V V V V F V F F V
F V F F V V F F F V V V F
F F V F F F V V V F V F V
F F F F F F V F V F V V F
Etapa 1 2 1 4 3 8 5 7 6 5
EXERCÍCIOS
42
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
3.3.1 Tautologia
EXERCÍCIOS
1. Fazer a tabela verdade para a fórmula
H = (P ÙQ) ®
(P Ú
Q) e verificar se a mesma é uma tautologia.
3.3.2 Contradição
EXERCÍCIOS
A B (A ® B) (A ®
B) ®
A ~
V V V V F
V F F V F
F V V F V
F F V V F
EXERCÍCIOS
44
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
A B A® B B® A (A ®
B) Ù(B ®
A)
V V V V V
V F F V F
F V V F F
F F V V V
EXERCÍCIOS
Fazer as tabelas verdade para as fórmulas G e H abaixo e
verificar se são equivalentes (verificar se G Û
H):
a) G = A ® B e H = ~(A Ú B)
b) G = ~(A Ú B) e H = ~A Ù ~B
K L M
P Q PÙ Q Ú Q PÙ Q PÚ Q
V V V V V V
V F F F F V
F V F V F V
F F F F F F
Resumindo:
P Q K L M
V V V V V
V F F F V
F V V F V
F F F F F
K L ~K ~K ÚL
V V F V
F F V V
V F F F
F F V V
K L ~L ~L ÚK
V V F V
F F V V
V F V V
F F V V
K L ~K LÙ~K
V V F F
F F V F
V F F F
F F V F
EXERCÍCIOS
1) Considerando as fórmulas K, L, e M do último exemplo,
verificar se:
a) L Þ M
b) M Þ K
c) L Þ K
d) K Þ M 47
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
EXERCÍCIOS
48
Tecnologia em Análise e Desenvolvimento de Sistemas
Lógica para Computação
Capítulo 4
Validade de um
Argumento
4.1 Argumento
Outro exemplo:
3+2=5
5=4+1
3+2=4+1
52
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
EXERCÍCIOS
P Q P® Q ~Q ~P ~Q® ~P (P ®
Q) «(~Q®
~P)
V V V F F V V
V F F V F F V
F V V F V V V
F F V V V V V
EXERCÍCIOS
1) Usando o método da tabela verdade, verificar se o
argumento (S ® (~C Ù ~Q)) Ù(~C Ù
Q) ®
~S (letra b) do exercício
da seção anterior) é válido.
54
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
1
2 3
4 5 6 7
8 9
10 11
Exemplo 1:
Verificar se a fbf H = (P ® Q) « (~Q ®
~P) é válida,
utilizando o método da árvore semântica.
Temos:
I[P] = V I[P] = F
2 3
(P ®
Q) «
(~Q ®
~P)
Nó 2 = V FV
(P ® Q) « (~Q ® ~P)
Nó 2 = V ? ? ? FV
(P ®
Q) «
(~Q ®
~P)
Nó 3 = F VF
(P ® Q) « (~Q ® ~P)
Nó 3 = F V V V VF
I[P] = V I[P] = F
2 3
V 57
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
I[P] = V I[P] = F
2 3
I[Q] = V I[Q] = F V
4 5
(P ® Q) «(~Q ®~P)
Nó 4 = V V V V FV V FV
(P ® Q) «
(~Q ® ~P)
Nó 5 = V F F V VF F FV
58
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
I[P] = V I[P] = F
2 3
I[Q] = V I[Q] = F V
4 5
V V
Exemplo 2:
Verificar se a fórmula G = (P ®
Q) ® P é válida.
Solução:
Iniciando com a interpretação de P, tem-se a árvore:
I[P] = V I[P] = F
2 3
59
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
I[P] = V I[P] = F
2 3
V F
Para que uma fbf não seja válida, basta que 1 nó folha
apresente valor lógico falso. Como para I[P] = F tem-se I[G] = F,
está demonstrado que G não é uma fbf válida.
Observações:
1) Como foi possível concluir pelo valor verdade dos nós 2 e
3, conhecendo-se apenas o valor de P, a árvore não
prossegue em nenhum dos dois nós. Está concluída.
60
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
EXERCÍCIOS
1) Construir uma árvore semântica para as fórmulas F, G e
H, abaixo, e verificar se são válidas. Caso a fórmula não seja
válida, diga para que interpretação I a fórmula tem valor lógico
falso.
a) F = (P Ù(P ® Q)) ® (P «Q)
b) G = ~(P Ù Q) ® ~P
c) H = ((A ÚB) Ù(A ® C)) ®A
Exemplo 1:
Verifique, através do método da negação (ou absurdo) se a
fórmula G, abaixo, é válida:
G = ((A ® B) Ù (B ® C)) ®
(A ®C)
61
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
Conclusão:
Dizer que G é falso é um absurdo logo, G é válida. G é uma
tautologia.
62
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
Ausência de absurdo
Exemplo 2:
Verificar se a fórmula H = (P ®
Q) «
(~P ®
~Q)
Solução
Tenta-se provar que H é falsa. Para tal, atribui-se o valor
lógico falso ao conectivo principal, aquele que será avaliado por
último. Vê-se que é « .
H = (P ®
Q) « (~P ®
~Q)
F
H = (P ® Q) «(~P ®
~Q)
F V V F VF F FV
Poissibilidade 2: H = (P ® Q) «
(~P ®~Q)
V F F F FV V VF
EXERCÍCIOS
1. Verificar, usando o método da negação ou absurdo, se os
argumentos abaixo são válidos:
a) G = A Ú B® ~A
b) Se Luiz é o presidente, ele está feliz. Luiz está feliz.
Portanto, ele é o presidente.
c) H = ((A ÚB) Ù (A ® C)) ®A
64
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
Regras de equivalência
Regras de inferência:
P Q Pà Q
V V V
V F F
F V V
F F V
Exemplo 1:
Utilizando dedução lógica, prove a validade do argumento:
(A ®
C) Ù
(C ®
D) Ù
A®
D
1. A ®
C hip (Hipótese. É suficiente a abreviatura)
2. C ®
D hip
3. A hip
1. A ®
C hip
2. C ®
D hip
3. A hip
4. C 1, 3 mp (que significa: da hipótese 1 e da 3,
através da regra modus ponens, concluo que
C também é verdadeira).
1. A ®
C hip 69
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
2. C ®
D hip
3. A hip
4. C 1, 3 mp
5. D 2, 4 mp.
Exemplo 2:
Através de dedução lógica, provar que o argumento abaixo
é válido:
(A ®
(B Ù
C)) Ù
A®
C
1. A ®
(B Ù
C) hip
2. A hip
1. A ®
(B Ù
C) hip
2. A hip
3. B Ù
C 1, 2 mp
1. A ® (B Ù
C) hip
2. A hip
3. B Ù C 1, 2 mp
4. B, C 3, simp
Exemplo 3:
Provar a validade do argumento abaixo, usando dedução
lógica:
((A Ú~B) ® C) Ù (C ®D) Ù A® D
1. (A Ú
~B) ®
C hip
2. C ® D hip
3. A hip
P Q PÚ Q
V V V
V F V
F V V
F F F 71
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
1. (A Ú~B) ®
C hip
2. C ® D hip
3. A hip
4. A Ú~B 3, ad, obtendo, dessa forma, o valor
verdade do antecedente da hipótese do
passo 1.
1. (A Ú~B) ®
C hip
2. C ® D hip
3. A hip
4. A Ú~B 3, ad
5. C 1, 4, mp
72 6. D 2, 5, mp
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
Observações:
Exemplo 4:
Provar, usando dedução lógica, o argumento:
~A Ù(B ®A) ® ~B
Solução
1. ~A hip
2. B ®A hip
1. ~A hip
2. B ®A hip
3. ~B mt
73
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
EXERCÍCIOS
Argumento: A Ù
(~B ®
~C) ®
B
74
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
Exemplo 4
Provar o argumento:
(A ® (A ® B)) ®
(A ® B)
Temos:
1. A ®
(A ®
B) hip
2. A hip
EXERCÍCIOS
Provar o argumento:
(~A ® ~B) Ù(A ®
C) ®
(B ®
C)
75
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
(A ®
B) Ù
(B ®
C) ®
(A ®
C)
EXERCÍCIOS
Exemplo 5
Provar o argumento: (~A Ú
B) Ù
(B ®
C) ®
(A ®
C)
Solução:
1. ~A Ú
B hip
2. B ®C hip
1. ~A Ú
B hip
2. B ®C hip
76 3. A ®B 1, cond
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
1. ~A Ú
B hip
2. B ®C hip
3. A ®B 1, cond
4. A ®C 2, 3 sh
EXERCÍCIO 2
Provar o argumento: (A ®
B) Ù
(~C Ú
A) Ù
C®
B
77
Tecnologia em Análise e Desenvolvimento de Sistemas
Lógica para Computação
Capítulo V
Quantificadores
A lógica proposicional trata de relações fundamentais da
lógica, definidas através dos operadores lógicos (~ (negação), Ù
(conjunção), Ú (disjunção), ® (condicional), «
(bicondeicional)). Contudo, não contempla argumentos que
contenham as expressões: “todo”, “nenhum” e “algum”.
O argumento abaixo é válido. Mas, sua validade é uma
função do significado das expressões “alguns” e “todos”:
Todo S é P.
Nenhum S é P.
Algum S é P.
Algum S não é P.
EXERCÍCIOS
a)"
x(Px) b) $
x(Px)
82
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
EXERCÍCIO 1
x(Sx ®
" Px)
x(Sx ®
" ~Px)
x(Sx Ù
$ Px)
que também pode ser lida como: “Existe x, tal que x é S e x é P”.
De maneira análoga, uma proposição do tipo “Algum S não
é P”, quando escrita em linguagem simbólica, resulta em
x(Sx Ù
$ ~Px)
Exemplos:
Interpretando por V o predicado “é vermelho”, A “é azul”,
B “é branco”, C “é um carro” e F “é uma Ferrari”, formalizar as
sentenças abaixo:
EXERCÍCIO 2
EXERCÍCIO 3
EXERCÍCIO 4
Capítulo 6
Recorrência
S(1) = 2
S(2) = 4
S(3) = 8
S(4) = 16
...
S(1) = 2
S(2) = 4 = 2 + 2
S(3) = 8 = 4 + 4
S(4) = 16 = 8 + 8
...
S(1) = 2
S(n) = 2S(n – 1), para n ³
2.
89
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
Outro exemplo:
Escrever a seqüência T = 2, 4, 7, 11, 16, 22, ...
Reescrevendo T:
T(1) = 2 =2
T(2) = 4 =2+2
T(3) = 7 =4+3
T(4) = 11 =7+4
T(5) = 16 = 11 + 5
T(6) = 22 = 16 + 6
Os termos seguintes:
S(3) = S(2) + 2 x 3 = 7 + 6 = 13
S(4) = S(3) + 2 x 4 = 13 + 8 = 21
S(5) = S(4) + 2 x 5 = 21 + 10 = 31
Resumindo:
S = 3, 7, 13, 21, 31 ...
EXERCÍCIOS
b) A(1) = 2
1
A(n) = para n ³
2.
A(n - 1)
c) F(1) = 1
F(2) = 1
F(n) = F(n – 2) + F(n – 1), para n > 2.
se <condição> então
comando(s)1
senão
comando(s)2
fimse
Exemplo:
se A > = B então
Escreva “A é maior ou igual a B”
senão
Escreva “B é maior que A”
fimse.
Algoritmo S(n)
se <condição> então
retorne valor
senão
retorne S(n – 1)
fimse
fimalgoritmo
onde:
S é o nome do algoritmo;
n é uma variável, através da qual é passado o valor que o
algoritmo deve processar;
Uma referência ao nome do algoritmo é um comando que
faz executar esse algoritmo. Em “retorne S(n – 1)” há um
comando para executar S, que é o próprio algoritmo. Essa é a
característica do algoritmo recorrente: “manda” executar a si
próprio.
Algoritmos recorrentes também são conhecidos como
algoritmos recursivos.
Voltando à seqüência recorrente
S(1) = 2
S(n) = 2S(n – 1) para n ³
2.
Algoritmo S(n)
se n = 1 então (corresponde a S(1))
retorne 2 (corresponde ao valor de S(1)
senão
retorne 2S(n – 1) (expressão que define S(n))
fimse
fimalgoritmo
Exemplos:
Faça um algoritmo recorrente para as sequências: 93
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
a) S(1) = 1
S(n) = S(n – 1) + (n – 1)
b) P = 3, 5, 9, 15, 23, ...
Soluções:
a) Como a sequência já está escrita de forma recorrente, a
construção do algoritmo recorrente resume-se a transcrever o
valor de S(1) para a cláusula então do comando de decisão, e a
expressão que determina S(n) para a cláusula senão.
algoritmo S(n)
se n = 1 então
retorne 1
senão
retorne S(n – 1) + (n – 1)
fimse
fimalgoritmo
algoritmo P(n)
se n = 1 então
retorne 3
senão
retorne P(n – 1) + 2(n – 1)
fimse
fimalgoritmo
EXERCÍCIO 1
2 * S(4)
2 * S(3)
2 * S(4)
2 * S(1)
2 * S(2)
2 * S(3)
2 * S(4) 95
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
S(1) = 2
S(2) = 2 * S(1) =2*2 =4
S(3) = 2 * S(2) =2*4 =8
S(4) = 2 * S(3) = 2 * 8 = 16
S(5) = 2 * S(4) = 2 * 16 = 32
EXERCÍCIO 2
Execute o algoritmo abaixo, considerando o valor inicial n =
4 e diga qual o valor final retornado pelo algoritmo:
algoritmo M(n)
se n = 1 então
retorne 3
senão
retorne M(n – 1) + (n – 2)
fimse
fimalgoritmo
96
Tecnologia em Análise e Desenvolvimento de Sistemas
Lógica para Computação
Bibliografia
COPI, Irving M. Introdução à Lógica. 2a. Ed. São Paulo: Mestre
Jou, 1978.
97
Tecnologia em Análise e Desenvolvimento de Sistemas
Lógica para Computação
Respostas dos
Exercícios
2.1 Elementos fundamentais da sintaxe da linguagem
da Lógica Proposicional:
1. a) ( X )
b) ( X )
c) ( ) Não é proposição, pois “ela” não está definida.
d) ( X )
e) ( ) Não é proposição pois é uma pergunta.
f) ( ) Muitos, poucos indefinem. Não é proposição
g) ( ) Talvez: indefine. Não é proposição.
h) ( X )
i) ( ) Não se sabe qual o valor de x nem de y, logo não se
pode afirmar se é verdadeira ou falsa. Não é
proposição
j) ( X )
l) ( ) Possivelmente: lança a dúvida. Indefine.
m ( ) É uma pergunta. Não pode ser proposição.
c) A ÙC
d) A ® ~C
e) A « B
f) CÚ B
g) (A Ù B) ®~C
h) C ® (~B Ù~A )
i) A ® B
j) B ® ~C
k) B ® A
2. a) V
b) V
c) V
d) F
e) F
3. d)
2.2.1.4 Condicional
1. a) antecedente: A chuva continuar
conseqüente: o rio vai transbordar
b) antecedente: a chave central desligar
conseqüente: faltar energia.
c) antecedente: um gato saudável
conseqüente: uma boa dieta.
100
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
2. a) V
b) F
c) V
d) V
2.2.1.4 Condicional
1. a) V
b) F
c) F
d) F
e) F
2.2.1.6 Ou exclusivo
1. a) V
b) F
c) F
d) V
1. a) F
b) V
c) V
2. I[G] = F
101
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
b)
A B AÚ B ~A AÚ
B® ~A
V V V F F
V F V F F
F V V V V
F F F V V
c) (A ®
B) «
~A Ú
B
1 2
A B A® B ~A ~A ÚB 1« 2
V V V F V V
V F F F F V
F V V V V V
F F V V V V
d) (P ®
(~Q Ú
R)) Ù
~(Q Ú
(P «
~R))
1 2
P Q R ~Q ~Q ÚR P® ~R P « ~R Q Ú~( ) 1Ù 2
V V V F V V F F V F F
V V F F F F V V V F F
V F V V V V F F F V V
V F F V V V V V V F F
F V V F V V F V V F F
F V F F F V V F V F F
F F V V V V F V V F F
F F F V V V V F F V V
3.3.1 Tautologia
1) H = (P Ù
Q) ®
(P Ú
Q)
P Q PÙ Q PÚ Q (P Ù
Q) ® (P Ú
Q)
V V V V V
V F F V V
F V F V V
F F F F V
102
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
1. a)
A B C AÚ B AÚ
B®C
V V V V V
V V F V F
V F V V V
V F F V F
F V V V V
F V F V F
F F V F V
F F F F V
2) (P ®
Q) «
(~P Ú
Q)
P Q P® Q ~P ~P ÚQ (P ®
Q) « (~P Ú
Q)
V V V F V V
V F F F F V
F V V V V V
F F V V V V
3.3.2 Contradição
1) a) ~(P ®
Q) Ù
Q
P Q P® Q ~(P ® Q) ~(P ®
Q) Ù
Q
V V V F F
V F F V F
F V V F F
F F V F F
b) ~(P ®
(P Ú
Q))
P Q PÚ Q P®
(P Ú
Q) ~(P ®
(P Ú
Q))
V V V V F
V F V V F
F V V V F
F F F V F
103
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
1) a) H = (P «
Q) Ú
Q
P Q P« Q ÚQ
V V V V
V F F F
F V F V
F F V V
b) G = (P ®
Q) ®
(P Ù
Q)
P Q P® Q PÙ Q (P ®
Q) ® (P Ù
Q)
V V V V V
V F F F V
F V V F F
F F V F F
a) G = A ®
B e H = ~(A Ú
B)
A B G AÚ B H
V V V V F
V F F V F
F V V V F
F F V F V
Conclusão: G não equivale a H
b) G = ~(A Ú
B) e H = ~A Ù
~B
A B AÚ B G ~A ~B H
V V V F F F F
V F V F F V F
F V V F V F F
F F F V V V V
104 Conclusão: G equivale a H.
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
K L M
V V V
F F V
V F V
F F F
a) L Þ
M. Pelo critério 3:
L M L® M
V V V
F V V
F V V
F F V
Logo, L Þ
M, pois L®
M é uma tautologia.
b) M Þ
K
M K M® K
V V V
V F F
V V V
F F V
c) L Þ
K
L K L® K
V V V
F F V
F V V
F F V
Logo, L implica logicamente em K. 105
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
d) K Þ
M
K M K® M
V V V
F V V
V V V
F F V
Conclusão: K implica logicamente em M (ou K Þ
M).
2) A = (~P «Ú
Q) e B = (P Q)
P Q A B
V V F V
V F V V
F V V V
F F F F
Verifica-se que I[A] = V na terceira e quarta linhas e nessas
mesmas linhas I[A] = V também. Logo, A Þ B.
4.1 Argumento
b) (S ®
(~C Ù
~Q)) Ù
(~C Ù
Q) ®
~S
106
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
4.2.1 Exercício 1.
1 2 3 4
S C Q ~C ~Q ~C Ù ~Q S ® 1 ~C ÙQ 2Ù 3 ~S 4® ~S
V V V F F F F F F F V
V V F F V F F F F F V
V F V V F F F V F F V
V F F V V V V F F F V
F V V F F F V F F V V
F V F F V F V F F V V
F F V V F F V V V V V
F F F V V V V F F V V
A fórmula é válida.
4.2.2 Exercício 1
I[P] = V I[P] = F
2 3
I[Q] = V I[Q] = F V
4 5
V V
F = (P Ù(P ® Q)) ® (P « Q)
Nó 2: V ? V ? ? V ?
Nada se pode concluir sobre o valor do nó 2.
F = (P Ù(P ® Q)) ®
(P «Q)
Nó 5: V F V F F V F F F Idem nó 3.
b) G = ~(P Ù
Q) ®
~P
I[P] = V I[P] = F
2 3
I[Q] = V I[Q] = F V
4 5
V F
c) H = ((A Ú
B) Ù
(A ®
C)) ®
A
I[A] = V I[A] = F
2 3
V I[B] = V I[B] = F
4 5
I[C] = V I[C] = F V
6 7
108 F V
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
Exercício 2
I[S] = V I[S] = F
2 3
I[C] = V I[C] = F
V
4 5
V
6 7
V V
1. a) G = A ÚB®~A
F V F VF
Para que o condicional seja falso o antecedente (Ú
) deve 109
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
b) (P ® E) Ù E® P
F V V V V F F.
Para I[P] = F, a fbf resulta em F. Logo, não é válida.
5. A ÙB 1, 4, conj
6. D Ú~C 3, 5, mp
7. ~C Ú D 6, com
8.C® D 7, cond
9. C 2, 4, mp
10. D 8, 9, mp
b) ~A Ù BÙ(B ®(A Ú
C)) ® C
1. ~A hip
2. B hip
3. B ® (A ÚC) hip
4. A ÚC 2, 3, mp
5. ~(~A) ÚC 4, dn
6. ~A ® C 5, cond
7. C 1, 6, mp
1. ~A ® ~B hip
2. A ® C hip
3. B hip (só precisa provar C)
4. ~(~A) 1, 3, mt
5. A 4, dn
6. C 2, 5, mp
Exercício 2: (A ®
B) Ù
(~C Ú
A) Ù
C ®
B
1. A ®B hip
2. ~C Ú
A hip
3. C hip
4. C ®A 2, cond
5. C ®B 1,4 sh
6. B 3, 5, mp 111
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
5. Quantificadores
a) Todo S é P.
b) Todo S é P negada.
c) Algum S é P.
d) Não é enunciado categórico.
e) Não é enunciado categórico.
f) Dois enunciados: Algum S é P e Algum S não é P.
g) Todo S é P.
h) não é enunciado categórico.
Exercício 1
a) P(x) = x é Jaraqui, no conjunto de todos os peixes.
b) Não é possível.
Exercício 2
a) "x,Rx b) $
x(Rx ÙVx)
c) "
x(Rx ® Vx) d) $
x(Rx Ù~Sx)
e) "x(Rx ® Sx) f) "
x,Rx Úx, ~Rx
g) "
x(Vx ® Rx) h) "x(Rx ®~Vx)
i) "
x(Rx ® ~Sx) j) "
x(Sx ® Rx)
k) $
x(Rx Ù Sx) l) "
x ~Vx ® ~x(Vx Ù
Rx)
Exercício 3
Fazendo Ax “x é par”, Bxy “x < y” e Cy “y é ímpar”, a fbf
assume valor falso.
Exercício 4
1) a) F b) V c) F d) V e) V
2) a) V b) V c) V d) F
112
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
2. a) S(1) = 1
S(n ) = S(n – 1) + (n – 1), para n ³
2
b) S(1) = 1
S(n ) = S(n – 1) + 2(n – 1), para n ³
2.
1) algoritmo R(n)
se n = 1 então
retorne 3
senão
retorne R(n – 1) + n2
fimse
fimalgoritmo
2) 6
113
Tecnologia em Análise e Desenvolvimento de Sistemas
Lógica para Computação
Exercícios
1. Diga qual das sentenças abaixo são proposições, da
Lógica Proposicional. Classifique as que são proposições como
simples ou compostas.
a) Aline é bonita.
b) Klinger é trabalhador.
c) Quem saiu?
d) Ninguém falou.
e) Alguém está sorrindo.
f) 2 x 7 = 14.
g) 4 + y = 25.
h) Jorge chegou e Janice saiu.
i) 4 x 9 = 57 e Tefé fica no estado de Roraima.
j) Cucui fica no estado do Amazonas e a floresta é bonita.
k) Qualquer um pode falar.
l) Alguém gritou.
m) Ou o exercício está correto ou não sei a resposta.
n) Cheguei cedo mas não encontrei Onofre.
o) Se azul for amarelo, então roxo é branco.
p) Quem corre cansa.
q) Euclides viajou?
r) Josefina está alegre e vai à festa hoje.
s) Heliodoro não conhece todos.
t) A casa está fechada mas a janela está aberta.
114
Tecnologia em Análise e
Lógica para Computação Desenvolvimento de Sistemas
d) (P ® (Q ® R)) « ((P Ù Q) ® R)
e) P1 ® (P2 ® (P3 ® (P4 ® (P5 ® (P6 ®(P7 ®
))))))
f) P1 ® ((P2 ÙP3) ® ((P4 Ù P5) ® ((P6 Ù
P7) ®
P8)))
g) ~((P Ù Q) ÚRÚ S) Ù (P1 Ù Q1)
h) (~P ® Q) ® ((~Q ® P) Ù (P Ú Q))
i) (P ® ((P ® (Q Ù P))) ® (Q Ù P))
j) (P ® ~Q) ® ~(P Ù Q)
4. ~A ®
B
5. B
a) A(1) = 5
A(n) = A(n 1) + 10, para n 2.
b) B(1) = 3
B(n) = B(n – 1) + 1/n, para n 2.
c) C(1) = 1
C(n) = C(n – 1) +3(n – 1), para n 2.
d) D(1) = 1
D(2) = 2
D(n) = 2D(n – 1) + 3D(n – 2), para n > 2.
e) M(1) = 1
M(2) = 1
M(3) = 2
M(n) = M(n – 1) + 2M(n – 2) + 3M(n – 3), para n > 3. 123
Tecnologia em Análise e
Desenvolvimento de Sistemas Lógica para Computação
algoritmo S(n)
se n = 1 então
retorne 3
senão
retorne S(n – 1) + 2(n – 1)
fimse
fimalgoritmo
125