logica para computação
DESCRIPTION
Lógica matematica para ciência da computação.TRANSCRIPT
Lógica paraComputação
Tecnologia em Análisee Desenvolvimento de Sistemas(Sistema Presencial Mediado)
Lógica
Universidade do Estado do Amazonas
paraComputação
GovernadorEduardo Braga
Vice-GovernadorOmar Aziz
ReitoraMarilene Corrêa da Silva Freitas
Vice-ReitorCarlos Eduardo S. Gonçalves
Pró-Reitor de PlanejamentoOsail Medeiros de Souza
Pró-Reitor de AdministraçãoFares Franc Abnader Rodrigues
Pró-Reitor de Extensão e Assuntos ComunitáriosRogelio Casado Marinho Filho
Pró-Reitora de Ensino de GraduaçãoEdnéa Mascarenhas Dias
Pró-Reitor de Pós-Graduação e PesquisaJosé Luiz de Souza Pio
Coordenador Geral do Curso de Tecnologiaem Análise e Desenvolvimento de Sistemas
(Sistema Presencial Mediado)Odwald Schreder
Coordenadora PedagógicaÂngela Timótia Pereira Lima
Coordenador Técnico AdministrativoEdnaldo Coelho Pereira
Diagramação, Formatação e CapaAurelino da Silva Bentes
Revisão XXXXXXXXXXX
Ficha Técnica
Salvador Ramos Bernardino da Silva (Coordenador)Professor da Escola Superior de Tecnologia (EST/UEA)Especialista em Desenvolvimento de Sistemas –UFAM
Manoel S. S. AzevedoProfessor da Escola Superior de Tecnologia (EST/UEA)
Mestre em Engenharia Elétrica-UFCG
Cláudio de Oliveira SantosProfessor da Escola Superior de Tecnologia (EST/UEA)Especialista em Metodologia do Ensino Superior - FSDB
Perfil dos Autores
Palavra da Reitora
Nós últimos anos, o avanço da tecnologia da informática mudou os
conceitos de ensino e de trabalho. A preocupação com o que se denominou de
“inclusão digital” passou a ser um problema urgente a ser enfrentado pelos
dirigentes do País, já que todos os processos de novas tecnologias deságuam
no conhecimento de informática. No Amazonas, a dificuldade de locomoção
na região, por falta de rodovias, por sua grande extensão territorial, pela
baixa densidade demográfica e pelo subdesenvolvimento secular imposto à
população ribeirinha, torna-se árduo o esforço do Governo para tornar
realidade à inclusão digital.
A UEA, que já nasceu moderna, incorporando tecnologias educacionais
de ponta, utilizando-se particularmente da informática pela massificação do
uso de microcomputadores combinados com uma rede complexa de acesso à
Internet, não poderia ficar alheia a essa necessidade premente. Por isso,
propôs e realizou o primeiro vestibular para levar a 12 municípios um curso
que formasse a mão-de-obra inicial que tornasse a inclusão digital uma
realidade em nosso Estado.
A proposta do curso de Tecnologia em Análise e Desenvolvimento de
Sistemas oferecido pela UEA vislumbra criar mão-de-obra qualificada em um
número significativo de localidades do Estado, cabendo às pessoas
beneficiadas com essa iniciativa a tarefa de irradiar o uso de tecnologias de
informática, abrindo caminhos novos e suscitando novos empregos para a
população local, consolidando, assim, o exercício da cidadania.
Professora Doutora Marilene Corrêa da Silva FreitasReitora da Universidade do Estado do Amazonas
09
Sumário
1. INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111.1 O que é lógica? . . . . . . . . . . . . . . . . . . . . . . . . . . . 111.2 Origem da lógica . . . . . . . . . . . . . . . . . . . . . . . . . 121.3 Classificação da lógica: . . . . . . . . . . . . . . . . . . . . . . 13
2. A LÓGICA PROPOSICIONAL . . . . . . . . . . . . . . . . . . . . . . . 152.1 Elementos fundamentais da sintaxe da linguagem da Lógica
Proposicional: . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.1.1 Formalização de uma proposição: . . . . . . . . . . . 19
2.2 Semântica da lógica proposicional . . . . . . . . . . . . . . . 222.2.1 Interpretação dos conectivos lógicos . . . . . . . . . . 23
2.2.1.1 Negação de uma proposição . . . . . . . . . . . . 232.2.1.2 Conjunção de duas proposições . . . . . . . . . . 262.2.1.3 Disjunção . . . . . . . . . . . . . . . . . . . . . . . 272.2.1.4 Condicional . . . . . . . . . . . . . . . . . . . . . . 282.2.1.5 Bicondicional . . . . . . . . . . . . . . . . . . . . . 292.2.1.6 Disjunção exclusiva . . . . . . . . . . . . . . . . . 30
2.2.2 Interpretação de uma fbf . . . . . . . . . . . . . . . . 31
3. O CÁLCULO PROPOSICIONAL . . . . . . . . . . . . . . . . . . . . . 343.1 Ordem de precedência entre os operadores . . . . . . . . . 343.2 Tabela verdade. . . . . . . . . . . . . . . . . . . . . . . . . . . 353.3 Propriedades semânticas da lógica proporcional . . . . . . 43
3.3.1 Tautologia . . . . . . . . . . . . . . . . . . . . . . . . . . 433.3.2 Contradição . . . . . . . . . . . . . . . . . . . . . . . . 433.3.3 Fórmula satisfatível . . . . . . . . . . . . . . . . . . . . 443.3.4 Equivalência lógica . . . . . . . . . . . . . . . . . . . . 453.3.5 Implicação lógica . . . . . . . . . . . . . . . . . . . . . 45
4. VALIDADE DE UM ARGUMENTO. . . . . . . . . . . . . . . . . . . . . 494.1 Argumento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494.2 Métodos para avaliar a validade de um argumento . . . . . 53
4.2.1 Método da tabela verdade . . . . . . . . . . . . . . . . 544.2.2 Método da Árvore Semântica . . . . . . . . . . . . . . . 554.2.3 Método da negação (ou absurdo) . . . . . . . . . . . . 614.2.4 Dedução lógica . . . . . . . . . . . . . . . . . . . . . . . 65
4.2.4.1 Regras de dedução . . . . . . . . . . . . . . . . . . 654.2.4.2 Outras regras de dedução: . . . . . . . . . . . . . 74
5. QUANTIFICADORES . . . . . . . . . . . . . . . . . . . . . . . . . . . 785.1 Quantificador universal e existencial . . . . . . . . . . . . . 81
6. RECORRÊNCIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886.1 Seqüência definida por recorrência . . . . . . . . . . . . . . 886.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
Respostas dos Exercícios . . . . . . . . . . . . . . . . . . . . . . . . . 98
Exercícios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
10
A atividade de desenvolver sistemas leva, com freqüência,
o desenvolvedor a lidar com raciocínios e estruturas lógicas.
Um programa de computador é um problema estruturado
dentro de um formato lógico específico. A programação de
computadores é uma atividade que requer o desenvolvimento da
lógica de programação, que, por sua vez, tem seus fundamentos
na lógica matemática.
A lógica é uma ciência de índole matemática e fortemente
ligada à Filosofia. Já que o pensamento é a manifestação do
conhecimento, e que o conhecimento busca a verdade, é preciso
estabelecer algumas regras para que essa meta possa ser
atingida. Assim, a lógica é o ramo da filosofia que cuida das
regras do bem pensar, ou do pensar correto, sendo, portanto, um
instrumento do pensar.
A lógica estuda os princípios e métodos usados para
distinguir o raciocínio correto do incorreto. (COPI, 1978, p. 19).
1.1 O que é lógica?
11
IntroduçãoCapítulo I
Lógica para Computação
Tecnologia em Análise e Desenvolvimento de Sistemas
“Lógica é a ciência do raciocínio.”
(Malba Tahan)
“Lógica é a ciência das leis do pensamento e a arte de
aplica-las corretamente na pesquisa e na demonstração da
verdade.”
(R. Solivete)
“A Lógica é a ciência que dirige, por meio de leis, as
operações de nossa razão, para que ordenada, facilmente
alcance a verdade.”
(Sinibaldi)
Não se pretende afirmar, com essas definições, que só se
pode argumentar corretamente com uma pessoa que tenha
estudado lógica. Assim como um bom nadador não necessita
estudar física e a fisiologia do seu corpo para nadar bem, uma
pessoa pode argumentar corretamente sem ter estudado lógica.
No entanto, quando a pessoa estuda lógica e pratica os
exercícios correspondentes, tem maior possibilidade de
raciocinar corretamente. (COPI, 1978, p. 19).
O estudo da lógica foi iniciado pelo filósofo grego
Aristóteles (384 – 322 a.C.), nascido em Estagira, na Macedônia.
Criou a Ciência da lógica, cuja essência era a teoria do silogismo.
Reuniu essa teoria nos escritos denominados Órganon, ou
Instrumento da Ciência.
Ainda na Grécia, distinguiram-se duas escolas, a
PERIPATÉTICA, derivada de Aristóteles e a ESTÓICA, fundada por
Zenão (326 – 264 a.C.) e desenvolvida por Crisipo (280 – 250 a.C.).
1.2 Origem da lógica.
12
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
No período que vai de Aristóteles até o século XIX, não
foram registrados estudos significativos sobre lógica, exceto os
trabalhos desenvolvidos por Gottfried Wilhem Leibiniz (1646 –
1716), que só foram apreciados e conhecidos no século XIX.
O Período Booleano (1840 – 1920) iniciou-se com as obras
de George Boole e Augustus de Morgan, que publicaram os
fundamentos da chamada Álgebra da lógica, respectivamente
com MATHEMATICAL ANALYSIS OF LOGIC e FORMAL LOGIC.
A partir do século XIX, diversos estudiosos dedicaram-se ao
estudo da lógica. Surgiram outros ramos da lógica.
Não há unanimidade quanto à classificação da lógica.
Alguns autores classificam a lógica como:
a) Lógica Indutiva – ocupa-se dos argumentos indutivos e
dos testes para medir a probabilidade indutiva.
b) Lógica dedutiva – é a lógica na qual, dada uma causa, é
possível determinar suas conseqüências.
A lógica dedutiva é, freqüentemente, dividida em:
a) Lógica clássica – Considerada como o núcleo da lógica
dedutiva. É o que chamamos hoje de CÁLCULO DE
PREDICADOS.
Três princípios regem a Lógica Clássica:
1. da IDENTIDADE: “A é A”, ou seja, uma coisa é ela própria
sem possibilidade de contestação.
1.3 Classificação da lógica:
13
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
2. da CONTRADIÇÃO: A não pode ser, ao mesmo tempo A e
não-A, ou seja, ou é A ou não é A.
3. do TERCEIRO EXCLUÍDO: A ou é Y ou é Z, não admitindo
uma terceira possibilidade. Exemplo: A ou tem valor
verdadeiro ou tem valor falso e não admite um terceiro
valor.
b) LÓGICAS COMPLEMENTARES DA CLÁSSICA: São lógicas
que têm alguns princípios além dos princípios da lógica
clássica e, de alguma forma complementam a lógica
clássica.
Exemplos: lógicas modal, que adiciona à lógica clássica o
princípio das possibilidades; lógica deôntica, que agrega os
princípios dos direitos, obrigações e proibições; lógica
epistêmica, agrega o princípio da certeza, etc.
c) LÓGICAS NÃO-CLÁSSICAS: Assim caracterizadas por
derrogarem algum ou alguns dos princípios da lógica
clássica.
Exemplos: paracompletas e intuicionistas (derrogam o
princípio do terceiro excluído); paraconsistentes (derrogam o
princípio da contradição); não-aléticas (derrogam o terceiro
excluído e o da contradição); não-reflexivas (derrogam o
princípio da identidade); a lógica difusa (fuzzy logic), que
trabalha com estados intermediários ou gradações, como é o
caso, ao se estudar a variável temperatura, que pode assumir
estados intermediários entre o estado “quente” e “frio”, entre
outras.
14
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
15
2.1 Elementos fundamentais da sintaxe da linguagem da Lógica Proposicional:
Uma linguagem é um conjunto de símbolos destinados a
transmitir idéias. Toda linguagem tem sua sintaxe: as regras que
dizem quais formações simbólicas são válidas para aquela
linguagem.
Na língua portuguesa os símbolos “caza”, “cekql”, não têm
significado porque não estão de acordo com a sintaxe da língua.
De acordo com Souza (2002, p. 4), o conjunto de símbolos
que constitui a sintaxe da linguagem da Lógica Proposicional é
composto dos seguintes elementos:
a) Alfabeto – constituído por:
a) símbolos de pontuação: () , .
b) símbolos de verdade: true, false.
c) símbolos proposicionais: P, Q, R, S, P1, Q1, S1, A, B, ...
d) conectivos proposicionais: Ø, Ù, Ú, ®, «.
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.
Capítulo II
Lógica para Computação
Tecnologia em Análise e Desenvolvimento de Sistemas
A Lógica Proposicional
b) Proposição
É uma sentença declarativa afirmativa, a respeito da qual
se pode afirmar que é falsa ou verdadeira.
Vejamos as seguintes sentenças:
Manaus é uma capital.
— Proposição
Ela é muito inteligente.
— Não é proposição pois “ela” não está especificada.
Que horas são?
— É uma pergunta e não pode ser uma proposição.
Paris é uma cidade brasileira.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
16
Os símbolos de pontuação são diferentes dos utilizados na
sintaxe da língua portuguesa.
Os símbolos de verdade são originários da língua inglesa. Há
autores que utilizam T e F para representá-los. Nesse contexto,
serão utilizados os símbolos V e F, significando os valores
“verdadeiro” e “falso”, respectivamente.
Quantos símbolos proposicionais existem? Pelo exemplo
acima, percebe-se que são infinitos, o que torna o alfabeto da
linguagem da Lógica Proposicional infinito, ao contrário do
alfabeto de muitas outras linguagens, como o da língua
portuguesa.
Os conectivos proposicionais são utilizados com freqüência
na Matemática. ¬ é denominado “não”. Alguns autores utilizam
’ (apóstrofo) como símbolo de negação. Será adotado ~ (til) para
representar negação. Os outros conectivos são , que se lê “e”,
, denominado “ou”, , para representar implicação e
denominado “se e somente se”, “bi-implicação” ou
“bicondicional”.
Os conectivos lógicos serão vistos em detalhe na seção 2.2
Ù
Ú ® «
— Proposição
Cinco é menor que oito.
— Proposição.
Proposições podem ser representadas por letras. Na forma
acima, uma proposição está em linguagem corrente. Quando se
representa uma proposição por uma letra, usa-se a linguagem
simbólica.
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.
Proposições podem ser:
Simples (ou atômicas): quando expressam uma única idéia.
“A lua é quadrada” é um exemplo de proposição simples.
Compostas (ou moleculares): quando são formadas por
duas ou mais proposições simples, como: “A casa é grande e o
carro é bonito”,
Proposições compostas podem não serem unidas por
conectivos. Exemplo: João gosta de correr. José gosta de andar.
O valor de uma proposição é chamado de valor lógico ou
valor verdade da proposição e pode ser VERDADEIRO ou FALSO.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
17
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)
Ú
Ù
®
«
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
18
1. Marque as sentenças abaixo que são proposições, simples
ou compostas. Para as sentenças que não são proposições,
explique porque não o são.
a) ( ) Os gatos têm três patas.
b) ( ) João é alto.
c) ( ) Ela é bonita.
d) ( ) A casa é pequena.
e) ( ) Quem está batendo à porta?
f) ( ) Muitos foram chamados, mas poucos foram
selecionados.
g) ( ) Talvez eu vá ao teatro.
h) ( ) 2 + 2 = 4
i) ( ) x + y = 8
j) ( ) O planeta Marte é habitado.
k) ( ) Possivelmente choverá hoje.
l) ( ) Falar é fácil. Difícil é fazer.
m) ( ) Quem falou?
EXERCÍCIOS
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
19
O item a) define as fórmulas mais simples: os símbolos de
verdade, que são VERDADEIRO e FALSO.
O item b) define os símbolos proposicionais. Se Q
representa uma proposição, Q é uma fórmula da lógica
proposicional.
A negação de uma proposição também é considerada uma
fórmula, conforme a regra c).
A quarta regra define que duas fórmulas (lembre que um
símbolo proposicional é uma fórmula) combinadas por um
conectivo lógico formam uma nova fórmula.
Fórmulas do tipo
))A B C, A 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.
«Ù ÚÚ B Ú ® , PÙ«
«Ù ÚÚ®Ù
As informações da Tabela 1 ajudam a escrever fórmulas da
lógica proposicional, a partir de sentenças na linguagem
corrente.
Seja a sentença:
Se João Gosta de Maria, então Maria é feliz. João gosta de
Maria. Logo, Maria é feliz.
2.1.1 Formalização de uma proposição:
Nessa afirmação, algumas proposições simples poderão ser
identificadas:
Proposição simples
- João gosta de Maria
- Maria é feliz
Representação na lógica proporcional: (P Q) P Q.®Ù®
Representação
P
Q
Outro exemplo:
Se Maria gosta de José e José é feliz, então Maria é feliz.
Mas, se Maria não gosta de José, e José não é feliz, então Maria
não é feliz.
Identificamos:
Proposição simples
Maria gosta de José
José é feliz
Maria é feliz
Representação
P
Q
R
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
20
Expressão em Português
E, mas, também, além disso, ponto final entre duas proposições
Ou
Se A então B
A implica B
A logo B
A só se B, A somente se B
A é uma condição suficiente para B
Basta A para B
B é uma condição necessária para A
A se e somente se BA é condição necessária e suficiente para B
Conectivo lógico
Expressão Lógica
conjunção A BÙ
disjunção A BÚ
Condicional A B®
Bicondiconal (equivalência) A B«
Tabela 1 – Indicações para formalização de uma proposição (Geristing, 2001, p. 4).
Não há uma única maneira de escrever cada uma das
fórmulas acima como uma sentença do nosso idioma.
Apresentamos, abaixo, alguns exemplos de como cada uma pode
ser escrita:
a) Se José é atleta, então gosta de correr.
José é atleta, logo gosta de correr.
José ser atleta implica em gostar de correr.
b) José é atleta, gosta de correr mas não é magro.
José é atleta, gosta de correr e não é magro.
José é atleta. José gosta de correr. José não é magro.
c) José será atleta se, e somente se, gostar de correr.
d) Se José é atleta ou gosta de correr, então José é magro.
José é atleta ou gosta de correr. Portanto, José é magro.
e) José será atleta se, e somente se, gostar de correr e for
magro.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
21
Representação da sentença, como uma fbf:
(P Q) R ((~P ~Q) ~R)Ù®ÙÙ®
Tendo-se uma fórmula da lógica proposicional e
conhecendo-se o significado de cada proposição simples que a
compõe, é possível escrever uma sentença na linguagem
corrente que represente essa fórmula.
Considerando A “José é atleta”, B “José gosta de correr” e
C “José é magro” é possível escrever as fórmulas da lógica
proposicional dadas abaixo, como uma sentença na linguagem
corrente:
a) A B
b) A B ~C
c) A B
d) (A B) C
e) A (B C)
®
ÙÙ
«
Ú®
«Ù
EXERCÍCIOS
1. Considere as proposições simples A “Está frio”, B “Está
chovendo” e C “Está quente”. Observando a Tabela 1 e usando o
alfabeto da lógica proposicional, representar as proposições:
a) Está frio e está chovendo.
b) Está frio mas não está chovendo.
c) Está chovendo ou está quente.
d) Se está frio então não está quente.
e) Estará frio se, e somente se, estiver chovendo.
f) Está quente ou está chovendo.
g) Se está frio e está chovendo, então não está quente.
h) Se está quente, então não está chovendo nem está frio.
i) Estar frio é condição suficiente para chover.
j) Está chovendo, logo não está quente.
k) Estar chovendo implica em estar frio.
2. Considere P “A casa é bonita”, Q “A porta é pequena” e R
“A janela é grande”. Escreva uma sentença em linguagem
corrente correspondente às seguintes fórmulas da lógica
proposicional:
a) P Q f) P Q
b) P Q g) P Q
c) ~P h) ~(P Q)
d) (P Q) R i) (P Q) (P R)
e) ((P Q) R) Q j) Q (P R)
Ù Ú
« ®
Ù
Ù® ®Ú®
ÚÙ®®Ù
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
2.2 Semântica da lógica proposicional
A semântica de uma linguagem se ocupa dos significados
dos símbolos sintáticos dessa linguagem.
Não basta escrever corretamente uma fbf. Faz-se
necessário atribuir valores a essas fórmulas. 22
Uma proposição
PVF
Duas proposições
PVVFF
QVFVF
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
2.2.1.1 Negação de uma proposição
A negação de uma proposição P é obtida acrescentando-se
“É falso que” ou “Não é verdade que” antes de P ou inserindo-se
a palavra “não” em P. Representa-se a negação por ~P (alguns
autores usam ¬ P, outros preferem P'). 23
2.2.1 Interpretação dos conectivos lógicos
A semântica dos elementos sintáticos da Lógica
Proposicional é uma função cujo domínio são as fbf da lógica
proposicional e cujo contradomínio é o conjunto {V, F}, ou seja, a
interpretação de uma proposição simples resultará em V ou F. Por
esse motivo, ela é chamada lógica bivalente.
Antes de passar à semântica de cada conectivo lógico,
vejamos algumas considerações sobre a construção de tabela
verdade.Uma forma de avaliar o valor lógico de uma proposição é
construir a tabela verdade para essa proposição.Inicia-se a construção de uma tabela verdade fazendo
todas as combinações possíveis dos valores verdade de cada
proposição simples.Uma proposição simples tem a tabela verdade formada por
duas linhas, pois só pode ter dois valores verdade possíveis:
verdadeiro ou falso. Se a proposição for composta por duas
proposições simples, P e Q, por exemplo, serão possíveis quatro
combinações de valores verdade simultaneamente: ambas
falsas, ambas verdadeiras e uma falsa e outra verdadeira.
Escrevendo essas possibilidades em forma de tabela temos:
É importante observar que, ao negar uma proposição
composta, quando se nega cada proposição simples deve-se
negar também o conectivo.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
24
Observe exemplos de negação de uma proposição na Tabela
2.
Proposição Negação correta Negação incorreta
O dia está quente O dia não está quente.É falso que o dia está quente.Não é verdade que o dia está quente.
Paulo é baixo e gordo
É falso que Paulo seja baixo e gordo.Paulo não é baixo ou não é gordoPaulo é alto ou magro.
Paulo é alto e magro.Observar que basta que ele não tenha um dos atributos para estar negada a afirmação inicial.
O rio é raso ou não está poluído
É falso que o rio seja raso ou não esteja poluído.Não é verdade que o rio é raso ou não está poluídoO rio é fundo e está poluído
O rio não é raso ou está poluído
Tabela 3 – Negação de uma proposição.
ProposiçãoValor verdade(valor lógico)
Representaçãosimbólica
Manaus está no Brasil.Manaus não está no Brasil.É falso que Manaus está no Brasil.Não é verdade que Manaus não está no Brasil3 + 4 = 5É falso que 3 + 4 = 53 + 4 5
VFFVFVV
P~P~P
~(~P)Q
~Q~Q
Tabela 2 – Valor verdade de uma proposição.
A negação de uma proposição deve ser feita com cuidado,
principalmente quando se trata de uma proposição composta.
Observe a tabela 3.
1. Dê a negação das seguintes proposições:
a) O processador é rápido, mas a impressora é lenta.
b) O processador é rápido ou a impressora é lenta.
c) Pepinos são verdes e não têm sementes.
d) A comida é boa ou o serviço é excelente.
e) Nem a comida é boa nem o serviço é excelente.
2. Dê o valor lógico das proposições:
a) 16 não é um número ímpar.
b) Não é verdade que 14 é um número ímpar.
c) Não é verdade que 11 não é um número par.
d) 3 + 5 8
e) O Solimões é o menor rio do mundo.
3. Qual das seguintes proposições representa ~A se A é a
proposição “Júlia gosta de sorvete mas detesta creme”.
a) Júlia detesta sorvete e creme.
b) Júlia não gosta de sorvete nem de creme.
c) Júlia não gosta de sorvete mas adora creme.
d) Júlia odeia sorvete ou gosta de creme.
¹
EXERCÍCIOS
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
25
Tabela verdade da negação:
P
V
F
~P
F
V
2.2.1.2 Conjunção de duas proposições
Quando duas proposições são combinadas pelo conectivo
“e” formam uma proposição composta, chamada conjunção.
A conjunção e entre duas proposições – P, Q – é representada
por P Q e se lê “P e Q”.Ù
P Q P Ù Q V V V V F F F V F F F F
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.
As quatro proposições acima podem ser representadas por
P e Q ou, na linguagem simbólica, por P Q.
No exemplo (1), P e Q são ambas verdadeiras. Nesse caso,
a conjunção é verdadeira.
Nos exemplos (2) e (3) uma é verdadeira e outra é falsa. A
conjunção resulta em valor verdade (ou valor lógico) falso.
No último exemplo, ambas as proposições, P e Q, são
falsas e a conjunção também resulta em falso.
Conclusão:
A conjunção entre duas proposições só é verdadeira se
ambas o forem.
Tabela verdade da conjunção:
Ù
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
26
2.2.1.3 Disjunção
A proposição “João é alto ou Maria é bonita” é uma
proposição composta, onde “João é alto” é uma proposição
simples e “Maria é bonita” é outra proposição simples. Quando se
unem essas duas proposições simples pelo conectivo “ou”, tem-
se uma proposição composta. A proposição composta obtida pela
combinação de duas proposições simples e a palavra “ou” (com
sentido “e/ou”), é chamada de disjunção.
A disjunção das proposições P e Q é representada por
“P Q”.
O valor verdade da proposição composta acima será
determinado pelo valor verdade de cada uma das proposições
simples que a formam. Se for verdade apenas a proposição “João
é alto” ou apenas a proposição “Maria é bonita” ou, ainda, se
ambas as proposições forem verdadeiras, a conjunção resultará
em valor lógico verdadeiro.
A disjunção de duas proposições será falsa somente quando
ambas as proposições forem falsas.
Tabela verdade da disjunção:
Ú
P Q P Ú Q V V V V F V F V V F F F
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
27
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.4 Condicional
Uma proposição do tipo “se P então Q” é chamada
condicional e é designada por P Q.
Em P Q, P é a proposição antecedente, e Q é a
conseqüente.
®
®
Considere a frase “Se eu me sair bem na prova, então irei ao
cinema”.
Se essa pessoa sair-se bem na prova, dizer que ela não irá ao
cinema, é atribuir o valor lógico falso à proposição condicional,
pois a mesma afirmou que, saindo-se bem na prova, irá ao
cinema. Ou seja, quando o antecedente é verdadeiro e o
conseqüente é falso, o condicional é falso.
Caso a pessoa saia-se mal na prova, nada se pode afirmar
sobre se irá ou não ao cinema. A frase não dá nenhuma
informação nesse sentido. Por isso, convencionou-se que P Q
será verdadeira quando P for falsa.
®
A declaração “o fogo é condição necessária para a fumaça”
pode ser dito “se houver fumaça então haverá fogo”.
Antecedente: “há fumaça”, conseqüente “há fogo”. Por outro
lado, o fato de haver fogo não leva à conclusão de há fumaça.
Dizendo de outra forma: em P Q, se o fato de P ser verdadeira
levar a Q ser verdadeira, não quer dizer que quando Q é
verdadeira P também será.
®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
28
1. Dê o valor verdade das proposições:
a) O homem é um animal ou 5 + 4 = 15
b) Fleming descobriu a penicilina ou Newton foi um físico.
c) Ou Brasília é a capital do Ceará ou Fortaleza é a capital
do Ceará.
d) Ou o Sol é um satélite de Marte ou a Terra é uma estrela.
e) Ou o Sol é uma estrela ou Plutão é um planeta.
EXERCÍCIOS
EXERCÍCIOS
1. Dê o antecedente e o conseqüente das seguintes
proposições:
a) Se a chuva continuar, então o rio vai transbordar.
b) Uma condição suficiente para faltar energia, é que a
chave central desligue.
c) Uma boa dieta é uma condição necessária para um gato
ser saudável.
d) A definição ficará errada apenas se for alterada.
2. Dê o valor verdade das proposições abaixo:
a) Se a Lua é um satélite então a terra é um planeta.
b) Um corpo celeste não é um satélite se gira em torno de
um planeta.
c) Se Mimi é um gato, então tem quatro patas. (Supor que
existe um gato chamado Mimi)
d) Se a Terra é uma estrela então a Lua é um planeta.
2.2.1.5 Bicondicional
Uma proposição da forma “P se, e somente se, Q” é dita
bicondicional. É representada por P Q.
Uma proposição bicondicional será verdadeira quando
ambas as proposições componentes são de mesmo valor verdade.
E será falsa quando as duas proposições têm valores opostos.
«
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
29
Tabela verdade do condicional:
P Q P à Q V V V V F F F V V F F V
EXERCÍCIOS
1. Dê o valor verdade das seguintes proposições:
a) Amarelo será preto se, e somente se, vermelho for
branco.
b) 3 + 4 = 7 se e somente se 8 x 5 = 50.
c) 1 + 1 = 4 se, e somente se, 7 + 3 = 10.
d) Azul não é verde se, e somente se, preto for lilás.
e) Não é verdade que 1 + 1 = 3 se, e somente se, 2 + 2 = 5.
2.2.1.6 Disjunção exclusiva
Dadas duas proposições P e Q, a disjunção exclusiva é
definida como sendo verdadeira se apenas uma delas é
verdadeira. Pode-se ler “P ou Q mas não ambas”.
Representaremos por .
A disjunção exclusiva é representada em programação
pelo operador XOR, que é um acrônimo da expressão inglesa
“exclusive or”.
Ú
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
30
P Q P « Q V V V V F F F V F F F V
Obs.: o conectivo “se e somente se” pode ser escrito de
forma abreviada: “sse”.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
31
EXERCÍCIOS
1. Dê o valor verdade das proposições:
a) Quando você ligou eu estava dormindo ou estava
passeando.
b) Quando você ligou eu estava em casa ou estava
dormindo.
c) Quando você ligou eu não estava em casa ou estava
dormindo.
d) Para sobremesa, ou escolho goiabada ou bananada.
Tabela verdade do ou exclusivo:
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).ÚÙÙ
2.2.2 Interpretação de uma fbf
A interpretação de uma fbf composta depende da
interpretação de cada proposição simples da fórmula.
Exemplo 1:
Seja H = (P Q). Existem quatro interpretações possíveis
para H. Basta observar a tabela verdade da disjunção.
Qual a interpretação de H, se H = (P Q) P, sabendo que
I[P] = V e I[Q] = F?
Ú
Ú®
Com I[P] = V e I[Q] = F, P Q resulta em verdadeiro.
Verdadeiro P (verdadeiro verdadeiro) resulta em
verdadeiro. Logo, I[H] = V
Ú
® ®
P Ú Q ® P H
V F V
P Ú Q ® P H
V V F V V V
Exemplo 2:
Qual a interpretação da fórmula E = (( ~P Q) (R P),
sabendo que I[P] = V e I[Q] = F?
Solução:
Como na análise da fórmula anterior, inicialmente lança-
se na tabela os valores das interpretações conhecidas:
Ù®Ù
(~ P Ù Q) ® (R Ù P) E
V F V
Sendo I[P] = V, I[~P] tem valor F. Conseqüentemente,
I[~P Q] = F. Não se conhecendo a interpretação de R, não é
possível concluir pela interpretação de R P. Por outro lado,
~P Q é o antecedente do condicional. Quando o antecedente de
um condicional é falso, este resulta em verdadeiro,
independente do valor lógico do conseqüente. Dessa forma,
pode-se concluir que I[E] = V, mesmo não se conhecendo I[Q]. O
quadro final dessa análise será:
Ù
Ù
Ù
(~ P Ù Q) ® (R Ù P) E
F V F F V V V
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
32
Para responder a essa pergunta, analisa-se o valor da
fórmula, a partir das interpretações conhecidas:
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]
®
Ù
Ú
®
EXERCÍCIOS
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.
®
2. Qual a interpretação da fórmula G, abaixo, sabendo que
I[P] = V e I[Q] = V?
G = (P (~Q R)) ~(Q (P ~R))®ÚÙÚ«
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
33
Exemplo 3:
Sendo G = P Q e sabendo-se que I[G] = V, o que se pode
concluir a respeito de I[P] e I[Q]?
Solução:
A disjunção é verdade quanto pelo menos um de seus
componentes é verdadeiro, existindo três situações possíveis.
Dessa forma, nada se pode concluir sobre o valor verdade de P e
de Q.
Ú
P Ú Q G
? V ? V
Capítulo 3
Lógica para Computação
Tecnologia em Análise e Desenvolvimento de Sistemas
O Cálculo Proposicional
34
Tem por objetivo avaliar o valor verdade de uma fórmula.
3.1 Ordem de precedência entre os operadores
Para avaliar o valor verdade de uma fórmula da lógica
proposicional, a precedência dos operadores deve ser
observada. Abaixo são apresentados os operadores lógicos, da
maior para a menor precedência:
1. expressões entre parênteses, resolve-se a partir dos
parênteses mais internos para os mais externos.
2. ~ (negação)
3. , (conjunção e disjunção têm a mesma precedência,
operando-se o que ocorrer primeiro, da esquerda para a direita).
4.
5.
Isto significa que, para avaliar a fórmula A B C, como
não há parênteses, avalia-se primeiro a conjunção ( ), depois o
condicional ( ).
ÙÚ
®
«
®Ù
Ù
®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
35
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
Quando os conectivos lógicos foram apresentados,
tínhamos tabelas verdade com duas proposições simples, cada
uma com quatro linhas. No exemplo acima, temos uma fórmula
com três proposições simples e a respectiva tabela verdade tem
oito linhas. Podemos concluir que o número de linhas de uma n
tabela verdade é obtido por 2 linhas, sendo n o número de
proposições simples que a fórmula contém.
O passo seguinte é analisar a fórmula, de acordo com a
precedência dos operadores, um operador por coluna da tabela.
Exemplos:
Construir a tabela verdade para as fórmulas G e H abaixo:
a) G = A B A B
Como a fórmula acima não contém parênteses, deve-se,
então, seguir a ordem de precedência dos operadores na análise
Ù®Ú
3.2 Tabela verdade.
Para construir a tabela verdade de uma fórmula, inicia-se
pela composição, em conjunto, de todos os valores lógicos das
proposições simples que compõem uma fórmula.
Considerando a fórmula (A B) C, vemos que a mesma
possui três proposições simples. Fazendo todas as combinações
possíveis dos valores verdade dessas proposições simples temos:
Ú®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
36
Conclui-se que o valor da fórmula G é VVVV.
Outra maneira de fazer uma tabela verdade é criar uma
coluna para cada símbolo da fórmula e realizar as operações
seguindo a ordem de precedência dos operadores.
Dessa segunda maneira, a tabela verdade da fórmula acima
A seguir, acrescenta-se outra coluna e faz-se a operação do
conectivo Ú
A B A Ù B A Ú B V V V V V F F V F V F V F F F F
Por fim, acrescenta-se mais uma coluna e avalia-se o
conectivo , considerando como antecedentes os valores da 3a
coluna e como conseqüentes os valores da 4a coluna,
completando a tabela verdade.
®
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
A B A Ù B V V V V F F F V F F F F
da mesma. Após fazer as combinações possíveis dos valores
verdade de A e B, opera-se primeiro o conectivo :Ù
1 2 3 4 5 6 7 8 9 A B A Ù B ® A Ú B
V V V F F V F F
Etapa
inicia escrevendo toda a fórmula, cada símbolo em uma coluna,
e fazendo a composição de todas as possibilidades dos valores
lógicos de A e B.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
37
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
O primeiro conectivo a ser avaliado é o , o que é feito em
duas etapas: na etapa 1, repete-se os valores verdade de A e B
das colunas 1 e 2 nas colunas 3 e 5, respectivamente e na etapa 2
opera-se o :
Ù
Ù
1 2 3 4 5 6 7 8 9 A B A Ù B ® A Ú B
V V V V V V F V F F F V F F V F F F F F
Etapa 1 2 1
A seguir opera-se o . De forma semelhante ao que foi feito
nas etapas 1 e 2, a etapa 3 consiste em copiar os valores de A e B
para as colunas 7 e 9, respectivamente, e na etapa 4 anota-se o
resultado da disjunção entre A e B, gerando a tabela:
Ú
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
38
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
Obs.: A diferença básica entre uma e outra maneira de
construir a tabela verdade é que na primeira forma a última
coluna sempre corresponde ao conectivo principal, enquanto na
segunda, o conectivo principal continua sendo o último a ser
avaliado mas não está situado na última coluna.
b) H = ((A B) C) (B ~C)
Após fazer as combinações de valores verdade das
proposições simples, procede-se à avaliação da expressão do
parêntese mais interno (A B):
Ú®«®
Ú
Finalmente, passa-se à etapa 5, que é avaliar o condicional,
sendo o antecedente os valores da coluna 4 (etapa 2) e os
conseqüentes os valores constantes da coluna 8 (etapa 4),
gerando a tabela verdade final:
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
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
39
O valor da fórmula H é: FFVFFFVV.
Obs.: Caso as combinações de valores verdade iniciais (três
primeiras colunas da tabela) estejam em uma ordem diversa da
apresentada acima a ordem dos valores verdade (V, F) do
resultado poderá ser diferente da apresentada. No caso do
exemplo acima, se a combinação da 1a e da 2a linhas, estiverem
Depois, faz-se a avaliação de ~C, seguindo-se a avaliação
do condicional (B ~C) e, por fim, do bicondicional, entre os
valores das colunas 5 e 7.
®
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
A seguir, considera-se a quarta coluna como o antecedente
e a terceira coluna como conseqüente, e avalia-se o condicional
( ) do parêntese mais externo ((A B) C).® Ú®
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
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
40
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 V V V F V V V F V F F V V F F V V F V V F V F F V V F F V F F F F F F F F F
Etapa 1 2 1
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 F V F V V F F F V V F V F F F V F F F
O parêntese mais interno é o primeiro a ser avaliado. A
etapa 1 é repetir os valores verdade de A e B e a etapa 2 é fazer a
conjunção de A e B. Após a etapa 2 a tabela verdade assume o
aspecto abaixo:
em outra posição, os dois valores F iniciais do resultado não serão
os primeiros. Seja qual for a ordem das combinações iniciais, o
resultado sempre terá 5 valores F e três V.
A fórmula H = ((A B) C) (B ~C), do exemplo
anterior, avaliada pelo segundo método, onde se escreve cada
símbolo em uma coluna, é feita como da forma abaixo. Notar que
é importante representar os parênteses da fórmula, já que esses
influem na ordem das operações. Também vale destacar que o
símbolo de negação deve figurar em uma coluna, separado da
proposição que está negando.
Ú®«®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
41
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
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
A etapa 5 é transcrever os valores verdade de B e C para as
colunas 10 e 13, respectivamente.
É importante observar que a negação precede todos os
outros operadores. Por isso, antes de operar o condicional da
coluna 11 é necessário fazer a negação de C (coluna 12), que
constitui a etapa 6. O passo 7 é avaliar o condicional da coluna
11, gerando a posição abaixo da tabela verdade:
A etapa 3 é transcrever os valores verdade de C para a
coluna 8. A etapa 4 será fazer o condicional entre a coluna 5 ( ),
como antecedente e a coluna 8 (C), como conseqüente.
Ú
EXERCÍCIOS
1. Faça a tabela verdade para as fbf abaixo:
a) (A B) C
b) A B ~A
c) (A B) ~A B
d) (P (~Q R)) ~(Q (P ~R))
Ú®
Ú®
®«Ú
®ÚÙÚ«
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
42
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
A coluna da etapa 8 contém o resultado. Como já se
esperava, esse resultado coincide com o encontrado na tabela
verdade feita anteriormente. E não poderia ser diferente, pois a
mesma fórmula só pode gerar um único resultado, seja qual for o
método empregado para fazer sua avaliação.
Para finalizar a construção da tabela verdade, a etapa 8
consiste na avaliação do bicondicional, que será feita entre o
resultado da expressão do lado esquerdo, que consta da coluna 7
e o resultado da expressão do lado direito, que se encontra na
coluna 11:
3.3.2 Contradição
Uma fórmula é contraditória (ou uma contradição) se, e
somente se, para toda interpretação I, I[H] = F.
Exemplo: (P Q) ~(P Q)ÙÙÚ
P Q P Ù Q ( P Ú Q) ~(P Ú Q) Ù V V V V F F V F F V F F F V F V F F F F F F V F
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
43
3.3 Propriedades semânticas da lógica proporcional
3.3.1 Tautologia
Uma fórmula H é uma tautologia ou é válida se, e somente
se, para toda interpretação I, I[H] = V
Fazendo-se a tabela verdade para a fbf H = P ~( P Q),
tem-se
ÚÙ
P Q P Ù Q ~( P Ù Q) P Ú ~( P Ù Q) V V V F V V F F V V F V F V V F F F V V
Observa-se que o valor lógico de H é V, ou seja, para toda
interpretação I, I[H] = V. Nesse caso, H é uma tautologia.
EXERCÍCIOS
1. Fazer a tabela verdade para a fórmula
H = (P Q) (P Q) e verificar se a mesma é uma tautologia.
2. Mostre que a fórmula abaixo é uma tautologia:
(P Q) (~P Q)
Ù®Ú
®«Ú
EXERCÍCIOS
1) Mostre que as fórmulas abaixo são contradições:
a) ~(P Q) Q
b) ~(P (P Q))
®Ù
®Ú
3.3.3 Fórmula satisfatível.
Uma formula é satisfatível (uma indeterminação ou uma
contingência), se existe pelo menos uma interpretação I, tal que
I[H] = V
Por essa definição, basta que apenas uma interpretação I,
de H, seja verdadeira, ou seja, basta que apenas uma linha da
tabela verdade de H resulte em V, para que a fórmula seja
classificada como satisfatível.
Exemplo: construir a tabela verdade para a fórmula
G = ~((A B) A)®®
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
1) Construa a tabela verdade para as fórmulas abaixo e
prove que são satisfatíveis:
a) H = (P Q) Q
b) G = (P Q) (P Q)
«Ú
®®Ù
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
44
3.3.4 Equivalência lógica (rtepresentada por )Û
Dadas duas fórmulas H e G, G equivale a H (G H), se e
somente se, para toda interpretação I, I[G] = I[H]
Fazendo a tabela verdade para a fbf H = (A B) (B A),
temos:
®Ù®
Û
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
Comparando a tabela verdade da fórmula H, acima, com a
tabela verdade fórmula P Q (bicondicional, vista no item
2.2.5), verifica-se que são idênticas. Diz-se, então, que a
fórmula H e o bicondicional são equivalentes.
«
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
® Ú
Ú Ù
Û
EXERCÍCIOS
3.3.5 Implicação lógica (representada por Þ)
Sejam as fórmulas G e H. As três condições seguintes são
equivalentes:
(1) ~G Ú H é uma tautologia.
(2) G Ù ~H é uma contradição.
(3) G ® H é uma tautologia.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
45
K L (lê-se K implica logicamente em L) se satisfizer a uma
das três condições acima especificadas. Escolhendo a condição
(1), sua tabela verdade será:
Þ
K L ~K ~K Ú L V V F V F F V V V F F F F F V V
que não é uma tautologia. Logo, K não implica logicamente em L.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
46
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
Uma fórmula G implica logicamente uma fórmula H (G H)
se uma das condições acima for satisfeita.
Exemplos: Considere as fórmulas
a) K = (P Q) Q
b) L = P Q
c) M = P Q
As tabelas verdade de K, L e M são:
Þ
ÙÚ
Ù
Ú
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
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
47
Usando a mesma condição (1) para testar se L Þ K, temos:
K L ~L ~L Ú K V V F V F F V V V F V V F F V V
resulta em uma tautologia. Logo, L implica logicamente em K.
Aplicando o critério (2), G ~H, para verificar se L Þ K,
faz-se a tabela verdade para L ~K, chega-se ao seguinte
resultado:
Ù
Ù
K L ~K L Ù ~K V V F F F F V F V F F F F F V F
que é uma contradição.
Aplicando o critério (3), que é fazer a tabela verdade
para L K, verifica-se que é uma tautologia.
Chega-se à conclusão que, se duas fórmulas atendem a um
dos critérios acima, pode-se afirmar que uma implica
logicamente na outra, mesmo que não se teste os outros dois
critérios.
®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
48
Outra maneira de verificar a implicação lógica:
Dadas duas fórmulas G e H, G implica H (G H) se, e
somente se, para toda interpretação I,
se I[G] = T, então I[H] = T
Pela definição de implicação acima, K implica M. Observe
que para as duas interpretações I[K] = V , I[M] = V também.
Quando I[K] = F, nada se pode afirmar sobre I[M]. Da mesma
forma, L implica K e L implica M. Já não se pode dizer o mesmo a
respeito de M em relação a L e K, uma vez que para todas as
interrpretações I[M] = V, nem todas as interpretações de I[L] e
I[K] são também verdadeiras.
Þ
EXERCÍCIOS
2) Construa as tabelas verdade para as fórmulas A = (~P
Q) e B = (P Q) e verifique se A Þ B, usando este último critério
de implicação.
«
Ú
49
4.1 Argumento
Suponha que seja feita a pergunta: “A Terra tem luz
própria?”. Uma forma de buscar a resposta é procurar um termo
intermediário que se relacione com outros termos da pergunta.
Esse termo pode ser “planeta”. A partir desse termo, pode-se
formular as seguintes sentenças:
Um planeta não tem luz própria.
A Terra é um planeta.
Logo, a Terra não tem luz própria.
A terceira sentença é uma conclusão, que foi tirada a partir
das duas primeiras e, com isso, a pergunta foi respondida.
Outro exemplo:
3 + 2 = 5
5 = 4 + 1
3 + 2 = 4 + 1
Raciocínios como os apresentados acima, são da forma
silogística.
Capítulo 4
Lógica para Computação
Tecnologia em Análise e Desenvolvimento de Sistemas
Validade de umArgumento
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
50
Aristóteles definiu o silogismo como:
“O silogismo é uma série de palavras em que, sendo
admitidas certas coisas, delas resultará necessariamente
alguma outra, pela simples razão de se terem admitido
aquelas.”
Silogismo significa ligação, ou seja, a ligação de dois
termos através de um terceiro.
As sentenças que servem para provar ou, pelo menos, para
fornecer alguma evidência para a conclusão são chamadas de
premissas. Um conjunto de sentenças, onde algumas são
premissas e outra é a conclusão é chamado de argumento.
Um argumento pode ser escrito de diversas formas.
Vejamos o seguinte exemplo:
Andar de bicicleta é um ótimo exercício. Josefina anda de
bicicleta. Josefina pratica um ótimo exercício.
Alguns autores preferem representar o argumento da
forma:
Andar de bicicleta é um ótimo exercício.
Josefina anda de bicicleta.
Josefina pratica um ótimo exercício. (três pontos para
identificar a conclusão.)
\
Outros autores preferem a forma:
Andar de bicicleta é um ótimo exercício.
Josefina anda de bicicleta.
Þ Josefina pratica um ótimo exercício. (o símbolo condicional
para identificar a conclusão.)
51
Indicadores de conclusão
logo
portanto
assim
por conseguinte
dessa maneira
neste caso
daí
de modo que
então
assim sendo
segue-se que
o(a) qual implica que
resulta que
podemos deduzir que
Indicadores de premissa
desde que
como
porque
assumindo que
visto que
admitindo que
isto é verdade porque
a razão é que
em vista de
como conseqüência de
como mostrado pelo fato que
sabendo-se que
supondo que
Um argumento acontece quando se pretende provar ou
demonstrar uma conclusão, a partir de uma ou mais
premissas.
Uma maneira de representar, na lógica proposicional, um
argumento é:
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
O importante é caracterizar a conclusão. Na álgebra
proposicional as premissas e conclusão são representadas por
símbolos proposicionais (letras maiúsculas).
Um argumento onde a conclusão decorre das premissas é
um argumento válido. Argumentos dessa forma são conhecidos
pela expressão latina modus ponens (método de afirmação).
Existem termos que são freqüentemente usados para
assinalar a conclusão e as premissas de um argumento. Abaixo,
destacamos alguns dos mais freqüentemente utilizados:
Proposição simples
- O criminoso é primário
- O criminoso cometeu um descuido
- O criminoso terá sua pena diminuída.
Representação
P
Q
R
Representação na lógica proporcional:
(P Q) (P R) ~P ~R.
Note que (P R) tem, obrigatoriamente, que vir entre
parênteses. A fbf acima, se escrita da forma (P Q) P R ~P
~R, nos levaria a duas situações:
— primeiro, surgiria a dúvida: qual é a conclusão, o
primeiro ou o segundo condicional?
— em segunda instância, a sua avaliação seguiria a
precedência dos operadores e primeiro seria feito ((P Q) P),
depois seria avaliado (R ~P) e, por fim, os dois condicionais
restantes , o que levaria a um resultado diferente do esperado.
Úٮٮ
®
ÚÙ®Ù
®
ÚÙ
Ù
®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
52
Na lógica proposicional, temos: A B C.
Como o operador conjunção ( ) tem precedência sobre o
condicional ( ), não é necessário escrever (A B) C. Porém,
há situações que os parênteses são obrigatórios.
Vejamos o argumento abaixo:
O criminoso é primário, ou cometeu um descuido. Se o
criminoso for primário, então terá sua pena diminuída. O
criminoso não é primário. Logo, sua pena não será diminuída.
Ù®
Ù
® Ù®
A viagem para Manacapuru dura uma hora. A
João irá a Manacapuru B
Logo, João viajará durante uma hora. C
4.2 Métodos para avaliar a validade de um argumento
Verificar se um argumento é válido é verificar se o mesmo é
uma tautologia, ou seja, se todas as interpretações (linhas) de
sua tabela verdade resultam em valor lógico verdadeiro (V). Em
última instância, é verificar se o valor verdade do conectivo
principal (o último que será analisado) é verdadeiro, para todas
as interpretações do argumento.
Argumentos podem ser escritos como fórmulas da
linguagem da Lógica Proposicional. Entretanto, nem todas as
fórmulas são escritas em formato de argumento, composto de
premissas e uma conclusão.
Os métodos de avaliação de um argumento, que serão
vistos a seguir, são métodos de avaliação geral e se prestam para
avaliar fbf quaisquer. Assim, adotaremos o termo fórmula e não
argumento, ao longo dos próximos itens.
Serão estudados quatro métodos para verificar a validade
de fórmulas da lógica proposicional: método da tabela verdade,
método da árvore semântica, método da negação ou absurdo e
dedução lógica.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
53
EXERCÍCIOS
1. Represente na linguagem simbólica da Lógica
Proposicional os argumentos:
a) Se Jonas andar e o trem sair no horário, ele perde o trem.
Se ele perder o trem, então ele fica triste e volta para
casa. Jonas andou. Portanto, Jonas voltou para casa.
b) Vou para casa somente se não chover e não estiver
quente. Não choveu mas está quente. Portanto, não vou
para casa.
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
Para todas as interpretações I, I[H] = V. Então, H é uma
fórmula válida (é uma tautologia).
Mas o número de linhas de uma tabela verdade é dado por n
2 , onde n é o número de proposições simples. Quando o número
dessas proposições simples aumenta, a tabela verdade torna-se
não recomendável.
Existem outros métodos de prova que abreviam o processo
e que serão vistos a seguir.
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.
®ÙÙÙ®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
4.2.1 Método da tabela verdade
O método da tabela verdade é conhecido, também, como
método da força bruta, por ser um método exaustivo de prova.
Através dele, tem-se os resultados de todas as interpretações
possíveis de uma fbf.
Exemplo
Verificar se a fbf H = (P Q) (~Q ~P) é válida.
A construção da tabela verdade deve ser feita conforme o
item 3.2.
®«®
54
Na árvore do exemplo acima, o nó 1 é chamado de raiz e
está no primeiro nível da árvore, os nós 2 e 3 estão no segundo
nível, os nós 4 a 7 estão no terceiro nível, e assim,
sucessivamente. Os nós que não estão ligados a nenhum nó em
um nível abaixo, são chamados de nós folha. No exemplo acima,
são nós folha: 4, 5, 7, 9, 10 e 11.
Uma árvore binária pode ser utilizada para verificar a
validade de uma fórmula da lógica proposicional.
Exemplo 1:
Verificar se a fbf H = (P Q) (~Q ~P) é válida,
utilizando o método da árvore semântica.
®«®
O primeiro passo é construir uma árvore binária com os nós
1, 2 e 3, como no exemplo acima. A seguir, escolher uma
proposição simples para analisar, por exemplo, a proposição P.
Cada aresta da árvore construída representará um dos valores
lógicos possíveis de P.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
55
4.2.2 Método da Árvore Semântica
Uma árvore é uma estrutura de dados, composta por nós,
unidos por arestas. Quando cada nó se liga a, no máximo, dois
outros nós, essa árvore é chamada de árvore binária.
Exemplo de árvore binária:
1
2 3
4 5 6 7
8 9
10 11
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
56
A interpretação de um nó corresponde a todas as
interpretações (arestas) encontradas no caminho percorrido da
raiz até o nó em questão.
A análise de um nó consiste em partir da interpretação
desse nó e tentar concluir pelo seu valor verdade.
Temos:
1
2 3
I[P] = V I[P] = F
Para analisar o nó número 2, começamos atribuindo o valor
V a todas as ocorrências de P na fórmula H, dada.
Esquematicamente:
(P Q) (~Q ~P)
Nó 2 = V V
Como P é verdadeiro, podemos concluir que ~P é falso
(segunda ocorrência de P na fórmula).
(P Q) (~Q ~P)
Nó 2 = V FV
®«®
®«®
O lado esquerdo do bicondicional é um condicional, cujo
antecedente é verdadeiro. Nesse caso, o valor verdade desse
condicional depende do conseqüente. O lado direito do
bicondicional é outro condicional, cujo conseqüente é falso (se P
é verdadeiro, ~P é falso), e depende do antecedente para se
poder concluir pelo seu valor lógico. Como não se tem o valor
verdade da expressão do lado esquerdo do bicondicional (P Q), ®
1
2 3
I[P] = V I[P] = F
V
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
57
Quando o antecedente de um condicional é falso, esse
condicional tem valor lógico V, independente do valor lógico do
conseqüente. Quando o valor lógico do conseqüente de um
condicional é falso, esse condicional tem valor lógico V,
independente do valor lógico do antecedente. Dessa forma, é
possível concluir pelo valor lógico do bicondicional, uma vez que
se tem os valores lógicos das expressões à direita e à esquerda
deste.
nem da expressão do lado direito (~Q ~P), nada se pode
afirmar sobre o valor lógico desse bicondicional e, portanto,
nada se pode afirmar sobre o valor do nó 2:
(P Q) (~Q ~P)
Nó 2 = V ? ? ? FV
De forma semelhante, analisa-se o nó 3:
(P Q) (~Q ~P)
Nó 3 = F VF
®
®«®
®«®
(P Q) (~Q ~P)Nó 3 = F V V V VF
®«®
Quando se chega à conclusão do valor verdade (V ou F) da fórmula, através da análise de um nó da árvore, esse valor é representado na mesma, abaixo do nó e este se torna um nó folha:
Procede-se à análise do valor verdade dos nós 4 e 5. A
interpretação do nó 4 é obtida percorrendo-se a árvore a partir
da raiz até o nó em questão. O nó 4 significa que P e Q têm,
ambas, valor lógico V. Lança-se esses valores na fórmula e busca-
se concluir pelo valor verdade desta:
(P Q) (~Q ~P)
Nó 4 = V V V V FV V FV
Procedimento semelhante deve ser adotado em ralação ao
nó 5. Para esse nó tem-se I[P] = V e [Q] = F:
(P Q) (~Q ~P)
Nó 5 = V F F V VF F FV
Como ambos os condicionais resultam em F, o bicondicional
resulta em V.
Árvore semântica final de H:
®«®
®«®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
58
Como nada se pode concluir a respeito do nó 2, acrescenta-
se a esse nó a interpretação de outra proposição simples da
fórmula sob análise:
I[P] = V I[P] = F
I[Q] = V I[Q] = F V
1
2 3
4 5
I[P] = V I[P] = F
1
2 3
Interpretação do nó 2: O conectivo principal é o segundo
condicional. Como P é verdadeiro, nada se pode concluir a
respeito do antecedente do conectivo principal, ou seja, não é
possível concluir pelo valor da expressão (P Q). Mas o
conseqüente do conectivo principal tem valor verdadeiro e,
nesse caso, a implicação é verdadeira. Logo, o nó 2 tem valor
verdadeiro.
(P Q) P
Nó 2 = V ? V V
®
®®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
59
I[P] = V I[P] = F
I[Q] = V I[Q] = F V
1
2 3
4 5
V V
Como todos os nós folha resultaram em V (verdadeiro),
conclui-se que H é válida (é uma tautologia).
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:
®®
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.
2) Se todos os nós folha tiverem valor lógico falso, a fórmula
será uma contradição. Caso nem todos tenham valor
falso, diz-se que a mesma é satisfatível.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
60
I[P] = V I[P] = F
1
2 3
V F
A interpretação do nó 3 é feita assumindo que P tem valor
falso. Independente do valor de Q, o valor do antecedente do
conectivo principal será verdadeiro e seu conseqüente falso. A
fórmula resulta em falso.
(P Q) P
Nó 3 = F V F F
A árvore semântica de G tem o seguinte aspecto:
®®
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)®Ù®®®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
61
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
2) Mostre que o argumento (S (~C ~Q)) (~C Q) ~S é
válido, usando o método da árvore semântica.
Ù®®«
Ù®
ÚÙ®®
®ÙÙÙ®
4.2.3 Método da negação (ou absurdo)
Esse é um método geral de demonstração. Será utilizado
nesse contexto para provar se uma fbf é uma tautologia.
Suponha que se quer provar a validade de uma fórmula H.
Procura-se demonstrar, a princípio, que H é falsa. Recorrendo a
uma série de deduções, pode-se chegar à conclusão que, de fato,
H é falsa, ou pode-se chegar a um absurdo.
Na hipótese de se concluir que H é falsa, está provado que
a fórmula não é uma tautologia.
Quando se tenta provar que H é falsa e se chega a um
absurdo, conclui-se que H é uma tautologia. Dizendo de outra
forma: se é absurdo dizer que H é falsa, é porque H não é falsa, H
é válida, é uma tautologia.
Para que o antecedente do conectivo principal, que é a
conjunção – , seja verdadeiro, as expressões à esquerda e à
direita deste devem ser, ambas, verdadeiras. Na situação acima,
depende-se do valor de B para se tirar uma conclusão. Para que a
expressão A B resulte em V, com A sendo V, B teria que ter valor
V. Já a expressão B C só resulta em V se B tiver valor F. Todavia,
é um absurdo atribuir valor verdadeiro e falso a B, ao mesmo
tempo. Não há como provar que G tem valor lógico falso.
Conclusão:
Dizer que G é falso é um absurdo logo, G é válida. G é uma
tautologia.
Ù
®
®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
62
O primeiro passo para a solução é identificar o conectivo
principal, aquele que será analisado por último e atribuir valor
falso a esse conectivo:
G = ((A B) (B C)) (A C)
F
Sendo o conectivo principal um condicional, o único caso
em que será falso é quando o antecedente é verdadeiro e o
conseqüente falso. Faz-se essa suposição:
G = ((A B) (B C)) (A C)
V F F
Como o conseqüente é uma expressão mais simples que o
antecedente, faz-se primeiro sua análise. Este será falso,
somente quando seu antecedente for V e o conseqüente for F.
Assim, atribui-se valor V à proposição A e F à proposição C.
Depois, atribui-se esses mesmos valores às demais ocorrências
das proposições A e C, na fórmula, obtendo-se a situação:
G = ((A B) (B C)) (A C)
V V F F V F F
®Ù®®®
®Ù®®®
®Ù®®®
O bicondicional resulta em falso em duas situações: quando
o termo à esquerda é falso e o da direita é verdadeiro ou quando
a situação é inversa, o termo da esquerda é verdadeiro e o da
direita é falso. Faz-se necessário testar as duas situações.
Poissibilidade 1: H = (P Q) (~P ~Q)
V F F
As expressões à direita e à esquerda são ambas
condicionais. Há três possibilidades de um condicional ser
verdadeiro e uma de ser falso. Por esse motivo, inicia-se pelo
lado direito, onde, para o antecedente ser verdadeiro e o
consequente falso, P deve ter valor F e Q ter valor V. Aplicando
®«®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
63
Ausência de absurdo
Ao se tentar negar uma fórmula que se supõe, inicialmente,
verdadeira pode-se não chegar a nenhum absurdo. Em outras
palavras, pode-se chegar à conclusão de que, para uma
determinada interpretação I, a fórmula é falsa. Nesse caso,
pode-se afirmar que a mesma não é válida, que não é uma
tautologia. Entretanto, não se pode dizer que é uma contradição
ou que é apenas satisfatível.
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
®«®
«
®«®
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
Ú®
ÚÙ®®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
64
esses valores à expressão à esquerda do bicondicional, chega-se
à conclusão que esta é verdadeira:
H = (P Q) (~P ~Q)
F V V F VF F FV
não se chegando a nenhum absurdo, provando que H é falsa para
a interpretação I[P] = F e I[Q] = V. Essa conclusão já é suficiente
para afirmar que a fórmula não é válida.
Para completar a análise, vejamos a outra situação.
Poissibilidade 2: H = (P Q) (~P ~Q)
F F V
Desta feita, é aconselhável começar pela subfórmula do
lado esquerdo, obtendo os valores P verdadeiro e Q falso.
Concluindo a análise não se chega a nenhum absurdo, reforçando
o resultado já obtido de que H não é válida.
Poissibilidade 2: H = (P Q) (~P ~Q)
V F F F FV V VF
®«®
®«®
®«®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
65
4.2.4.1 Regras de dedução
As regras de dedução são de dois tipos: regras de
equivalência e regras de inferência.
4.2.4 Dedução lógica
Para testar se um argumento do tipo P1 P2 P3 P4 ...
Pn Q é uma tautologia, pode-se usar um sistema de regras de
dedução, que modifica uma fbf preservando seu valor lógico.
A prova por dedução supõe que as premissas são todas
verdadeiras e segue uma seqüência de demonstração até
verificar que a conclusão é verdadeira.
Uma seqüência de demonstração é uma seqüência de fbf,
na qual cada fbf é uma hipótese ou é obtida através da aplicação,
às fbf anteriores, de uma das regras de dedução do sistema
formal.
Uma seqüência de demonstração para provar que Q é uma
conclusão válida numa fbf do tipo P1 P2 P3 P4 ... Pn
Q, tem o formato:
P1 hipótese
P2 hipótese
P3 hipótese
...
Pn hipótese
fbf1 deduzida de uma ou mais das fbf anteriores, por
uma regra de dedução
fbf2 deduzida de uma ou mais das fbf anteriores, por
uma regra de dedução
fbf3 deduzida de uma ou mais das fbf anteriores, por
uma regra de dedução
...
Q deduzida de uma ou mais das fbf anteriores, por
uma regra de dedução
ÙÙÙÙÙ
®
ÙÙÙÙÙ®
Fórmula Equivale a Nome/abreviação da regra
P Ù Q P Ú Q
Q Ù P Q Ú P
Comutativa – com
(P Ù Q) Ù R (P Ú Q) Ú R
P Ù (Q Ù R) P Ú (Q Ú R)
Associatividade - ass
~(P Ù Q) ~(P Ú Q)
~P Ú ~Q ~P Ù ~Q
Leis de De Morgan
P® Q ~P Ú Q Condicional – cond P ~(~P) Dupla negação – dn
P « Q (P® Q) Ù (Q® P) Definição de Equivalência - equi Tabela 4 - Regras de equivalência
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
Regras de inferência:
De Podemos deduzir Nome da regra
P, P® Q Q Modus ponens – mp
P ® Q, NQ ~ P Modus tollens – mt
P, Q P Ù Q Conjunção – conj
P Ù Q P, Q Simplificação - simp
P P Ú Q Adição – ad Tabela 5 - Regras de inferência
66
Regras de equivalência permitem substituir uma fbf por
outra equivalente, sem mudar o valor lógico da fórmula.
Relembrando equivalência lógica, dizer que R Û S (R
equivale logicamente a S) tem o mesmo significado de “R S é
uma tautologia”.
Embora seja possível adotar muitas equivalências lógicas
num sistema formal de regras de dedução, será adotado um
conjunto mínimo de regras de equivalência e de inferência, de
modo que o sistema lógico formal seja correto (os argumentos
demonstráveis são válidos) e completo (todos os argumentos
válidos devem ser demonstráveis).
Regras de equivalência
«
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
67
Caso se tenha uma fórmula constante da primeira coluna da
tabela de regras de equivalência, pode-se substituir essa
fórmula pela sua correspondente na segunda coluna, sem que o
valor da fórmula seja alterado, da mesma forma que uma
fórmula da segunda coluna pode ser substituída pela sua
correspondente da primeira coluna.
Exemplo: A fórmula P Q é equivalente à fórmula ~P Q
Uma maneira de provar a equivalência lógica (P Q) Û
(~P Q) é fazer a tabela verdade para (P Q) (~P Q) e
verificar que é uma tautologia.
Outra forma de fazer essa verificação, é analisar a tabela
verdade do condicional:
® Ú
®
Ú ®« Ú
P Q P à Q V V V V F F F V V F F V
Observa-se que I[P Q] = V em três situações de P e Q em
conjunto. Por outro lado, observando as interpretações de P e de
Q separadamente, vê-se que quando I[P] = F, I[P Q] = V e que
quando I[Q] = V, também I[P Q] = V. Mas I[P] = F significa que
I[~P] = V. Dessa forma é possível afirmar que quando P Q for
verdadeiro, ~P ou Q será verdadeiro, ou, ainda, sabendo que ~P é
verdadeira ou que Q é verdadeira (basta uma ser verdadeira) a
implicação P Q também será verdadeira.
As regras de inferência não podem ser utilizadas da
mesma forma.
Voltando-se à tabela verdade do condicional mais uma vez,
percebe-se que P e P Q têm ambas valor lógico verdadeiro
®
®
®
®
®
®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
68
somente na primeira linha da tabela, e nessa situação Q também
tem valor lógico verdadeiro.
Sempre que se saiba que uma proposição P é verdadeira e
outra proposição P Q também é verdadeira pode-se inferir que
a proposição Q também o é.
Voltando à tabela verdade, verifica-se que Q e P Q são
ambas verdadeiras em duas situações: na primeira linha, quando
P também é verdadeira e na terceira linha, quando P é falsa.
Conclusão: sabendo-se que Q e P Q são ambas
verdadeiras nada se pode afirmar sobre o valor de P, já que P
tanto pode ter valor lógico V quanto F.
Por esse motivo, conhecendo-se o valor verdade de uma
fórmula da primeira coluna da tabela de regras de inferência,
pode-se concluir pelo valor da fórmula correspondente,
constante da segunda coluna. Entretanto, conhecendo-se o valor
de uma fórmula da segunda coluna NÃO é possível deduzir o valor
da fórmula da primeira coluna, como acontece com as regras de
equivalência.
®
®
®
Exemplo 1:
Utilizando dedução lógica, prove a validade do argumento:
(A C) (C D) A D
O primeiro passo é identificar as hipóteses:
Tem-se três hipóteses (que representam premissas), as
quais estão ligadas pelo conectivo “e”, e uma conclusão, que é
C.
A prova por dedução consiste em supor que as hipóteses
são verdadeiras e procurar concluir que a conclusão também o é,
o que torna o argumento válido.
Identificadas as hipóteses, relacionam-se as mesmas em
um coluna, enumerando os passos da dedução e, ao lado, anota-
®Ù®Ù®
Após essa conclusão tem-se 4 fbf verdadeiras. Percebe-se
que a partir das fbf 2 e 4, novamente usando a regra modus
ponens, é possível concluir que D é verdadeira, concluindo a
dedução:
1. A C hip ®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
69
se o significado, ou como foi obtida a fbf constante da primeira
coluna:
1. A C hip (Hipótese. É suficiente a abreviatura)
2. C D hip
3. A hip
®
®
O objetivo é provar que D (a conclusão) é verdadeira. D está
na segunda hipótese. Observando as regras de equivalência e de
inferência não é possível concluir pelo valor de D diretamente.
Porém, há uma regra de inferência que permite concluir pelo
valor de C: o modus ponens. Essa regra diz que, se o antecedente
de uma implicação e a própria implicação são verdadeiras, então
pode-se inferir que o conseqüente dessa implicação também é
verdadeiro. Tem-se, pela hipótese 1 que A C é verdadeira e na
hipótese 3 que A – antecedente da fbf da hipótese 1 – também é
verdadeira. Assim, deduz-se que C também é verdadeira. Esse é
o passo 4 da dedução:
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).
®
®
®
A conjunção só é verdadeira quando ambas as componentes
o são. A regra de inferência “simplificação” foi criada partindo
desse pressuposto: sabendo que a conjunção é verdadeira,
conclui-se que uma componente e também a outra são
verdadeiras.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
70
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
Verifica-se que existem duas hipóteses e o objetivo é
provar que C é verdadeira.
1. A (B C) hip
2. A hip
®ÙÙ®
®Ù
É conhecido o valor da implicação (hipótese 1) e do
antecedente desta (hipótese 2). Por modus ponens conclui-se
pelo conseqüente. Observar que na tabela 5, a regra é genérica.
Em P, P Q, P pode ser uma fbf com mais de uma proposição
simples, da mesma forma que Q. Nesse último exemplo o
conseqüente, B C, corresponde ao Q da tabela:
1. A (B C) hip
2. A hip
3. B C 1, 2 mp
®
Ù
®Ù
Ù
Relembrando a tabela verdade da conjunção:
P Q P Ú Q V V V V F V F V V F F F
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
71
1. A (B C) hip
2. A hip
3. B C 1, 2 mp
4. B, C 3, simp
®Ù
Ù
Provando que C é verdadeira e, portanto, que o argumento
é válido.
Obs.: O passo 4 significa que B é verdadeira e também C é
verdadeira. Embora não seja necessário, não estaria errado
desmembrá-lo em dois:
4. B 3, simp
5. 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
Foram levantadas três hipóteses e o objetivo é provar que a
conclusão, D, é verdadeira. A princípio não há nenhuma regra
que permita tirar conclusões a partir das hipóteses acima.
ڮٮٮ
Ú®
®
Os passos seguintes são imediatos:
1. (A ~B) C hip
2. C D hip
3. A hip
4. A ~B 3, ad
5. C 1, 4, mp
6. D 2, 5, mp
Ú®
®
Ú
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
72
Conhecendo apenas o valor da conjunção, P Q, como
sendo verdadeiro não é possível saber qual o valor de apenas
uma componente, já que existem três situações em que a
conjunção resulta em valor lógico V.
Por outro lado, saber que uma proposição P é verdadeira, é
suficiente para poder afirmar que a conjunção dessa proposição
com qualquer outra também será verdadeira. Esse fato originou
a regra de inferência “adição”. Observa-se que, sabendo que P é
verdadeira, P Q também o será.
Obs.: Nada se pode afirmar sobre o valor de P, se só se
conhece o valor da conjunção P Q.
Na hipótese 1, caso se conheça o valor do antecedente, A
~B, pode-se inferir o valor do conseqüente. Mas só se conhece o
valor de A. A regra da adição permite inferir que, como A é
verdadeira, A ou “qualquer outra fbf” resultará em valor V. E essa
“qualquer outra fbf” pode ser ~B. A prova do argumento
prossegue assim:
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.
Ú
Ú
Ú
Ú
Ú®
®
Ú
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
73
Observações:
1. Possivelmente, modus ponens é a regra de inferência
mais intuitiva e mais utilizada em deduções lógicas.
2. Embora menos freqüentes, quando surgirem fbf da forma
~(P Q) e ~(P Q) deve-se utilizar as leis de De Morgan para
convertê-las em ~P ~Q e ~P ~Q, respectivamente.
3. Fórmulas bem formuladas da forma P Q são de pouca
utilidade em demonstrações. Usando a dupla negação chega-se a
~(~P) Q e depois pode-se usar a regra do condicional para obter
~P Q.
Exemplo 4:
Provar, usando dedução lógica, o argumento:
~A (B A) ~B
Solução
1. ~A hip
2. B A hip
Ù Ú
Ú Ù
Ú
Ú
®
Ù®®
®
Essa é uma amplicação direta da regra de inferência modus
tollens, que diz que sabendo-se que uma implicação é
verdadeira e que o conseqüente dessa implicação é falso, deduz-
se que o antecedente também é falso. De fato, ao observar a
tabela verdade do condicional percebe-se que essa situação é
única. Nada se poderia afirmar sobre o conseqüente, sabendo
que a negação do antecedente é verdadeira.
1. ~A hip
2. B A hip
3. ~B mt
®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
74
EXERCÍCIOS
1. Diga quais regras foram empregadas na prova do
argumento abaixo. A primeira regra já foi fornecida.
Argumento: A (~B ~C) B
Passo de indução regra
1. A hip
2. ~B ~C
3. ~(~B) ~C
4. B ~C
5. ~C B
6. C B
7. B
2. Prove os argumento abaixo, usando dedução lógica:
a) A (B C) [(A B) (D ~C)] B D
b) ~A B (B (A C)) C
Ù®®
®
Ú
Ú
Ú
®
Ù®ÙÙ®ÚÙ®
ÙÙ®Ú®
4.2.4.2 Outras regras de dedução:
a) Conclusão de um argumento constituída por um
condicional
Suponha que o argumento que queremos provar tem a
forma:
P1 P2 P3 ... Pn (R S)ÙÙÙÙ®®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
75
Como se quer inferir uma conclusão constituída por um
condicional, R S, o método dedutivo permite adicionar o
antecedente, R, como hipótese adicional e depois inferir S.
Quando uma conclusão é formada por uma fbf com mais de
um símbolo proposicional, do tipo A B, A B, etc, terá que ser
provada por inteiro, ou seja, não basta provar uma das
componentes. A exceção é quando a proposição composta é um
condicional, do qual se tomou o antecedente como hipótese.
Exemplo 4
Provar o argumento:
(A (A B)) (A B)
Além da hipótese A (A B), também podemos adicionar
A, antecedente da conclusão, como hipótese básica e procurar
provar que B é verdadeira, para que o argumento seja válido.
Temos:
1. A (A B) hip
2. A hip
A partir desse ponto a conclusão é imediata:
3. A B 1, 2, mp
4. B 2, 3, mp
®
ÙÚ
®®®®
®®
®®
®
EXERCÍCIOS
Provar o argumento:
(~A ~B) (A C) (B C)®Ù®®®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
76
b) Silogismo hipotético (sh)
A regra de inferência silogismo hipotético (sh) que diz:
De A B e B C pode-se concluir que A C
Escrevendo o silogismo hipotético como uma fbf temos:
(A B) (B C) (A C)
®® ®
®Ù®®®
Exemplo 5
Provar o argumento: (~A B) (B C) (A C)
Solução:
1. ~A B hip
2. B C hip
O objetivo é provar que a conclusão A C é verdadeira. A
partir das hipóteses 1 e 2 e usando as regras conhecidas não é
possível fazer inferências. Como a conclusão é um condicional, é
opcional acrescentar A como hipótese básica. Vamos tentar uma
solução sem acrescentar A como hipótese.
Analisando a tabela de regras de equivalência vê-se que a
hipótese 1 consta da segunda coluna dessa tabela, na regra
“condicional”. Infere-se, então, que ~A B equivale a A B.
1. ~A B hip
2. B C hip
3. A B 1, cond
ÚÙ®®®
Ú
®
®
Ú ®
Ú
®
®
EXERCÍCIOS
Prove o silogismo hipotético.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
77
Ficou fácil inferir a conclusão. Basta usar o silogismo
hipotético:
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®ÙÚÙ®
78
Capítulo V
Lógica para Computação
Tecnologia em Análise e Desenvolvimento de Sistemas
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”:
Alguns quadrúpedes são bovinos.
Todos os bovinos são herbívoros.
Portanto, alguns quadrúpedes são herbívoros.
Nenhuma das sentenças desse argumento é formada com
os operadores lógicos. Até é possível representar o argumento na
lógica proposicional, que poderia ser a fórmula A B C.
Todavia, esse argumento carece de estrutura interna. Não é
possível interpretar “todos” e “alguns”.
O que se quer significar por estrutura interna, são
relações entre atributos, as quais denotam conjuntos ou classes,
o que pode ser visto representando o argumento da forma:
Algum F é G.
Todo G é H.
Portanto, algum F é H.
Ù
Ú ® «
Ù®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
79
Notar que as letras F, G e H não representam sentenças,
como na lógica proposicional, mas classes de atributos:
quadrúpedes, bovinos e herbívoros. Uma classe é formada por
um conjunto de objetos. Uma classe de atributos, é formada por
um conjunto de objetos que possuem aquele atributo. Não
somente substantivos comuns denotam classes de atributos.
Locuções nominais, como “olho de lula”, “coisa bonita”, “da
Amazônia”, entre outras, também representam classes de
atributos.
Caso as sentenças venham expressas por adjetivo, locução
adjetiva, verbo ou locução verbal, é possível ser convertida em
uma locução nominal, acrescentando a palavra “coisa”.
“Velho”, torna-se “coisas velhas”, “ama Graça” torna-se “coisas
que amam Graça”.
Nos enunciados, as classes de atributos são, muitas vezes,
relacionadas com outras pelas expressões “todo” e “algum”, que
são denominadas quantificadores. Assim como ~, , , , , os
quantificadores também são operadores lógicos. Entretanto,
enquanto aqueles expressam relações entre sentenças, os
quantificadores expressam conjuntos designados pelas classes
de atributos. Um enunciado da forma “Todo A é B”, diz que todo
elemento do conjunto A também é elemento do conjunto B, ou
seja, é o mesmo que dizer que A é subconjunto de B. É convenção
universal que enunciados da forma “Algum A é B” estabelecem
que pelo menos um elemento de A também é elemento de B.
A sentença “Alguns de meus amigos estão zangados
comigo” é interpretada, usualmente, como pressupondo, ou
sugerindo que “mais de um” ou “nem todos” os amigos da pessoa
estão zangados com ela. Esse enunciado é da forma “Algum A é
B”, onde A substitui “meus amigos” e B substitui a locução
adjetiva “zangados comigo”. A interpretação lógica difere um
pouco da usual. Significa “pelo menos um”. Em outras palavras,
ÙÚ®«
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
80
significa que “um”, “alguns” ou “todos” os amigos possuem o
atributo B.
Ainda em relação ao último exemplo, todos os enunciados
estão caracterizados por um quantificador (todo, algum) seguido
por uma classe de atributos (F, G), um elo (é) e, finalmente, uma
outra classe de atributos (G, H). Enunciados desse tipo são
chamados de enunciados categóricos. A primeira classe de um
enunciado categórico é chamada de termo sujeito e a segunda de
termo predicado.
Enunciados categóricos são de quatro formas:
Todo S é P.
Nenhum S é P.
Algum S é P.
Algum S não é P.
Nessas formas, S representa o termo sujeito e P representa
o termo predicado.
Enunciados categóricos podem ser negados, acrescentando
a expressão “não é verdade que”, “não é o caso que”, etc., o que
torna toda a sentença negativa. É importante ressaltar que negar
apenas uma classe de atributo tem um significado diferente. O
conjunto dos elementos que não pertencem a um dado conjunto
C é, em geral, o complemento de C. Quando o “não” se aplica a
uma classe de atributos, expressa a complementação, em vez de
negação. Em “Algumas árvores não são mognos” o “não”
expressa a complementação: o conjunto das árvores que não são
mognos, como as castanheiras, seringueiras e várias outras.
“Algumas árvores são mognos” é verdadeira e refere-se ao
conjunto das coisas que são árvores e, ao mesmo tempo, são
mognos. “Algumas árvores não são mognos”, também é
verdadeira, refere-se ao conjunto das coisas que são árvores mas
não são mognos, é o complemento da primeira, em relação ao
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
81
EXERCÍCIOS
Considere as sentenças abaixo. Classifique por tipo as que
são enunciados categóricos e diga quais não são enunciados
categóricos.
a) Todo pato é bom nadador.
b) Não é o caso que todo pato é bom nadador.
c) Alguns sapos são verdes.
d) Se o carro verde é veloz, então é difícl alcançá-lo.
e) Nadar faz bem.
f) Algumas toalhas estão úmidas e algumas não estão.
g) Qualquer diversão é ilegal.
h) A floresta é bonita.
Passemos a um estudo mais detalhado dos quantificadores.
5.1 Quantificador universal e existencial
conjunto universo de todas as árvores. Acrescentar a expressão
“não é verdade que” às duas sentenças, é dizer que não existe
nem um nem outro conjunto. Como sabemos que árvores
existem, e que parte delas são mognos, dizer o contrário é tornar
falsas ambas as sentenças.
É possível representar o conjunto dos inteiros positivos
através da sentença: “para todo x, x > 0”. Mas essa sentença
contém um quantificador, “para todo” e descreve uma
propriedade para x, “x > 0”, chamada de predicado.
Quantificadores são expressões que dizem a quantidade de
objetos que possuem determinado predicado. Para representr
simbolicamente o quantificador “qualquer que seja” ou “para
todo”, adota-se o símbolo . A sentença acima é assim
representada:
x(x > 0)
O quantificador age sobre a expressão entre parênteses
que se seque a ele.
Considerando o conjunto dos inteiros e a expressão “existe
x, tal que (x/2) é inteiro”, nota-se o surgimento de outro
quantificador. O quantificador existencial, que significa “para
algum” ou “para pelo menos um” ou, ainda, “existe algum” e é
simbolizado por .
Uma propriedade dos elementos de um conjunto pode ser
representada, genericamente, por P(x). Assim, pode-se ter:
x(Px) ou x(Px).
Uma expressão com quantificador pode ser verdadeira ou
falsa.
Considerando o conjunto universo como sendo o conjutno
de todas as pessoas que moram no Estado do Amazonas e a
propriedade P(x) = “x é do sexo feminino”, determinar o valor
verdade das expressões:
a) x(Px) b) x(Px)
A expressão x(Px) não pode ser verdadeira, pois entre as
pessoas que moram no Estado do Amazonas, nem todas são do
sexo feminino. Já a expressão x(Px) é verdadeira, pois pelo
menos uma (sabe-se que são muitas) pessoa residente no
Amazonas é do sexo feminino.
"
"
$
"$
" $
"
$
82
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
EXERCÍCIO 1
Considere um conjunto universo qualquer e uma
propriedade P sobre esse conjunto universo e, caso seja possível:
a) Encontre uma interpretação para a qual x(Px) seja falso
e, ao mesmo tempo, x(Px) seja verdadeira.
b) Encontre uma interpretação para a qual x(Px) seja
verdadeira e, ao mesmo tempo, x(Px) seja falsa.
"
$
"
$
Quando o predicado é uma propriedade que envolve apenas
uma variável, como nos exemplos vistos, é chamado de
predicado unário. Se a propriedade é binária, por exemplo,
P(x,y) = x < y, é dita predicado binário. Predicados podem ter
mais de duas variáveis. De forma genérica, predicados são
n-ários, envolvendo n variáveis.
Quando se tem mais de uma variável quantificada, a
ordem dos quantificadores é muito importante. Considerando a
propriedade P(x,y) = x < y, sobre o conjuto universo dos inteiros
positivos, a expressão x yP(x,y) significa que para qualquer x
do conjunto universo existe um y maior que x. Isso é verdade:
para qualquer inteiro, existirá ou inteiro maior. A expressão
y xP(x,y) quer dizer que existe um y que é menor que qualquer
inteiro positivo x. Isso não é verdade. Essa segunda expressão
tem valor lógico falso.
Proposições quantificadas podem constituir fbf.
"$
$"
Uma proposição do tipo “Todo S é P” representa, como já
foi dito, conjuntos de classes. Ela pode ser reformulada para
representar objetos individuais, resultando num enunciado do
tipo:
Qualquer que seja x, se x é S, então x é P.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
83
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
84
É importante ressaltar que proposições com o
quantificador universal devem ser simbolizadas com o
condicional, enquanto proposições com o quantificador
existencial devem adotar a conjunção.
Essa nova forma contém um condicional. Na expressão “x é
S”, x é o sujeito e S o predicado. Simbolicamente, representa-se
primeiro o predicado, depois o sujeito. “x é S” é representado
como “Sx”. O condicinal já é conhecido. x é P é representado por
“Px”. A expressão acima fica:
x(Sx Px)
Um enunciado do tipo “Nenhum S é P”, pode ser expresso
como “Qualquer que seja x, se x é S, então x não é P”. Em
notação simbólica tem-se:
x(Sx ~Px)
A proposição do tipo “Algum S é P” pode ser expressa
como
Para pelo menos um x, x é S e x é P,
significando que é suficiente que um x pertença ao conjunto S e
também ao conjunto P, para que essa sentença seja verdadeira.
Simbolicamente, a proposição é escrita como
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)
"®
"®
$Ù
$Ù
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
85
Exemplos:
Interpretando por V o predicado “é vermelho”, A “é azul”,
B “é branco”, C “é um carro” e F “é uma Ferrari”, formalizar as
sentenças abaixo:
a) Toda coisa é um carro. xCx
b) Nada é um carro. x~Rx (ou ~ xRx)
c) Nem toda coisa é um carro. ~ xRx
d) Todos as Ferraris são vermelhas. x(Fx Vx)
e) Nenhum carro é vermelho. x(Cx ~Vx)
f) Existem carros brancos. x(Cx Bx)
g) Nenhuma Ferrari é branca. x(Fx ~Bx)
h) Alguns carros não são Ferrari e são brancos. x(~Fx Bx)
I) Não é verdade que existem carros brancos. ~ x(Cx Bx)
"
" $
"
"®
"®
$ Ù
" ®
$ Ù
$Ù
EXERCÍCIO 2
Considerando R “é uma rã”, V “é verde” e S “está
saltitando”, formalize as sentenças a seguir:
a) Toda coise é uma rã.
b) Existem rãs verdes.
c) Todas as rãs são verdes.
d) Existem rãs que são verdes e não estão saltitando.
e) Todas as rãs estão saltitando.
f) Ou qualquer coisa é uma rã ou nada é uma rã.
g) Somente rãs são verdes.
h) Nenhuma rã é verde.
i) Nenhuma rã estã saltitando.
j) Qualquer coisa que está saltitando é uma rã.
k) Alguma rã está saltitando.
l) Se nada é verde, então não existem rãs verdes.
Parênteses, que são símbolos de agrupamento,
determinam o escopo do identificador. Quando uma variável
aparece em uma fórmula e não está quantificada, é chamada de
variável livre. Na expressão x(Qxy y(Rxy)) o escopo de x é
toda a fórmula e y é uma vaariável livre em Qxy, pois não está
quantificada.
Para determinar o valor lógico de uma fbf predicada é
necessário conhecer a interpretação de cada proposição da
fórmula, de forma semelhante a uma fbf proposicional.
Para encontrar o valor lógico da fórmula $x(Ax Ù "y(Bxy
Cy)), considerando o conjunto universo como o conjunto dos
inteiros, Ax significando “x > 0”, Bxy sendo “x > y” e Cx
significando “y £ 0”, deve-se observar, inicialmente, o escopo de
x, que é toda a fórmula e de y, que é Bxy Cy. A sua
interpretação é: existe um valor de x, tal que, x > 0 e para
qualquer y, se x > y então y £ 0. Fazendo x = 1 a fbf acima é
verdadeira.
" $®
®
$ " ®
Encontre uma interpretação para a qual a mesma fbf
tenha valor lógico falso. (Mude o significado de A, B ou C).
EXERCÍCIO 3
Sendo o conjunto universo o conjunto de todas as pessoas,
Ax significando “x é um aluno”, Ix sendo “x é inteligente” e Fx “ x
gosta de futebol”, escreva fbf para representar as proposições:
a) Todos os alunos são inteligentes.
b) Alguns alunos inteligentes gostam de futebol.
c) Toda pessoa que gosta de futebol é um aluno e não é
inteligente.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
86
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
87
d) Apenas alunos inteligentes gostam de futebol.
A primeira sentença traz o quantificador universal: x(Ax
Ix)
A segunda sentença está formulada de forma ligeiramente
difertente dos exemplos anteriores. A forma intermediária
poderia ser: “existe alguma coisa que é aluno, é inteligente e
gosta de futebol”. A fbf correspondente será: x(Ax Ix Fx).
Rescrevendo a terceira sentença: “para qualquer coisa, se
gosa de futebol, então é um aluno e não é inteligente”.
Representação simbólica: x(Fx Ax ~Ix).
A última sentença diz que ninguém mais além dos alunos
inteligentes gosta de futebol. Assim, pode-se reescrevê-la como:
“se alguém gosta de futebol então é um aluno inteligente”, ou,
ainda, “toda coisa gosta que de futebol é um aluno e é
inteligente”. Escrevendo na linguagem simbólica: x(Fx Ax
Ix)
"
®
$ÙÙ
"® Ù
$®
Ù
EXERCÍCIO 4
1) Determine o valor lógico das fbf abaixo, sendo o
conjunto dos inteiros o conjunto universo, e a interpretação Ix “x
é impar”, Mx “x < 0” e Nx “x > 5":
a) x(Ix) b) x(Ix) c) x(Mx Nx)
d) x(Mx Nx) e) x(Ix Nx)
2) Sendo o conjunto universo o conjunto dos números
inteiros (conjunto Z), qual o valor lógico das fbf a seguir:
a) x, y(x + y = x) b) y, x (x + y = x)
c) x, y(x + y = 0) d) y, x (x + y = 0)
" $ $Ù
$Ú $Ù
"$ $"
"$ "$
88
Capítulo 6
Lógica para Computação
Tecnologia em Análise e Desenvolvimento de Sistemas
Recorrência
Em uma definição recorrente, o item que está sendo
definido faz parte da definição.
Uma definição recorrente é constituída de
1. Uma base, ou condição básica, na qual um ou alguns
casos do item que está sendo definido é explicitado.
2. O passo indutivo ou recorrente, onde novos casos do
item sendo definido são dados em função de ocorrências
anteriores.
Seqüências e algoritmos podem ser definidos por
recorrência.
6.1 Seqüência definida por recorrência
Uma seqüência é uma lista de itens, enumerados em uma
determinada ordem. Existe um primeiro, um segundo item, etc.
Exemplo de uma seqüência numérica: S = 2, 4, 8, 16, 32,
64, ...
A seqüência S, acima, está explicitando os seis primeiros
termos e há a indicação de que é infinita. Outra forma de
escrever a seqüência é:
S(1) = 2
S(2) = 4
S(3) = 8
S(4) = 16
...
Para representá-la de forma recorrente, explicita-se o
primeiro termo, S(1), e procura-se escrever cada um dos demais
termos em função do anterior:
O passo 1 já está definido – S(1) = 2 – mas o passo 2 deve ser
escrito de forma a definir cada um dos demais termos da
seqüência em função do termo anterior. Assim, S(2) deve ser
definido em função de S(1), S(3) em função de S(2), e assim,
sucessivamente. A seqüência, assim definida, passa a ser escrita
da forma:
S(1) = 2
S(2) = 4 = 2 + 2
S(3) = 8 = 4 + 4
S(4) = 16 = 8 + 8
...
Percebe-se que, a partir de S(2), cada valor pode ser
decomposto em uma soma com duas parcelas: S(n – 1) + um valor.
No exemplo, a segunda parcela coincide com a primeira: S(n – 1)
+ S(n – 1).
A definição recorrente, para a seqüência em questão, é:
S(1) = 2
S(n) = 2S(n – 1), para n ³ 2.
89
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
90
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
Vê-se que a primeira parcela da soma em que cada termo
foi decomposto é, a partir S(2), igual a S(n – 1) e que a segunda
parcela é igual a “n”. A forma recorrente de T é:
S(1) = 2
S(n) = S(n – 1) + n, para n ³ 2.
Considere a seqüência recorrente abaixo e escreva os seus
primeiros cinco termos:
S(1) = 3
S(n) = S(n – 1) + 2n, para n ³ 2
O primeiro termo já foi dado: 3.
O segundo termo será obtido fazendo:
S(2) = S(2 – 1) + 2 x 2 = S(1) + 4 = 3 + 4 = 7
Dada uma definição recorrente, para saber o valor do n-
ésimo termo, é necessário saber o valor do termo n – 1.n
Atenção: 2 também representa a seqüência acima, mas
não é uma forma recorrente de representação. Essa é uma forma
fechada de representar uma seqüência. Encontrar a forma
fechada de uma seqüência é resolver a seqüência. No presente
contexto, não será estudado como resolver uma seqüência.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
EXERCÍCIOS
)1(
1)(
-=
nAnA para n 2.³
1) Escreva os seis primeiros termos das seqüências
recorrentes:
a) S(1) = 10
S(n) = S(n – 1) + 10, para n ³ 2
b) A(1) = 2
c) F(1) = 1
F(2) = 1
F(n) = F(n – 2) + F(n – 1), para n > 2.
2) Escreva as seqüências abaixo de forma recorrente:
a) S = 1, 2, 4, 7, 11, 16, ...
b) T = 1, 3, 9, 27, 81, ...
6.2 Algoritmo definido por recorrência
6.2.1 Construindo um algoritmo recorrente
Entre os comandos empregados no desenvolvimento de
algoritmos, está o comando condicional (ou comando de
decisão), que tem a estrutura: 91
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 ...
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
se A > = B entãoEscreva “A é maior ou igual a B”senãoEscreva “B é maior que A”
fimse.
Para os valores dados, o teste da condição resulta em falso
e será executada a cláusula “senão”: a frase “B é maior que A”
será “escrita”.
O significado do comando “escreva” deixa de ser explicado
porque, no atual contexto, é suficiente saber o funcionamento
do comando “se”.92
se <condição> entãocomando(s)1senãocomando(s)2
fimse
onde: <condição> é uma expressão lógica e, portanto, deve
resultar no valor lógico falso ou verdadeiro;
comando(s)1 é um, ou uma seqüência de comandos;
comando(s)2 é um, ou uma seqüência de comandos.
Quando a execução de um algoritmo chaga a um comando
de decisão desse tipo, testa o valor lógico de <condição>. Caso
<condição> = V, executa a cláusula então, constituída pelo
comando1 (ou grupo de comandos1) e deixa de executar a
cláusula senão. Caso contrário (<condição> = F), a execução é
desviada para a cláusula senão, composta do comando2 (ou
grupo de comandos2).
Exemplo:
Supondo que A = 2 e B = 7, o comando de decisão abaixo será
executado da seguinte forma:
Algoritmo S(n)se <condição> então
retorne valorsenãoretorne S(n – 1)
fimsefimalgoritmo
Algoritmos definidos por recorrência têm a estrutura:
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
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.
É possível escrever um algoritmo recorrente para fornecer
o n-ésimo termo dessa seqüência:
Algoritmo S(n)se n = 1 então (corresponde a S(1))
retorne 2 (corresponde ao valor de S(1)senãoretorne 2S(n – 1) (expressão que define S(n))
fimsefimalgoritmo
93Exemplos:
Faça um algoritmo recorrente para as sequências:
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
algoritmo S(n) se n = 1 então
retorne 1 senão
retorne S(n – 1) + (n – 1) fimse fimalgoritmo
b) O primeiro passo é escrever a sequência na forma
recorrente, que é:
P(1) = 3
P(n) = P(n – 1) + 2(n – 1)
Depois, procede-se como no exemplo anterior, gerando o
algoritmo:
algoritmo P(n) se n = 1 então
retorne 3senãoretorne P(n – 1) + 2(n – 1)
fimse fimalgoritmo
EXERCÍCIO 1
Faça um algoritmo recorrente para a sequência R = 3, 7, 16,
32, 57, ...94
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.
6.2.2 Como um algoritmo recorrente executa
Supondo que seja mandado executar o algoritmo do
primeiro exemplo para o valor n = 5, a primeira linha do
algoritmo é testar se n = 1, que resulta em falso, pois o valor
inicial de n é 5. Sendo o resultado do teste falso, deixa de
executar a cláusula então e a execução vai para a cláusula senão,
retorne 2S(n – 1), que significa “execute S com valor de entrada n
= 4 e multiplique o resultado por 2”. Como não se tem o valor de
S(4), a operação multiplicação fica pendente e S(n – 1) faz
executar o próprio algoritmo S(n), sendo n, desta feita, igual a 4.
Essa pendência é armazenada:
2 * S(4)
O armazenamento das operações pendentes é feito em uma
estrutura de dados denominada PILHA, que tem esse nome
porque a forma como acontece esse armazenamento das
informações e o acesso posterior às mesmas, conceitualmente
funciona como uma pilha, onde a última informação armazenada
é a primeira a ser retirada.
A nova execução do algoritmo produz o mesmo resultado:
“manda” executar S com o atual valor de n diminuído de 1,
ficando pendente, mais uma vez, o valor a ser retornado:
2 * S(3) 2 * S(4)
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
As pendências se sucedem, até que o algoritmo é mandado
executar com n = 1:
2 * S(1) 2 * S(2) 2 * S(3) 2 * S(4)
95
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
Ao ser executado com n = 1, é feito o teste na primeira linha
do comando de decisão (comando se) e este resulta em
verdadeiro, sendo executada, desta feita, a cláusula então:
“retorne 2”. Como não há mais pendência de operação, é feito o
“desempilhamento” das operações pendentes:
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
Quando a última pendência é resolvida, o algoritmo para,
fornecendo como resultado o valor da última operação. No
exemplo acima, o valor fornecido pelo algoritmo é 32. Para n = 5
o valor retornado é S(5).
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ãoretorne M(n – 1) + (n – 2)
fimse fimalgoritmo
96
Lógica para Computação
Tecnologia em Análise e Desenvolvimento de Sistemas
Bibliografia
COPI, Irving M. Introdução à Lógica. 2a. Ed. São Paulo: Mestre
Jou, 1978.
FILHO,Edgard de Alencar. Iniciação à lógica Matemática. São
Paulo: Nobel, 2002.
GERSTING, Judith L., Fundamentos matemáticos para a Ciência
da Computação, 4ª ed., Rio de Janeiro: Livros Técnicos e
Científicos Editora, 2001.
SOUZA, João N., Lógica para Ciência da Computação, Rio de
Janeiro: Elsevier, 2002.
97
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.
2.1.1 Formalização de uma proposição:
A “Está frio”, B “Está chovendo” e C “Está quente”.
1. a) A B
b) A ~B
Ù
Ù98
Lógica para Computação
Tecnologia em Análise e Desenvolvimento de Sistemas
Respostas dosExercícios
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
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) A casa é bonita e a porta é pequena.
b) A casa é bonita se, e somente se, a porta for pequena.
c) A casa não é bonita. (Não é verdade que a casa é bonita).
d) Se a casa é bonita e a porta é pequena, então a janela é
grande.
e) Se a casa é bonita ou a porta é pequena e a janela é
grande, então a porta é pequena.
f) A casa é bonita ou a porta é pequena.
g) A casa ser bonita implica em a porta ser pequena.
h) Não é verdade que a casa é bonita e a porta é pequena. (A
casa não é bonita ou a porta não é pequena).
i) Ou a casa é bonita implica em a porta ser pequena ou a
casa ser bonita implica a janela ser grande.
j) Se a porta é pequena, então a casa é bonita e a janela é
grande.
Ù
®
«
Ú
Ù®
®Ù
®
®
®
2.2.1.1 Negação de uma proposição
1. a) O processador não é rápido ou a impressora não é
lenta.
b) O processador não é rápido e a impressora não é lenta.
c) Pepinos não são verdes ou têm sementes. 99
2.2.1.2 Conjunção de duas proposições
1. a) F
b) V
c) V
d) F
e) F
2.2.1.3 Disjunção de duas proposições
1. a) V
b) V
c) V
d) F
e) V
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.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
100
d) A comida não é boa e o serviço não é bom.
e) A comida é boa ou o serviço excelente.
2. a) V
b) V
c) V
d) F
e) F
3. d)
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
2.2.1.7 Interpretação de uma fbf composta.
1. a) F
b) V
c) V
2. I[G] = F
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
101
d) antecedente: definição é alterada
conseqüente: a definição ficará errada.
2. a) V
b) F
c) V
d) V
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
b)
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 Ù 2V
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 VV
F
F
V
V
V
V
V
V F FF
V
V
F
V
V
F
V
V F FF V F F F V V F V F FF F V V V V F V V F FF 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
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
102
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
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
103
3.2 Tabela verdade
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
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
3.3.4 Equivalência lógica
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
Conclusão: G equivale a H.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
104
3.3.3 Fórmula satisfatível
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
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
Logo, M não implica logicamente em K.
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.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
105
3.3.5 Implicação lógica
1) As tabelas verdade de K, L e M são:
K L M V V V F F V V F V F F F
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
1) a) Identifica-se as proposições simples:
Jonas anda J
O trem sai no horário T
Jonas perde o trem P
Jonas fica triste F
Jonas volta para casa C
Argumento: ((J T) P) (P (F C)) J C
b) (S (~C ~Q)) (~C Q) ~S
ٮٮÙÙ®
®ÙÙÙ®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
106
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).Þ
d) K Þ M
4.2.2 Exercício 1
I[P] = V I[P] = F
I[Q] = V I[Q] = F V
1
2 3
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ó 3: F F F V V F ?
Como o antecedente da implicação é falso, conclui-se que o
nó 3 tem valor lógico V.
F = (P (P Q)) (P Q)
Nó 4: V V V V V V V V V
Conclusão: o nó 4 é verdadeiro.
Ù®®«
Ù®®«
Ù®®«
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento 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 ® ~SV V V F F F F F F F VV
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 VF F V V F F V V V V VF F F V V V V F F V V
A fórmula é válida.
107
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
108
I[P] = V I[P] = F
I[Q] = V I[Q] = F V
1
2 3
4 5
V F
b) G = ~(P Q) ~PÙ®
c) H = ((A B) (A C)) AÚÙ®®
I[A] = V
I[B] = FV I[B] = V
V
1
2 3
54
I[A] = F
I[C] = V I[C] = F
6 7
VF
A fórmula não é válida, pois o nó 5 tem valor F. A
interpretação para a qual I[G] = F é: I[P] = V e I[Q] = F.
F = (P (P Q)) (P Q)
Nó 5: V F V F F V F F F Idem nó 3.
Todos os nós da árvore têm valor lógico V, logo a fórmula é
válida.
Ù®®«
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
109
Exercício 2
(S (~C ~Q)) (~C Q) ~S
Nó 2: V ? ? FV
Nó 3: F V ? V VF
Nó 4: V F FV F F FV F V FV
Nó 5: V ? VF ? ? VF ? ? FV
Nó 6: V F VF F FV F VF V V V FV
Nó 7: V V VF V VF F VF F F V FV
®ÙÙÙ®
Como todos os nós folha da árvore possuem valor lógico V, a
fórmula é válida.
4.2.3 Método da negação ou absurdo
1
2 3
4 5
6 7
V
V
V V
I[S] = V I[S] = F
I[C] = V I[C] = F
1. a) G = A B ~A
F V F VF
Para que o condicional seja falso o antecedente ( ) deve
Ú®
Ú
A fórmula não é válida. Para I[A] = F, I[B] = V e I[C] = V tem-se
I[H] = F.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
110
ser verdadeiro e o conseqüente falso. Mas isso só seria possível se
A tivesse valor V em A B e valor F em ~A, o que seria um absurdo,
pois A não pode ter, ao mesmo tempo, dois valores verdade
distintos. Como não se pode provar que G é falsa, então G é
válida.
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.
c) H = ((A B) (A C)) A
F V V V F V F F.
Para I[A] = F e I[B] = V, tem-se I[H] = F. Conclusão: H não é
válida.
Ú
®Ù®
ÚÙ®®
4.2.4.1 Regras de dedução
1) Argumento: A (~B ~C) B
Passo de indução regra
1. A hip
2. ~B ~C hip
3. ~(~B) ~C 2, cond
4. B ~C 3, dn
5. ~C B 4, com
6. C B 5, cond
7. B 1, 6, mp
2. a) A (B C) [(A B) (D ~C)] B D
1. A hip
2. B C hip
3. (A B) (D ~C) hip
4. B hip
Ù®®
®
Ú
Ú
Ú
®
Ù®ÙÙ®ÚÙ®
®
Ù®Ú
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
111
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
Ù
Ú
Ú
®
ÙÙ ®Ú®
®Ú
Ú
Ú
®
4.2.4.2 Exercício 1: (~A ® ~B) Ù (A ® C) ® (B ® C)
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
®
Ú
®
®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
112
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.
5.1 Quantificador Universaol e Existencial
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
" $Ù
"® $Ù
"® "Ú
"® "®
"® "®
$Ù "®Ù
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
113
6.1 Seqüência recorrente
a) S = 10, 20, 30, 40, 50, ...
b) A = 2; 0,5; 2; 0,5; 2; ...
c) F = 1, 1, 2, 3, 5, ...
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.
6.Algoritmo definido por recorrência
1) algoritmo R(n) se n = 1 então retorne 3
senão2 retorne R(n – 1) + n
fimse fimalgoritmo
2) 6
114
Lógica para Computação
Tecnologia em Análise e Desenvolvimento de Sistemas
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.
2. Diga quais das fórmulas abaixo não são fbf :
a) P Q
b) PQR A
c) A B
d) ((A B) C)
e) P1 P2 P3 P4
f) A1 B C D F G H
g) A (B C) ((B C) D) F ( G H) ( P Q R)
h) A B (( B C
i) )) A B C D ((
j) ~(~C (~B C) (~(~A ~B) ~(D E))
3. Seja P “Paulo é alto”, Q “Paulo é elegante” e seja R
“Paulo é feliz”. Escreva cada uma das seguintes proposições de
forma simbólica:
a) Paulo é alto e elegante.
b) Paulo é alto mas não é elegante
c) É falso que Paulo é baixo ou elegante.
d) Paulo não é nem alto nem elegante.
e) Paulo é alto, ou Paulo é baixo e elegante.
f) Se Paulo é alto, então ele é felia e elegante.
g) Paulo é baixo ou não é elegante.
h) Se Pualo é alto então ou ele é alto ou se ele é elegante
então ele é feliz..
i) Paulo será alto se, e somente se, for elegante.
j) Se Paulo é alto e elegante, então ele é elegante.
k) Paulo não é alto e não é elegante.
l) Ou Paulo é alto logo é elegante, ou Paulo não é alto.
m) Ou Paulo é alto ou, se é elegante não é alto.
n) Ou Paulo é elegante e feliz se, e somente se é alto, ou
não é alto mas é feliz.
o) Se Paulo é elegante se, e somente se, for alto, então ele
é alto e elegante.
®
®
«®
«ÙÚ
«ÙÚ
®ÙÚÚÚ«Ù
® Ù«Ú«®Ù«ÚÙ
ÙÙ««®
ÙÙÚ
ÚÙÚ®««
115
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
p) Se Paulo é elegante se, e somente se, for alto, então ele
é alto. Paulo é elegante.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
116
4. Seja P “A lua é fria”, seja Q “O sol é quente” e seja R “A
Terra é redonda”. Passe para a linguagem corrente as
proposições:
a) P Q b) P Q c) P Q d) P ~Q
e) Q P f) ~P ~Q g) P ~Q h) P (P Q)
i) ~Q ~R j) ~Q ~P k) (Q R) (P Q)
l) (R (P Q)) R m) P Q R
n) ((Q R) Q) R o) (P Q R) (P Q)
5. Faça a negação das proposições abaixo:
a) A castanheira é alta.
b) A seringueira é alta e a castanheira é não é alta.
c) A floresta é bonita ou a castanheira é alta.
d) Ou a floresta não é bonita ou a seringueira não é alta.
e) Nem a seringueira é alta nem a floresta é bonita.
f) A casa é grande, mas o quarto é pequeno.
g) A casa é grande ou o quarto é pequeno.
h) A camisa é bonita mas não tem botões.
i) A camisa não é bonita e tem botões.
j) A camisa é bonita ou não tem botões.
k) Nem a camisa é bonita nem tem botões.
l) Se a camisa é bonita, então tem botões.
m) A casa não é grande e o quarto não é pequeno.
Ú Ù «®
Ú Ù ««
Ú ®®®®
®ÚÙ ÙÙ
Ù®Ú ÚÚ®«
6. Considere as proposições abaixo e diga quais negações de
cada uma estão corretas.
a) A resposta certa é 3 ou 6.
1) A resposta certa não é 3 ou não é 6.
2) A resposta certa não é 3 e não é 6.
3) A resposta certa não é 3 mas é 6.
b) Mamão não é verde e tem sementes.
1) Mamão é verde e não tem sementes.
2) Mamão é verde e tem sementes.
3) Mamão é verde ou tem sementes.
4) Mamão é verde ou não tem sementes.
7. Dê o valor verdade das seguintes proposições:
a) A Terra é um planeta.
b) A Terra não é um planeta.
c) Não é verdade que a terra não é um planeta.
d) O Amazonas é o maior rio do mundo.
e) 10 + 5 = 20
f) 10 + 5 20.
g) A Terra é um planeta e Marte não é um planeta.
h) A Terra gira em torno do Sol e Saturno também.
i) Tambaqui é peixe e boto não é peixe.
j) Tambaqui é peixe e onça é mamífero.
k) Tambaqui é peixe ou onça é mamífero.
l) Ou peixe-boi não é peixe ou onça não sai da toca à noite.
m) Não é verdade que tambaqui é peixe e onça é mamífero.
n) Se tambaqui é peixe, então onça é mamífero.
o) Se tambaqui não é peixe, então onça é mamífero.
p) Se tucunaré peixe, então boto não é peixe.
q) Tucunará é peixe se, e somente se, boto não for peixe.
r) Tucunaré é peixe se, e xomente se, dourado for peixe.
s) Não é verdade que se a castanheira é árvore então
seringueira também é árvore.
t) Se castanheira não é árvore, então boto não é peixe.
u) Se castanheira é árvore, então boto não é peixe.
v) Se castanheira é árvore, então boto é peixe.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
117
w) Arara é ave se, e somente se, águia for ave.
x) Arara não é ave se, e somente se, águia não for ave.
y) Arara é ave se, e somente se, águia não for ave.
z) Arara é não é ave se, e somente se, águia for ave.
Para as próximas sentenças, considere que só seja possível
escolher uma alternariva:
aa) Ou bebo suco ou bebo refrigerante.
bb) Ou vou ao baile ou vou dormir.
cc) Não bebo suco nem bebo refrigerante.
dd) Vou ao baile e vou dormir (ao mesmo tempo).
ee) Não é verdade que vou ao baile e vou dormir.
8. Fazer a tabela verdade para as fórmulas:
a) ~ (P Q)
b) ~(P ~ Q)
c) (P Q) (P Q)
d) (P Q) (~Q ~P)
e) ~(P (~P Q)) Q
f) P (P ~Q)
g) (P Q) ( ~P Q)
h) ~ (P Q) ~(Q P)
i) A ~(~A ~B)
j) (A B) [(A C) (B C)]
k) A ~B ~(A B )
l) ~((A B) (~A ~B))
m) (A (B ~C) ) (~A C ~B)
n) (A B) C A (B C)
o) (~A B) (B C)
p) A (B (A C)
q) C (A (B A))
r) (P (Q (P Q))) (P (P Q)) (P (P ~Q))
Ù
Ù
Ù®Ú
®«®
ÙÚÚ
ÚÙ
Ù®Ú
ÙÚ«
ÙÚ
®®Ú®Ú
Ú®Ú
ÚÙÚ
Ú®ÙÚ«
ÙÚ®ÙÚ
ÚÙÚ
Ú®Ù
«ÚÚ
®®®ÚÙÚ«ÚÙ118
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
9. Diga quais das fórmulas do exercício 8 são tautologias,
contradições ou, apenas, satisfatíveis.
10. Seja I uma interpretação, tal que I[P] = T, I[Q] = F e I[R] =
F. O que se pode afirmar a respeito do valor verdade de cada
fórmula abaixo?
a) (Q ~P) b) (falso Q) R c) (P (Q P))
d) verdadeiro (P R) e) ~P ~R ~Q
f) ~Q (P ~Q) g) (P (Q R)) ((P Q) R)
11. Seja I uma interpretação tal que I[P Q] = V. O que se
pode deduzir a respeito dos resultados das interpretações:
a) I[~P Q] b) I[P ~Q] c) I[Q P] d) P Q
12. Sabendo que I é uma interpretação que interpreta cada
fórmula abaixo como sendo verdadeira e que I[A] = V, o que se
pode concluir a respeito de I[B] e I[C]?
a) L = ~(A ~B) b) M = (A B) C
c) N = (A ~B) C d) O = (A B) ~B
13. Considere as fórmulas G, H e L, abaixo, e responda o
que se pede.
G = (A B) ~B H = ~A ~B L = ~(A B)~
Verifique se:
a) G Þ H b) G Þ L c) L Þ G
d) L Þ H e) H Þ G f) H Þ L
14. Verifique, usando a árvore semântica, se as seguintes
fbf são válidas. Caso alguma fbf não seja válida, identifique uma
interpretação para a qual a fórmula não é válida.
a) (~P Q) (P Q)
b) P ((Q R) ((P R) (P R)))
c) (P ~Q)) ~P
® ®«ÚÙ
®Ú ÚÙ
ÙÚ ®®«Ù®
®
Ù Ú ®Ú
Ù ÚÙ
ÙÙ Ù®
Ù® Ù Ù
Ú«®
®®®®®®
®« 119
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento 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)
®®«Ù®
®®®®®®®
®Ù®Ù®Ù®
ÙÚÚÙÙ
®®®ÙÚ
®®Ù®Ù
®®Ù
15. Transforme os argumentos abaixo em fórmulas da lógica
proposicional e verifique, usando árvore semântica, se são
válidos:
a) Suponha que são verdadeiras as afirmações
i) João ama Aline ou Luciana.
ii) Se João ama Aline, então ele também ama Luciana.
A partir dessas afirmações é possível afirmar que
– necessariamente, João ama Aline?
– necessariamente, João ama Luciana?
a) Quatro detetives, Ana, Teresa, Cynthia e Melo, estão
investigando as causas de um assassinato e cada um deles
conclui:
Ana: Se há sangue na cena do crime, então o matador é um
profissional.
Teresa: É falso que há sangue na cena do crime e o matador
é um profissional.
Cynthia: O matador não é um profissional e há sangue na
cena do crime.
Melo: Há sangue na cena do crime.
Determine se, a partir das conclusões de Teresa e Melo,
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
120
pode-se concluir que o matador é profissional.
– Determine se as conclusões de Ana e Teresa são
equivalentes.
– Determine se há implicação lógica entre as conclusões de
Cynthia e Ana.
b) Se a temperatura e os ventos permanecerem constantes,
não choverá. A temperatura não permaneceu constante. Logo,
Se chover significa que os ventos não permaneceram constantes.
c) Se Godofredo ama Gripilina, então é possível concluir
que:
Se Gripilina é bonita, inteligente e sensível, então
Godofredo é feliz.
A partir das afirmações acima é possível concluir que:
– Godofredo não ama Gripilina?
– Gripilina não é bonita, não é inteligente e nem é sensível?
– Godofredo é feliz?
d) Se Katielly está bonita, então Tony está feliz e se Tony
está feliz, Danilo está preocupado. Se Danilo está preocupado,
então Katielly está bonita. Portanto, não é verdade que se Danilo
está preocupado, então Tony está feliz.
16. Usando o método da negação, verifique os argumentos
dos exercícios 14 e 15.
17. Justifique cada passo de indução, na prova da fórmula:
~A (A B) B
1. ~A
2. A B
3. ~(~A) B
ÙÚ®
Ú
Ú121
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
122
4. ~A B
5. B
18. Usando dedução lógica, prove que os argumentos
abaixo são válidos:
a) ~P Q (Q (P R)) R
b) (A (B C) ~B ~C ~A
c) (A B) ~A B
d) (A B) (~B ~A)
e) ((P Q) R) (P (Q R))
f) (P (Q R)) ~Q ~R ~A
g) (A B) (A (B C)) (A C)
h) (A B) (~A ~B)
i) ((A B) C) (A (B C))
j) (A B) (B (C D)) A (B C)) (A D)
k) “Se as taxas de juros caírem, o mercado imobiliário vai
melhorar. Ou a taxa federal de descontos vai cair, ou o mercado
imobiliário não vai melhorar. As taxas de juros vão cair. Portanto,
a taxa federal de descontos vai cair.”
l) “Meu cliente é canhoto mas, se o diário não tiver sumido,
então meu cliente não é canhoto; portanto, o diário sumiu.”
m)
19. Crie símbolos proposicionais e formalize as sentenças
predicadas abaixo:
a) Todos os dias são bonitos.
b) Alguns dias são bonitos.
c) Nada é bonito.
d) Tudo é bonito.
e) Todos os dias que são ensolarados são bonitos.
f) Alguns dias não são ensolarados.
g) Nenhum dia é ensolarado.
®
ÙÙ®Ú®
®ÚÙÙ®
ÚÙ®
®®®
Ù®®®®
®ÚÙÙ®
®Ù®®®®
®®®
Ù®®®®
®Ù®®Ù®®®®
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
123
h) Todos os dias são bonitos se, e somente se, não está
chovendo.
i) Não é verdade que alguns dias bonitos são ensolarados.
j) Todos os carros são pretos.
k) Alguns carros são pretos.
l) Somente Fuscas são pretos.
m) Não existem Fuscas pretos.
n) Alguns Fuscas são pretos ou são vermelhos.
o) Alguns carros são Fuscas e são pretos.
p) Se está chovendo, então algumas pessoas estão
molhadas.
q) Ou está chovendo ou nenhuma pessoa está molhada.
r) Se nada é preto, então não existem carros pretos.
s) Qualquer coisa ou é um Fusca ou não é um Fusca.
t) Não é verdade que existem alguns Fuscas pretos.
20. Escreva os seis primeiros termos das seqüências
recorrentes:
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.
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
124
21. Escreva as seqüências abaixo de forma recorrente:
a) S = 5, 10, 15, 20, 25, ...
b) T = 5, 7, 10, 14, 19, ...
c) U = 2, 8, 24, 64, 160, ...
d) V = 1, 4, 16, 64, 256, ...
e) X = 4, 7, 13, 22, 34, ...
22. Escreva um algoritmo recorrente para calcular o n-
ésimo termo de cada uma das seqüências do exercício 21.
23. Qual o valor retornado pelos algoritmos abaixo:
a) Para n = 6, como valor inicial.
algoritmo S(n) se n = 1 então retorne 3
senão retorne S(n – 1) + 2(n – 1)
fimsefimalgoritmo
b) para qualquer valor inicial de n:
algoritmo A(n) se n = 1 então retorne 1
senão retorne A(n – 1) + 1
fimsefimalgoritmo
c) Para o valor inicial n = 5
algoritmo R(n) se n = 1 então retorne 1
senão retorne R(n – 1) + 7(n + 1)
fimsefimalgoritmo
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas
125
Lógica para ComputaçãoTecnologia em Análise eDesenvolvimento de Sistemas