Notas de Aula 1: Lógica, Predicados, Quantificadores e Inferência

Propaganda
IFMG Campus Formiga
Matemática Discreta
Notas de Aula 1: Lógica, Predicados, Quantificadores e Inferência
Prof. Diego Mello
2o. Semestre 2012
Sumário
1 Introdução
3
2 Lógica Proposicional
3
3 Proposições
3.1 Definições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Notação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
3
4
4 Conectivos Lógicos
4.1 Negação . . . . . . . . . . . . . . . . . . . . . . .
4.2 Conjunção . . . . . . . . . . . . . . . . . . . . . .
4.3 Disjunção . . . . . . . . . . . . . . . . . . . . . .
4.4 Disjunção Exclusiva . . . . . . . . . . . . . . . .
4.5 Condicional . . . . . . . . . . . . . . . . . . . . .
4.6 Bicondicional . . . . . . . . . . . . . . . . . . . .
4.7 Resumo: Tabelas Verdade dos Conectivos Lógicos
4.8 Tabela Verdade para Proposições Compostas . .
4.9 Precedência de Operadores Lógicos . . . . . . . .
4.10 Linguagem Natural vs. Proposições . . . . . . . .
4.11 Lógica e Operações Bit a Bit . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
5
6
6
7
8
12
13
13
15
15
18
5 Equivalências Proposicionais
5.1 Tautologia, Contradição e Contingência
5.2 Equivalências Lógicas . . . . . . . . . .
5.3 Equivalências Importantes . . . . . . . .
5.4 Construindo novas equivalências lógicas
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
19
19
20
22
22
6 Predicados e Quantificadores
6.1 Limitações da lógica proposicional
6.2 Predicados . . . . . . . . . . . . . .
6.3 Quantificadores . . . . . . . . . . .
6.3.1 Quantificador Universal . .
6.3.2 Quantificador Existencial .
6.3.3 Resumo dos quantificadores
6.3.4 Quantificador de Unicidade
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
24
24
24
26
26
28
29
30
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7 Regras de Inferência
7.1 Argumentos Válidos em Lógica Proposicional . . . . . . . . . . . .
7.2 Regras e Inferência para Proposições Lógicas . . . . . . . . . . . .
7.2.1 Modus Ponens . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.2 Modus Tollens . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.3 Disjunção Aditiva . . . . . . . . . . . . . . . . . . . . . . . .
7.2.4 Simplificação Conjuntiva . . . . . . . . . . . . . . . . . . . .
7.2.5 Silogismo Disjuntivo . . . . . . . . . . . . . . . . . . . . . .
7.2.6 Silogismo Hipotético . . . . . . . . . . . . . . . . . . . . . .
7.2.7 Conjunção . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.8 Resolução . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.9 Resumo das Regras de Inferência . . . . . . . . . . . . . . .
7.3 Construindo Argumentos por meio de Regras de Inferência . . . . .
7.4 Regras de Inferência para Quantificadores . . . . . . . . . . . . . .
7.5 Regras de Inferência para Proposições e Declarações Quantificadas
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
38
. 39
. 43
. 44
. 45
. 46
. 46
. 47
. 48
. 48
. 49
. 49
. 51
. 53
. 56
6.4
6.3.5 Quantificadores com Restrição de Domínio . . . . .
6.3.6 Precedência de Quantificadores . . . . . . . . . . .
6.3.7 Equivalências Lógicas Envolvendo Quantificadores
6.3.8 Negação de Quantificadores . . . . . . . . . . . . .
Quantificadores Aninhados . . . . . . . . . . . . . . . . . .
6.4.1 Declarações Envolvendo Quantificadores Aninhados
6.4.2 Negação de Quantificadores Aninhados . . . . . . .
8 Exercícios de Fixação
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
31
32
32
33
35
35
38
58
2
1
Introdução
Este documento contém as notas de aula sobre o tema ‘Lógica, Predicados, Quantificadores e Inferência’ da disciplina de Matemática Discreta do curso de Ciência da Computação do Insituto
Federal de Minas Gerais - Campus Formiga. Ela é baseada no conteúdo dos livros referenciados
neste documento.
Este documento serve apenas como referência para acompanhamento das aulas, e não substitui a
necessidade de leitura e estudo da bibliografia oficial do curso. Muitos dos exemplos, tabelas e
diagramas contidos no documento foram extraídos e/ou adaptados dos livros contidos na seção de
referências bibliográficas.
2
Lógica Proposicional
A lógica é considerada a base de todo o raciocínio matemático – e também do raciocínio automatizado. Em virtude disso, ela é empregada em diversos campos da Ciência da Computação, como
por exemplo nas linguagens de computador (execução lógica das instruções de um programa de
computador), inteligência artificial (sistemas especialistas) e projeto de computadores (álgebra de
Boole e sua relação com as portas lógicas que compõem os circuitos digitais de um computador).
A lógica é também o mecanismo que usamos para construir declarações matemáticas. Suas regras
são usadas para distinguir os argumentos matemáticos válidos e inválidos.
3
Proposições
3.1
Definições
Em primeiro lugar, devemos definir o termo proposição.
Definição 1 (Proposição). Uma proposição é uma sentença declarativa que é verdadeira ou
falsa, mas não ambas.
Exemplo:
• Brasília é a capital do Brasil
• 100 + 200 = 300
• 2+2=3
◭
3
Destas, as primeiras duas proposições são verdadeiras, enquanto que a terceira proposição é falsa.
Nem toda sentença é uma proposição. Para ser uma proposição, uma sentença deve ser uma sentença declarativa. Questionamentos, exclamações, ordens e sentenças deste tipo não podem ser
consideradas como proposições porque não são nem verdadeiras nem falsas.
Exemplo:
• Que horas são?
• Que cidade bonita!
• Acorde e faça seus exercícios.
• x+1=2
• x+y =z
◭
3.2
Notação
Usam-se letras para denotar variáveis proposicionais (i.e., variáveis que denotam proposições). O
valor verdade de uma proposição é denotado por V (ou 1) se uma proposição for verdadeira, ou
F (ou 0) se uma proposição for falsa. Normalmente usam-se as letras p, q, r, s, ... para indicar
variáveis proposicionais.
Exemplo:
• p: Santiago é a capital do Chile
• q: 5 + 2 = 7
• r: Hoje é sexta-feira
◭
As declarações precedentes representadas pelas letras p, q e r são declarações primitivas, pois
não tem jeito de quebrá-las em declarações mais simples.
Entretando, o matemático inglês George Boole criou um mecanismo onde novas proposições podem ser construídas a partir de proposições existentes, aplicando-se operadores lógicos (por vezes
denominados de conectivos lógicos). A estas novas proposições denominados de proposições
compostas.
Dessa forma, novas proposições podem ser criadas de duas maneiras, a saber:
4
• Transformando uma proposição p em uma proposição ¬p, que denota sua negação (lê-se ‘não
p’);
• Combinando duas ou mais proposições em uma proposição composta, usando um dos conectivos lógicos: conjunção, disjunção, implicação ou operador bicondicional.
4
Conectivos Lógicos
Formalizaremos cada um dos operadores lógicos a seguir, definindo e exemplificando cada um deles.
4.1
Negação
Definição 2 (Negação). Seja p uma proposição. A negação de p, indicada por ¬p ou p̄, é a
sentença ‘não é o caso de p’, é lida como ‘não p’. O valor verdade da negação de p (¬p) é o oposto
do valor verdade de p.
Uma tabela verdade é uma tabela que contém as proposições nas colunas, e as possibilidades de
valores-verdade nas linhas. É comum expressar os resultados de uma proposição composta por meio
de tabelas verdade, que permitem analisar seus valores-verdade. Deste ponto em diante apresentaremos a tabela verdade de cada conectivo lógico.
Segundo a Definição 2, para uma dada proposição p, temos a seguinte tabela verdade, cujo resultado
de ¬p é apresentados na Tabela 1.
Tabela 1: Tabela verdade para a negação de p
p ¬p
0 1
1 0
Exemplo:
• p: Matemática discreta é fundamental para Ciência da Computação
• ¬p: Matemática discreta não é fundamental para Ciência da Computação
◭
5
4.2
Conjunção
Definição 3 (Conjunção). Sejam p e q proposições. A conjunção de p e q, indicada por p ∧ q,
é a proposição ‘p e q’. A proposição p ∧ q é verdadeira quando p e q são verdadeiras, e falsa caso
contrário.
De acordo com a Definição 3, somente quando p e q assumem valores V ou 1 é que o resultado
da proposição composta p ∧ q vale 1. Isto posto, a Tabela 2 representa a tabela verdade para o
conectivo lógico de conjunção (∧).
Tabela 2: Tabela verdade para a conjunção (p ∧ q)
p q p∧q
0 0
0
0 1
0
1 0
0
1 1
1
Exemplo:
• p: Brasília é a capital do Brasil
• p: Hoje é sexta feira
• p ∧ q: Brasília é a capital do Brasil e hoje é sexta-feira
◭
4.3
Disjunção
Definição 4 (Disjunção). Sejam p e q proposições. A disjunçao de p e q, indicada por p ∨ p, é a
proposição ‘p ou q’. A proposição p ∨ q é falsa se p e q são ambas falsas, e verdadeira caso contrário.
Pela Definição 4, para que a proposição composta p ∨ q assuma valor verdadeiro basta que uma das
proposições primitivas (p ou q) seja verdadeira. Assim, a tabela verdade para o conectivo lógico de
disjunção (∨) é apresentada a seguir, na Tabela 3.
6
Tabela 3: Tabela verdade para a disjunção (p ∨ q)
p q p∨q
0 0
0
0 1
1
1 0
1
1 1
1
Exemplo:
• p: Brasília é a capital do Brasil
• p: Hoje é sexta feira
• p ∨ q: Brasília é a capital do Brasil ou hoje é sexta-feira
◭
4.4
Disjunção Exclusiva
Definição 5 (Disjunção Exclusiva). Sejam p e q proposições. A disjunção exclusiva de p e q
(também denominada ou exclusivo), indicada por p ⊻ q ou p ⊕ q, é a proposição que é verdadeira
exatamente quando apenas uma das proposições p ou q forem verdadeiras, e falsa caso contrário.
A proposição p ⊕ q assume valor verdadeiro, segundo a Definição 5, quando apenas uma das proposições primitivas (p ou q) assume valor verdadeiro. A Tabela 4 sumariza os possíveis resultados da
disjunção exclusiva de p e q.
Tabela 4: Tabela verdade
p
0
0
1
1
para a disjunção exclusiva (p ⊕ q)
q p⊕q
0
0
1
1
0
1
1
0
Exemplo:
• p: Brasília é a capital do Brasil
7
• p: Hoje é sexta feira
• p ⊕ q: Ou Brasília é a capital do Brasil, ou hoje é sexta-feira, mas não ambas
◭
4.5
Condicional
Definição 6 (Condicional). Sejam p e q proposições. A proposição condicional p → q é a
proposição ‘se p, então q’, ou ‘p implica q’. A proposição p → q é falsa quando p é verdadeira e q
é falsa, caso contrário p → q é verdadeira.
De acordo com a Definição 6, a proposição composta p → q assume valor falso apenas quando a
proposição p é verdadeira e q é falsa. Neste tipo de construção, a proposição p é denominada de
hipótese, premissa ou antecedente, enquanto que a proposição q é denominado de conclusão,
consequência ou consequente.
A tabela verdade que expressa os valores-verdade deste tipo de proposição é dada a seguir, na Tabela 5.
Tabela 5: Tabela verdade para a proposição condicional (p → q)
p q p→q
0 0
1
0 1
1
1 0
0
1 1
1
Em Ciência da Computação, as estruturas condicionais If-Then e If-Then-Else estão presentes
na maioria das linguagem de programação estruturadas. Essa estrutura tem alguma relação com a
proposição condicional p → q.
Nela, a hipótese p geralmente representa uma expressão condicional, como por exemplo, x ≤ 15.
Essa expressão torna-se uma declaração lógica que admite valores-verdade 0 ou 1, dependendo do
valor que a variável x assume em um determinado ponto da execução do programa.
Neste contexto, a conclusão q consiste na ‘declaração a ser executada’, direcionando a execução
do programa para outra linha ou imprimindo algum resultado. Aqui, q não assume o papel de
proposição lógica que estamos discutindo, mas sim como uma instrução. Quando lidamos com uma
estrutura do tipo ‘If p, Then q’, o computador executará q apenas se a expressão lógica p assumir
8
valor verdadeiro; caso contrário o programa saltará para a próxima instrução no código do programa. Para estruturas do tipo ‘If p Then q Else r’, o programa avaliará p e executará q se p for
verdadeiro, ou executará r se p for falso.
Além deste contexto, a proposição condicional p → q é usada como regra essencial no raciocínio
matemático; logo uma variedade de interpretações estão associadas à este tipo de construção.
Exemplo:
• p: NONONO é eleito
• q: NONONO vai reduzir os impostos
• p → q: Se NONONO for eleito, então NONONO vai reduzir os impostos
◭
Outras formas de interpretar a proposição p → q:
• Se p, então q
• p é suficiente para q
• p é uma condição suficiente para q
• p somente se q
• p é necessário para q
• p é condição necessária para q
• q se p
• q quando ocorrer p
• uma condição necessária para p é q
• q a menos que ¬p
• p implica q
• p apenas se q
• q sempre que p
• q segue de p
Para exemplificar, sejam as proposições
9
• p: Maria tira nota 10 no exame final
• q: Maria recebe o conceito A
Existem diversas maneiras de se interpretar a proposição p → q de maneira verbal. Vejamos algumas destas formas:
• Se Maria tirar nota 10 no exame final, então terá conceito A
• Maria vai receber conceito A quando tirar nota 10 no exame final
• Maria tirar nota 10 no exame final é suficiente para que Maria receba o conceito A
• Para receber o conceito A, é suficiente que Maria tire nota 10 no exame final
• Maria vai receber conceito A, a menos que não tire nota 10 no exame final
Nos casos apresentados como exemplo, as proposições foram usadas em linguagem natural onde
existe uma relação entre a hipótese e a conclusão. Entretanto, quando as proposições p e q são
combinadas na proposição p → q, não é necessário haver uma relação causal entre a hipótese
e conclusão para que a implicação p → q seja verdadeira.
Exemplo:
• p: Hoje é sexta feira
• q: 2 + 3 = 5
• r: 2 + 3 = 6
• p → q: Se hoje é sexta-feira, então 2 + 3 = 5
• p → r: Se hoje é sexta-feira, então 2 + 3 = 6
◭
Do ponto de vista matemático, a proposição p → q é verdadeira sempre que as condições expressas
na sua tabela verdade forem satisfeitas (ver Tabela 5). Isto ocorre porque o conceito matemático
de condicional é mais geral do que o usado em linguagem natural; tal conceito de condicional é
independente das relações causa-efeito entre a hipótese e a conclusão.
No exemplo acima, a proposição p → q é verdadeira porque a conclusão é verdadeira (de fato,
2 + 3 = 5). Já a proposição p → r somente pode assumir valor verdadeiro se hoje não for sexta feira
pois a conclusão 2 + 3 = 6 é falsa, e pela tabela verdade a única possibilidade de que p → r resulte
em 1 é dada pela atribuição de valores-verdade 0 tanto para a hipótese quanto para a conclusão (se
p é 0 e r é 0, então p → r resulta em 1).
10
Existem três proposições condicionais relacionadas à proposição p → q que ocorrem muito frequentemente em lógica proposicional, e cujos resultados são de interesse do estudante. São elas:
1. Oposta de p → q: é a proposição q → p
2. Contrapositiva de p → q: é a proposição ¬q → ¬p
3. Inversa de p → q: é a proposição ¬p → ¬q
Acompanhe a tabela verdade destas proposições, cujos resultados são apresentados na Tabela 6.
Pela tabela, temos que os mesmos valores-verdade ocorrem nas proposições condicional e contrapositiva (destacadas em azul), assim como nas proposições oposta e inversa (destacadas em vermelho).
Tabela 6: Tabela verdade para as proposições oposta, contrapositiva e inversa de p → q
p q ¬p ¬q p → q q → p ¬q → ¬p ¬p → ¬q
0 0
1
1
1
1
1
1
0 1
1
0
1
0
1
0
1 0
0
1
0
1
0
1
1 1
0
0
1
1
1
1
Mais adiante veremos que duas proposições que possuem os mesmos valores-verdade são denominadas de equivalentes; logo as proposições condicional e contrapositiva são equivalentes, assim como
também são equivalentes as proposições oposta e inversa.
Exemplo:
Sejam as proposições:
• p: Hoje é Páscoa
• q: Amanha é segunda-feira
Temos:
• condicional p → q: Se hoje é Páscoa, então amanhã é segunda feira
• contrapositiva ¬q → ¬p: Se amanhã não é segunda-feira, então hoje não é Páscoa.
• oposta q → p: Se amanhã é segunda-feira, então hoje é Páscoa
• inversa ¬p → ¬q: Se hoje não é Páscoa, então amanhã não é segunda-feira.
◭
11
4.6
Bicondicional
Definição 7 (Bicondicional). Sejam p e q proposições. A proposição bicondicional p ↔ q é
a proposição ‘p se e somente se q’. A proposição p ↔ q é verdadeira sempre que p e q tem o
mesmo valor verdade, e falsa caso contrário. As proposições bicondicionais também são chamadas
de bi-implicações.
Pela Definição 7, a proposição p ↔ q é verdadeira apenas quando p e q são ambas verdadeiras, ou
ambas falsas. Quando p e q possuem valores-verdade opostos, então essa proposição assume valor
0. A Tabela 7 resume os valores-verdade possíveis de uma proposição bicondicional.
Tabela 7: Tabela verdade para a proposição bicondicional (p ↔ q)
p q p↔q
0 0
1
0 1
0
1 0
0
1 1
1
Outras formas de se ler a proposição p ↔ q:
• p é necessária e suficiente para q
• se p, então q e vice-versa
• p se e somente se q
• p é necessário e suficiente para q
• p sse q
Note que, pela definição, p ↔ q equivale à (p → q) ∧ (q → p).
Exemplo:
• p: Você pode tomar um avião
• q: Você comprou uma passagem aérea
• p ↔ q: Você pode tomar um avião se e somente se você comprou uma passagem aérea
◭
12
4.7
Resumo: Tabelas Verdade dos Conectivos Lógicos
Tabela 8: Tabela verdade de todos os conectivos lógicos
p q ¬p p ∧ q p ∨ q p ⊕ q p → q p ↔ q
0 0
1
0
0
0
1
1
0 1
1
0
1
1
1
0
1 0
0
0
1
1
0
0
1 1
0
1
1
0
1
1
4.8
Tabela Verdade para Proposições Compostas
A tabela verdade para proposições compostas pode ser determinada incluindo uma coluna para
cada proposição composta que ocorre na proposição composta original, de forma que a última coluna corresponde à proposição composta original.
Exemplo:
Construa a tabela verdade para a seguinte proposição composta: (p ∨ ¬q) → (p ∧ q)
Esta proposição envolve apenas duas variáveis proposicionais, p e q. A combinação dos valoresverdade para duas variáveis é V V , V F , F V e F F , de forma que a tabela verdade terá 4 linhas. As
duas primeiras colunas conterão os valores-verdade das variáveis p e q. A Tabela 9 apresenta esta
situação.
Tabela 9: Passo 1: Inserir as variáveis proposicionais primitivas
p q
1 1
1 0
0 1
0 0
A próxima etapa consiste em identificar qual será a próxima proposição composta que deve ser
determinada. No caso da proposição (p ∨ ¬q) → (p ∧ q), a próxima proposição deve ser a proposição
¬q, que é necessária para determinar os valores-verdade de (p ∨ ¬q). Adicionamos mais uma coluna
à tabela verdade, e determinamos o valor de ¬q segundo a Tabela 8. O resultado final é dado na
Tabela 10.
13
Tabela 10: Passo 2:
p
1
1
0
0
Adicionando a coluna ¬q
q ¬q
1 0
0 1
1 0
0 1
Na próxima etapa, iremos determinar os valores-verdade da proposição (p ∨ ¬q). Incluiremos uma
nova coluna para esta proposição, e determinamos seus valores-verdade consultando a tabela verdade da operação lógica de disjunção entre duas proposições (ver Tabela 8). O resultado obtido é
apresentado na Tabela 11.
Tabela 11: Passo 3: Adicionando a coluna (p ∨ ¬q)
p q ¬q (p ∨ ¬q)
1
1
0
0
1
0
1
0
0
1
0
1
1
1
0
1
Já temos os valores-verdade da hipótese da proposição (p ∨ ¬q) → (p ∧ q). Precisamos agora determinar a conclusão. Incluiremos mais uma coluna na tabela verdade, que receberá os valores-verdade
da proposição (p ∧ q), que podem ser obtidos diretamente da Tabela 8, operação de conjunção de
duas proposições. Os resultados obtidos são apresentados a seguir, na Tabela 12.
Tabela 12: Passo 4: Adicionando a coluna (p ∧ q)
p q ¬q (p ∨ ¬q) (p ∧ q)
1 1 0
1
1
1 0 1
1
0
0 1 0
0
0
0 0 1
1
0
Por fim, chegamos à proposição composta original, i.e., (p ∨ ¬q) → (p ∧ q). Para obter os valoresverdade para esta proposição, devemos adicionar uma nova coluna com este conteúdo, consultar os
valores-verdade já determinados para a hipótese (p ∨ ¬q) e conclusão (p ∧ q), e com base na tabela
verdade da proposição condicional (→) apresentada na Tabela 8 chegamos à tabela verdade final
para a proposição composta (p ∨ ¬q) → (p ∧ q), cujos resultados são dados pela Tabela 13.
14
Tabela
p
1
1
0
0
13: Passo 5: Adicionando a coluna (p ∨ ¬q) → (p ∧ q)
q ¬q (p ∨ ¬q) (p ∧ q) (p ∨ ¬q) → (p ∧ q)
1 0
1
1
1
0 1
1
0
0
1 0
0
0
1
0 1
1
0
0
◭
4.9
Precedência de Operadores Lógicos
Assim como na algebra, os conectivos lógicos possuem precedência, isto é, existem prioridades que
devem ser avaliadas na interpretação de uma proposição composta. A ordem de precedência destes
operadores é dada a seguir, na Tabela 14.
Tabela 14: Ordem de precedência dos conectivos lógicos
Operador Prioridade
¬
1
∧
2
∨
3
→
4
↔
5
4.10
Linguagem Natural vs. Proposições
A linguagem natural, em geral, permite escrever sentenças ambiguas. Traduzir sentenças em linguagem em proposições compostas acaba com essa ambiguidade. Uma vez traduzidas em expressões
lógicas, podemos analisar seus valores-verdade, manipulá-las e aplicar regras de inferência para raciocinar sobre tais sentenças.
Exemplo:
Sejam s, t e u proposições primitivas tais que
• s: João sai para caminhar lá fora
• t: O dia está ensolarado
• u: Está nevando
15
Possíveis traduções em linguagem natural para as proposições compostas escritas em linguagem
lógica
• (t ∧ ¬u) → s: Se o dia estiver ensolarado e não estiver nevando, então João sairá pra
caminhar lá fora
• t → (¬u → s): Se o dia estiver ensolarado, então se não estiver nevando João sairá para
caminhar lá fora
• ¬(s ↔ (u ∨ t)): João não irá caminhar lá fora se e somente se estiver nevando ou o dia
estiver ensolarado
Possíveis traduções em linguagem lógica para as proposições compostas escritas em linguagem natural
• João sairá pra caminhar se e somente se o dia estiver ensolarado: s ↔ t
• Se estiver nevando e o dia não estiver ensolarado, então João não sairá para caminhar lá
fora: (u ∧ ¬t) → ¬s
• Está nevando mas João irá caminhar lá fora mesmo assim: u ∧ s
◭
Exemplo:
Seja a sentença em linguagem natural: ‘Você não pode andar de montanha russa se você tiver
menos do que 1,20 metros de altura a menos que você tenha 16 anos de idade.’ Podemos fazer a
tradução desta sentença em proposições compostas da seguinte maneira. Sejam as primitivas
• q: Você pode andar de montanha russa
• r: Você tem menos do que 1,20 m de altura
• s: Você tem mais de 16 anos de idade
Então, a sentença em linguagem natural pode ser traduzida em proposições lógicas como: (r∧¬s) →
¬q, ou ainda (¬r ∨ s) → q
◭
Conforme mencionado, a tradução das sentenças de linguagem natural para proposições lógicas
elimina as ambiguidades. Isso é muito importante na atividade de especificação de sistemas de
hardware e software de forma que um sistema em desenvolvimento use tais especificações. Proposições compostas podem, dessa forma, serem empregadas com este propósito.
Uma especificação de sistema deve ser consistente, i.e., não conter especificações conflitantes que
possam ser usadas para derivar uma contradição. Se as especificações não forem consistentes, pode
16
ser que não haja uma forma de desenvolver um sistema que atenda a todas elas.
Exemplo:
Determine se estas especificações de sistema são consistentes:
• A mensagem de diagnóstico é armazenada no buffer ou ela é retransmitida
• A mensagem de diagnóstico não é armazenada no buffer
• Se a mensagem de diagnóstico é armazenada no buffer, então ela é retransmitida
A verificação de consistência de um sistema passa pela sua tradução em expressões lógicas. Sejam
as proposições primitivas
• p: A mensagem de diagnóstico é armazenada no buffer
• q: A mensagem de diagnóstico é retransmitida
As três especificações acima podem ser traduzidas como:
• A mensagem de diagnóstico é armazenada no buffer ou ela é retransmitida: p ∨ q
• A mensagem de diagnóstico não é armazenada no buffer: ¬p
• Se a mensagem de diagnóstico é armazenada no buffer, então ela é retransmitida p → q
Verificando a consistência das três especificações por meio da tabela verdade:
Tabela 15: Tabela Verdade para as especificações (p ∨ q), (¬p) e (p → q)
p q p ∨ q ¬p p → q
1 1
1
0
1
1 0
1
0
0
0 1
1
1
1
0 0
0
1
1
Uma atribuição de valores que torna as três especificações verdadeiras é observada na Tabela 15,
quando a proposição p é falsa (i.e., atribui-se valor 0 para p) e a proposição p é verdadeira (i.e.,
atribui-se valor 1 para q). Dessa forma, vemos que a especificação de sistema apresentado é consistente.
◭
Exemplo:
A especificação do sistema apresentado no exemplo anterior se mantém consistente se adicionarmos
uma nova especificação ‘A mensagem de diagnóstico não é transmitida’ ?
17
Tabela 16: Tabela Verdade
p
1
1
0
0
para as especificações (p ∨ q), (¬p) e (p → q) e (¬q)
q p ∨ q ¬p p → q ¬q
1
1
0
1
0
0
1
0
0
1
1
1
1
1
0
0
0
1
1
1
Faremos tal verificação recorrendo novamente à tabela verdade, que agora contempla a proposição
(¬q). A tabela verdade desta especificação de sistemas é dada a seguir, na Tabela 16.
Pelos valores-verdade encontrados na Tabela 16, observamos que não existe nenhuma atribuição de
valores de p e q que satisfaçam as quatro especificações apresentadas. Isto posto, concluímos que
esta especificação de sistema é inconsistente.
◭
4.11
Lógica e Operações Bit a Bit
A representação da informação em um computador digital é feita usando-se bits. Um bit é um
símbolo com dois valores possíveis: 0 e 1, que pode ser interpretado como V e F. Uma variável
booleana é aquela que admite apenas dois valores: verdadeiro ou falso. Uma variável booleana pode
ser representada por um bit.
Uma operação binária é um cômputo que corresponde à aplicação dos conectivos lógicos ∨, ∧ e ⊕,
denominados de OR, AND e XOR nas linguagens de programação, à um ou mais bits. A mesma tabela
verdade destes conectivos lógicos se aplica às operações bit a bit.
Definição 8 (String). Uma string de bits é uma sequência de zero ou mais bits. O tamanho da
string é o número de bits da string.
Exemplo:
Encontre as strings de bits que resultam das operações OR, AND e XOR aplicadas sobre as strings S1 :
1011011101 e S2 : 0010101111.
S1
S2
S1 OR S2
S1 AND S2
S1 XOR S2
1
0
1
0
1
0
0
0
0
0
1
1
1
1
0
1
0
1
0
1
0
1
1
0
1
1
0
1
0
1
1
1
1
1
0
1
1
1
1
0
0
1
1
0
1
1
1
1
1
0
◭
18
5
Equivalências Proposicionais
Conforme já foi mencionado neste documento, se duas proposições compostas possuem os mesmos
valores-verdade, então elas são equivalentes. Isso permite, por exemplo, que se substitua uma proposição composta por outra equivalente na construção de argumentos matemáticos.
Antes de definir formalmente o conceito de equivalência, devemos formalizar a classificação das
proposições de acordo com seus possíveis valores-verdade.
5.1
Tautologia, Contradição e Contingência
Definição 9 (Classificação). Uma proposição composta que é sempre verdadeira, independente dos
valores-verdade das proposições que nela ocorrem, é denominada de tautologia. Uma proposição
composta que é sempre falsa é chamada de contradição. Uma proposição composta que não é nem
uma tautologia, nem uma contradição, é denominada contingência.
Exemplo:
Tautologias e contradições podem ser construídas com o uso de apenas uma variável proposicional
e dos conectivos lógicos de conjunção e disjunção, conforme ilustra a tabela verdade expressa na
Tabela 17.
Tabela 17: Tabela Verdade para as proposições (p ∨ ¬p) e (p ∧ ¬p)
p ¬p p ∨ ¬p p ∧ ¬p
0
1
1
0
1
1
0
0
◭
Exemplo:
A proposição composta p ∧ q → (p ↔ q) é uma tautologia (ver Tabela 18)
Tabela 18: Tabela Verdade para a proposição p ∧ q → (p ↔ q)
p q p ∧ q p ↔ q p ∧ q → (p ↔ q)
0 0
0
1
1
0 1
0
0
1
1 0
0
0
1
1 1
1
1
1
19
◭
Exemplo:
A proposição composta (p ∧ q) ∧ ¬(p ∨ q) é uma contradição (ver Tabela 19)
Tabela 19: Tabela Verdade para a proposição (p ∧ q) ∧ ¬(p ∨ q)
p q p ∧ q p ∨ q ¬(p ∨ q) (p ∧ q) ∧ ¬(p ∨ q)
0 0
0
0
1
0
0 1
0
1
0
0
1 0
0
1
0
0
1 1
1
1
0
0
◭
Exemplo:
A proposição composta p → ¬p é uma contingência (ver Tabela 20).
Tabela 20: Tabela Verdade para a proposição p → ¬p
p ¬p p → ¬p
0 1
1
1 0
0
◭
As tautologias e contradições tem fundamental importância quando usadas em métodos de prova,
que veremos adiante na disciplina.
5.2
Equivalências Lógicas
Definição 10 (Equivalência). As proposições compostas p e q são chamadas logicamente equivalentes se p ↔ q é uma tautologia. A notação p ≡ q indica que as proposições p e q são logicamente
equivalentes.
Denominados de algebra de proposições o uso das tabelas verdade das proposições para desenvolver a idéia de quando duas entidades são essencialmente as mesmas.
20
Uma das formas de verificar se duas proposições p e q são equivalentes consiste em usar a tabela
verdade. Elas serão equivalentes se as colunas que fornecem seus valores-verdade forem idênticas.
Exemplo:
Sejam as proposições p → q e ¬q → ¬p. Mostre, pela tabela verdade, que estas proposições são
logicamente equivalentes (ver resultado na Tabela 21).
Tabela 21: Tabela verdade para as proposições p → q e ¬q → ¬p
p q ¬p ¬q (p → q) (¬q → ¬p) (p → q) ↔ (¬q → ¬p)
0 0
1
1
1
1
1
0 1
1
0
1
1
1
1 0
0
1
0
0
1
1 1
0
0
1
1
1
Assim, a proposição condicional (p → q) e sua contrapositiva (¬q → ¬p) são equivalentes.
◭
Exemplo:
Mostre que as proposições ¬(p ∨ q) e ¬p ∧ ¬q são equivalentes1 .
Faremos isto construindo a tabela verdade destas proposições, cujos resultados são apresentados
na Tabela 22. Incluiremos também uma nova proposição composta ¬(p ∨ q) ↔ (¬p ∧ ¬q), que
mostraremos ser uma tautologia por meio de seus valores-verdade.
Tabela
p q
0 0
0 1
1 0
1 1
22: Tabela verdade para as proposições ¬(p ∨ q) e (¬p ∧ ¬q)
¬p ¬q p ∨ q ¬(p ∨ q) ¬p ∧ ¬q ¬(p ∨ q) ↔ (¬p ∧ ¬q)
1
1
0
1
1
1
1
0
1
0
0
1
0
1
1
0
0
1
0
0
1
0
0
1
A Tabela 22 mostra que a proposição ¬(p ∨ q) possui os mesmos valores-verdade da proposição
(¬p ∧ ¬q). Pela Definição 10, temos que ¬(p ∨ q) ↔ (¬p ∧ ¬q) é uma tautologia, logo as proposições
¬(p ∨ q) e (¬p ∧ ¬q) são equivalentes.
◭
Exemplo:
Mostre que p ∨ (q ∧ r) e (p ∨ q) ∧ (p ∨ r) são equivalentes2 .
1
2
Essa equivalência é uma das duas Leis de De Morgan
Propriedade distributiva da disjunção sobre a conjunção
21
Faremos isso construíndo a tabela verdade, cujos resultados são dados na Tabela 23.
Tabela 23: Tabela verdade para as proposições p ∨ (q ∧ r) e (p ∨ q) ∧ (p ∨ r)
p
0
0
0
0
1
1
1
1
q
0
0
1
1
0
0
1
1
r
0
1
0
1
0
1
0
1
q∧r
0
0
0
1
0
0
0
1
p ∨ (q ∧ r)
0
0
0
1
1
1
1
1
p∨q
0
0
1
1
1
1
1
1
p∨r
0
1
0
1
1
1
1
1
(p ∨ q) ∧ (p ∨ r)
0
0
0
1
1
1
1
1
[p ∨ (q ∧ r)] ↔ [(p ∨ q) ∧ (p ∨ r)]
1
1
1
1
1
1
1
1
◭
5.3
Equivalências Importantes
Existem algumas equivalências importantes muito usadas na simplificação de expressões lógicas.
Este documento lista tais equivalências na Tabela 24.
Propriedade
Identidade
Dominação
Idempotente
Dupla Negação
Comutativa
5.4
Tabela 24: Equivalências lógicas importantes
Equivalência lógica
Propriedade
Equivalência lógica
p∧1≡p
(p ∨ q) ∨ r ≡ p ∨ (q ∨ r)
Associativa
p∨0≡p
(p ∧ q) ∧ r ≡ p ∧ (q ∧ r)
p∨1≡1
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r)
Distributiva
p∧0≡0
p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
p∨p≡ p
¬(p ∨ q) ≡ ¬p ∧ ¬q
Leis de De Morgan
p∧p≡ p
¬(p ∧ q) ≡ ¬p ∨ ¬q
¬(¬p) ≡ p
p ∨ (p ∧ q) ≡ p
Absorção
p ∧ (p ∨ q) ≡ p
p∨q ≡q∨p
p ∨ ¬p ≡ 1
Negação ou Inversa
p∧q ≡q∧p
p ∧ ¬p ≡ 0
Construindo novas equivalências lógicas
As equivalências lógicas podem ser usadas para construir equivalências lógicas adicionais, uma vez
que uma proposição composta pode ser substituída por outra proposição composta que é equivalente
22
sem alterar os valores-verdade da proposição original.
Exemplo:
Mostre que a proposição composta ¬(p ∨ (¬p ∧ q)) e ¬p ∧ ¬q são equivalentes.
Expressão
¬(p ∨ (¬p ∧ q))
≡ ¬p ∧ ¬(¬p ∧ q)
≡ ¬p ∧ (¬¬p ∨ ¬q)
≡ ¬p ∧ (p ∨ ¬q)
≡ (¬p ∧ p) ∨ (¬p ∧ ¬q)
≡ 0 ∨ (¬p ∧ ¬q)
≡ ¬p ∧ ¬q
Propriedade aplicada
Lei de De Morgan
Lei de De Morgan
Dupla Negação
Distributiva
Inversa
Identidade
Resulta em
≡ ¬p ∧ ¬(¬p ∧ q)
≡ ¬p ∧ (¬¬p ∨ ¬q)
≡ ¬p ∧ (p ∨ ¬q)
≡ (¬p ∧ p) ∨ (¬p ∧ ¬q)
≡ 0 ∨ (¬p ∧ ¬q)
≡ ¬p ∧ ¬q
Após a aplicação sucessiva de equivalências, mostramos que ¬(p ∨ (¬p ∧ q)) e ¬p ∧ ¬q são equivalentes e possuem os mesmos valores-verdade. Outra maneira de demonstrar essa equivalência é a
construção da tabela verdade destas expressões lógicas. Para o caso deste exemplo, ver Tabela 25.
Tabela 25: Tabela verdade para as proposições ¬(p ∨ (¬p ∧ q)) e ¬p ∧ ¬q
p q ¬p ¬q ¬p ∧ ¬q ¬p ∧ q p ∨ (¬p ∧ q) ¬(p ∨ (¬p ∧ q))
0
0
1
1
0
1
0
1
1
1
0
0
1
0
1
0
1
0
0
0
0
1
0
0
0
1
1
1
1
0
0
0
Com isso, fica demonstrado que ¬(p ∨ (¬p ∧ q)) ≡ ¬p ∧ ¬q
◭
Exemplo:
Dadas as proposições primitivas p e q, existe alguma forma de expressar a proposição composta
(p ∨ q) ∧ ¬(¬p ∧ q), i.e., podemos encontrar uma proposição mais simples que seja equivalente à
proposição composta dada?
Expressão
(p ∨ q) ∧ ¬(¬p ∧ q)
≡ (p ∨ q) ∧ (¬¬p ∨ ¬q)
≡ (p ∨ q) ∧ (p ∨ ¬q)
≡ p ∨ (q ∧ ¬q)
≡p∨0
≡p
Propriedade aplicada
Resulta em
Lei de De Morgan
≡ (p ∨ q) ∧ (¬¬p ∨ ¬q)
Dupla Negação
≡ (p ∨ q) ∧ (p ∨ ¬q)
Distributiva de ∨ sobre ∧ ≡ p ∨ (q ∧ ¬q)
Inversa
≡ p∨0
Identidade
≡p
23
Pela simplificação, temos que (p ∨ q) ∧ ¬(¬p ∧ q) ≡ p.
6
◭
Predicados e Quantificadores
6.1
Limitações da lógica proposicional
A lógica proposicional nem sempre consegue expressar adequadamente o significado das proposições em linguagem matemática e em linguagem natural, visto que formulas proposicionais tem uma
possibilidade limitada de expressão.
Para exemplificar, sejam as sentenças:
• ‘Para todo x, x > 0’
• ‘Todo computador conectado à rede do LAB01 está com vírus’
• ‘Existe um aluno da classe de matemática discreta que não passou em Cálculo I’
Suponha que cada uma das sentenças declaradas acima sejam verdadeiras. Não é possível simbolizar tais sentenças adequadamente usando apenas variáveis proposicionais, parênteses e conectivos
lógicos, como fizemos até o presente momento.
Isto ocorre porque elas contém elementos novos (‘para todo’, ‘para cada’, ‘para algum’) que são
ligados ao conceito de predicados e quantificadores. Quantificadores são frases do tipo ‘para todo’,
‘para cada’, ‘para algum’, que relacionam quantos objetos possuem uma determinada propriedade.
Para estes casos, a lógica de predicados pode ser usada para expressar o significado de uma
grande faixa de declarações deste tipo que nos permite raciocinar e explorar relacionamentos entre
objetos.
6.2
Predicados
Definição 11 (Predicado). Uma propriedade ou relacionamento entre objetos é denominado predicado. A descrição de um predicado em lógica é denominada de fórmula.
Sejam as declarações:
• x>3
• x=y+3
24
• x+y =z
• O computador x está sob ataque de um intruso
• O computador x está funcionando adequadamente
Diversas sentenças que envolvem variáveis são encontradas com frequência em afirmações matemáticas, programas de computadores e especificação de sistemas.
Sentenças que possuem variáveis não são nem verdadeiras nem falsas enquanto não se especificar
um valor para elas (logo, sentenças com variáveis não são proposições).
Referimos à sentenças do tipo ‘O número x + 2 é um inteiro par’ como sentença aberta, que será
formalizada a seguir, nas Definições 12 e 13.
Definição 12 (Sentença Aberta). Dado um conjunto A 6= ∅, uma sentença aberta em A é uma
expressão P (x) de modo que, para cada a ∈ A, P (a) é uma proposição. Dado a ∈ A, tem-se P (a)
verdadeiro ou falso.
Definição 13 (Sentença Aberta). Uma sentença é uma sentença aberta se:
1. Ela contém uma ou mais variáveis, e
2. Ela não é uma proposição, mas
3. Ela torna-se uma proposição quando suas variáveis são substituídas por certos valores permissíveis.
Na declaração ‘x > 3’, podemos dividí-la em duas partes: o sujeito (neste caso, a variável x) e o
predicado da declaração (neste caso, a propriedade que o sujeito da declaração deve ter, ou seja, ‘é
maior do que 3’). Em termos de notação, denotamos a declaração ‘x é maior do que 3’ por P (x),
onde P denota o predicado ‘é maior do que 3’ e x é a variável ao qual o predicado se aplica.
A declaração P (x) é dita ser o valor da função proposicional P em x. Uma vez que se atribui
um valor para a variável x, a declaração P (x) torna-se uma proposição que possui valores-verdade.
Exemplo:
Seja P (x) a declaração ‘x > 3. Qual é o valor verdade de P (4) e P (2)?
Obtemos P (4) pela substituição de x = 4 e P (2) pela substituição de x = 2 na declaração ‘x > 3’.
Assim, P (4) é verdadeira, enquanto que P (2) é falsa.
◭
25
Podemos trabalhar com afirmações que envolvam mais de uma variável. Por exemplo, considere a
afirmação ‘x = y + 3’. Podemos indicá-la por Q(x, y), em que x e y são variáveis e Q é o predicado.
Quando determinamos valores para as variáveis x e y, a sentença aberta Q(x, y) torna-se uma proposição e possui valores-verdade.
Exemplo:
Seja Q(x, y): os números y + 2, x − y e x + 2y são inteiros pares.
Temos:
• Q(4, 2): os números 4, 2 e 8 são inteiros pares: VERDADEIRO
• Q(5, 2): os números 4, 3 e 9 são inteiros pares: FALSO
• Q(10, 3): os números 5, 7 e 16 são inteiros pares: FALSO
◭
Em geral, uma sentença que envolva n variáveis pode ser denotada por P (x1 , x2 , . . . , xn ) e é denominada de função proposicional P para a n-upla (x1 , x2 , . . . , xn ), e P é denominado de predicado
n-ário.
Por fim, ainda existe a negação de uma sentença aberta, que consiste na aplicação do operador
lógico de negação sob a sentença, i.e., ¬P (x). Por exemplo, se P (x) é uma função proposicional
que declara que ‘o número x + 2 é um inteiro par’, então ¬P (x)’ deve ser interpretado como a
declaração ‘o número x + 2 não é um inteiro par’. Diante desta sentença aberta, temos que P (7) é
falso, enquanto que ¬P (7) é verdadeiro.
6.3
Quantificadores
Quando atribuímos valores às variáveis de uma função proposicional, a sentença resultante torna-se
uma proposição e assume um valor verdade. Entretanto, existe outra maneira de se criar proposições a partir de funções proposicionais, denominada quantificação.
A quantificação permite-nos dizer que um dado predicado P é verdadeiro para um conjunto de
elementos.
A área da lógica que estuuda os predicados e quantificadores é denominada de cálculo de predicados.
6.3.1
Quantificador Universal
Algumas afirmações matemáticas referem-se à uma propriedade que é verdadeira para todos os
valores que uma variável pode assumir em um determinado domínio/universo do discurso. A
quantificação universal de P (x) para um domínio particular é a proposição que afirma que P (x)
é verdadeiro para todos os valores de x neste domínio. O domínio deve sempre ser especificado
26
quando um quantificador universal for usado.
Definição 14 (Quantificação Universal). Uma quantificação universal de P (x) é a declaração
do tipo ‘P (x) para todos os valores de x no domínio’
A notação ∀xP (x) denota uma quantificação universal de P (x)
O símbolo ∀ é denominado quantificador universal. A notação ∀xP (x) é lida como ‘para todo
xP (x)’ ou ‘para cada xP (x).
Um elemento para o qual xP (x) é falso é denominado de contra-exemplo de ∀xP (x).
Seja A o conjunto domínio de uma sentença aberta. Se A = ∅, entende-se que a quantificação
universal ∀x ∈ A(S) é verdadeira, não importa qual seja a sentença S.
Exemplo:
Seja a sentença aberta ‘R(x): 2x é um inteiro par’ cujo domínio/universo é o conjunto de números
inteiros (Z)
A quantificação universal ∀xR(x) é verdadeira, pois independente que qual valor inteiro seja substituído na variável x (par ou ímpar), o resultado sempre será par.
◭
Exemplo:
Seja a sentença aberta ‘x + 1 > x. Qual é o valor verdade da quantificação ∀xP (x) no domínio dos
números reais (R)?
Ao substituir a variável x por qualquer número real na sentença aberta P (x), sempre tomaremos
proposições que são verdadeiras. Como P (x) é verdadeiro para todos os números reais, temos que
a quantificação universal ∀xP (x) é verdadeira.
◭
Seja P (x) uma função proposicional. Uma sentença ∀x(P x) é falsa se e somente se P (x) não é
sempre verdadeiro para as variáveis x no seu domínio.
Uma das maneiras de fazê-lo consiste em apresentar um contra-exemplo para a declaração ∀xP (x).
Veremos adiante que buscar por contra-exemplos em proposições universalmente quantificadas é
importante no estudo da matemática discreta, em especial nas provas por contra-exemplo.
Exemplo:
Qual o valor verdade de ∀xP (x), em que P (x) é a proposição ‘x2 < 10 e o domínio consiste no
conjunto dos inteiros positivos que não excedem 4?
27
A declaração ∀xP (x) é equivalente à conjunção P (1) ∧ P (2) ∧ P (3) ∧ P (4), visto que o conjunto
domínio é A = {1, 2, 3, 4}. Como P (4) é falso, então a quantificação universal ∀x(P (x)) também é
falsa.
◭
Exemplo:
Sejam as sentenças abertas, cujo universo compreende todos os números reais (R).
• Q(x) : x2 ≥ 0
• S(x) : x2 − 3 ≥ 0
A quantificação ∀x[Q(x) → S(x)] é verdadeira ou falsa?
Esta sentença pode ser traduzida como: ‘para todo número real, se x2 ≥ 0, então x2 − 3 ≥ 0’. Para
mostrar que esta declaração é falsa, basta apresentarmos um contra-exemplo, isto é, um valor de x
para o qual [Q(x) → S(x)] seja falso.
Substituindo-se x por 1, temos Q(1) : (1)2 ≥ 0, verdadeiro, e S(1) : (1)2 − 3 ≥ 0, falso. Encontramos
um caso onde [Q(x) → S(x)] é falso; logo a declaração ∀x[Q(x) → S(x)] é falsa porque existe pelo
menos um valor de x para o qual [Q(x) → S(x)] é falso.
◭
Exemplo:
Qual o valor verdade de ∀x(x2 ≥ x) se o conjunto domínio for:
(a) o conjunto Z?
(b) o conjunto R?
Se o conjunto domínio for o conjunto dos números inteiros Z, então é sempre verdade que x2 ≥ x,
para todos os inteiros.
No entanto, se o domínio for o conjunto dos números reais R, então existem contra-exemplos que
mostram que a quantificação universal é falsa. Para exemplificar,
os
sejam dois
contra-exemplos
1
1
1 2
1 2
1
1
números /2 e /3, que pertencem aos números reais e onde 2 6≥ 2 , ou 3 6≥ 3 . Isso ocorrerá
para qualquer número contido no intervalo (0, 1).
◭
6.3.2
Quantificador Existencial
Muitas sentenças matemáticas afirmam que existe um elemento que possui uma certa propriedade.
Tais sentenças podem ser expressas usando-se quantificação existencial. Por meio delas, formamos
uma proposição que é verdadeira se e somente se P (x) é verdadeiro para pelo menos um valor de x
do domínio.
28
Definição 15 (Quantificação Existencial). A quantificação existencial de P (x) é a proposição
‘existe um elemento x do domínio tal que P (x).
Usa-se a notação ∃xP (x) para a quantificação existencial de P (x). O símbolo ∃ é denominado
quantificador existencial.
A quantificação existencial ∃xP (x) é lida como ‘existe um x tal que P (x)’, ou ‘existe pelo menos
um x tal que P (x)’, ou ainda, ’para algum x, P (x)’.
Seja A o conjunto domínio de uma sentença aberta S. Se A = ∅, entende-se que a quantificação
existencial ∃x ∈ A(S) é falsa, não importa qual seja a sentença S.
Exemplo:
Seja P (x) a expressão x > 3, cujo domínio é o conjunto dos números reais (R). Qual é o valor
verdade da quantificação existencial ∃xP (x)?
Como a sentença x > 3 é verdadeira para pelo menos alguns números reais (por exemplo, para
{4, 5, 6, . . . ...}, então a quantificação ∃xP (x) é verdadeira.
◭
Exemplo:
Sejam as seguintes sentenças abertas, no domínio dos números reais (R)
• P (x): x ≥ 0
• Q(x): x2 − 3x − 4 = 0
Verificar se a quantificação ∃x[P (x) ∧ Q(x)] é verdadeira ou falsa.
Para que a quantificação apresentada seja verdadeira, devemos apresentar pelo menos um caso em
que a proposição [P (x) ∧ Q(x)] seja verdadeira.
Por tratar-se de uma proposição composta por meio de um conectivo de conjunção, para que a sentença aberta [P (x) ∧ Q(x)] seja verdadeira, ambas as sentenças P (x) e Q(x) devem ser verdadeiras.
Dentre os possíveis valores que x pode admitir dentro do conjunto R, o número 4 é um dos valores
que tornam P (4) : (4) ≥ 0 verdadeiro, e Q(4) : (4)2 − 3(4) − 4 = 0 também verdadeiro.
Logo, concluímos que a quantificação ∃x[P (x) ∧ Q(x)] é verdadeira.
6.3.3
◭
Resumo dos quantificadores
Diante dos resultados apresentados nas sub-seções anteriores, podemos resumir as situações em que
cada quantificador é verdadeiro ou falso na Tabela 26.
29
Tabela 26: Resumo: quantificadores universal e existencial
Sentença
∃xP (x)
∀xP (x)
∃x¬P (x)
∀x¬P (x)
6.3.4
Quando é Verdadeiro
Para algum (pelo menos um) no domínio,
P (a) é verdadeiro
Para toda a substituição de a do domínio,
P (a) é verdadeiro
Para pelo menos uma escolha de a no domínio, P (a) é falso tal que ¬P (a) seja verdadeiro
Para toda substituição de a no domínio,
P (a) é falso e sua negação ¬P (a) é verdadeiro
Quando é Falso
Para todo a no domínio, P (a) é falso
Existe pelo menos uma substituição de a
do domínio para o qual P (a) é falso
Para toda substituição de a no domínio,
P (a) é verdadeiro
Existe pelo menos uma substituição de a
do domínio para o qual ¬P (a) é falso e
P (a) é verdadeiro
Quantificador de Unicidade
Definição 16 (Quantificação de Unicidade). O quantificador de unicidade, também conhecido
como quantificador de singularidade, declara que ‘existe um único x tal que P (x) é verdadeiro’,
denotado pelo símbolo ∃! ou ∃1 .
A notação ∃!xP (x) afirma que ‘existe um único x tal que P (x).
Exemplo:
Seja a sentença aberta P (x) : x2 = 4. Verificar a veracidade da sentença no domínio:
(a) dos números naturais (N)
(b) dos números inteiros (Z).
No domínio dos naturais, a proposição ∃!x(x2 = 4) é verdadeira, pois o número 2 é o único número
do conjunto N que, quando elevado ao quadrado, resulta em 4.
No domínio dos inteiros, a proposição ∃!x(x2 = 4) é falsa, pois os números 2 e −2 do conjunto Z
possuem quadrado igual a 4.
◭
Exemplo:
Verificar o valor-verdade das seguintes quantificações de unicidade, no domínio dos números naturais (N):
∃!n(n < 1): verdadeira, pois apenas o número 0 satisfaz a condição
∃!n(n! < 10): falsa, pois os fatoriais de 0, 1, 2 e 3 são todos menores que 10.
30
∃!n(n + 1 > n): falsa, pois para quaisquer número natural, n + 1 é sempre maior do que n.
∃!n(2n é par): falsa, pois o conjunto dos números naturais é infinito, logo existem infinitos números
deste domínio que são pares: {2, 4, 6, 8, 10, . . . }.
◭
6.3.5
Quantificadores com Restrição de Domínio
Pode-se restringir o domínio de um quantificador utilizando-se uma notação abreviada, onde a condição que a variável deve satisfazer é incluída após o quantificador.
Exemplo:
Seja V = {1, 2, . . . , 30}, e seja A[1..30] um array tal que para cada índice i entre 1 e 30, A[i] =
i * i - 1. Para os elementos A[1], A[2], . . . , A[30], Escreva os predicados que dizem:
a) Cada entrada no array é não negativa: ∀i ∈ V (A[i] ≥ 0)
b) O valor A[30] é o maior valor: ∀i ∈ V (A[i] ≤ A[30])
c) Cada entrada de A é não nula: ∀i ∈ V (A[i] 6= 0)
◭
Exemplo:
Sejam as sentenças abertas, com domínio no conjunto R:
• ∀x < 0(x2 > 0), interpretado como ‘o quadrado de um número negativo é positivo’, que
poderia ser declarado da seguinte maneira: ∀x(x < 0 → x2 > 0)
• ∀y 6= 0(y 3 6= 0), interpretado como ‘o cubo de um número real não nulo é não nulo’, que
poderia ser declarado como ∀y(y 6= 0 → y 3 6= 0)
• ∃z > 0(z 2 = 2), interpretado como ‘existe uma raiz quadrada positiva de 2’, cuja declaração
equivale a ∃z(z > 0 ∧ z 2 = 2)
◭
Note que:
• a restrição de uma quantificação universal é o mesmo que uma quantificação universal de uma
sentença condicional.
• a restrição de uma quantificação existencial é o mesmo que a quantificação existencial de uma
conjunção.
31
6.3.6
Precedência de Quantificadores
Os quantificadores ∀ e ∃ tem precedência sobre todos os conectivos lógicos do cálculo proposicional.
Exemplo:
A notação ∀xP (x) ∧ Q(x) é a conjunção de ∀xP (x) com Q(x), ou seja, (∀xP (x)) ∧ Q(x)
6.3.7
◭
Equivalências Lógicas Envolvendo Quantificadores
Definição 17 (Equivalência em Quantificadores). Sentenças envolvendo quantificadores e predicados são logicamente equivalentes se e somente se elas tem a mesma tabela verdade, não importa
quais predicados são substituídos nestas sentenças e que domínio é usado para variáveis nestas funções proposicionais.
Usamos a notação S ≡ T para dizer que duas declarações S e T que envolvem predicados e quantificadores são logicamente equivalentes.
Exemplo:
Mostre que a sentença ∀x(P (x) ∧ Q(x)) e a sentença ∀xP (x) ∧ ∀xQ(x) são logicamente equivalentes
para um mesmo domínio A.
Para mostrar que as sentenças são logicamente equivalentes, devemos mostrar que elas possuem os
mesmos valores verdade, independente do domínio e dos predicados P e Q.
As sentenças são equivalentes se mostrarmos que (i) se ∀x(P (x)∧Q(x)) é verdadeira, então ∀xP (x)∧
∀xQ(x) também é verdadeira; em seguida mostramos que (ii) se ∀xP (x) ∧ ∀xQ(x) é verdadeira,
então ∀x(P (x) ∧ Q(x)) também será verdadeira.
(i): suponha que ∀x(P (x) ∧ Q(x)) é verdadeira. Então, para um elemento a ∈ A, a sentença
P (a) ∧ Q(a) é verdadeira; logo P (a) é verdadeira e Q(a) é verdadeira. Se P (a) e Q(a) são verdadeiras para todo a ∈ A, então ∀xP (x) é verdadeira e ∀xQ(x) é verdadeira. Se ambas são verdadeiras,
então ∀xP (x) ∧ ∀xQ(x) é também verdadeira.
(ii): suponha que ∀xP (x) ∧ ∀xQ(x) é verdadeira. Se a sentença é verdadeira, então as sentenças
∀xP (x) e ∀xQ(x) são ambas verdadeiras. Se a sentença ∀xP (x) é verdadeira, então P (a) é verdadeira para a ∈ A. O mesmo ocorre com Q(a), visto que ∀xQ(x) para qualquer valor do domínio
A. Se P (a) e Q(a) são verdadeiros, então a sentença P (a) ∧ Q(a) também será verdadeira para
qualquer elemento do domínio A. Concluímos então que ∀x(P (x) ∧ Q(x)) é verdadeira.
Como (i) e (ii) ocorrem, concluímos que ∀x(P (x) ∧ Q(x)) ≡ ∀xP (x) ∧ ∀xQ(x).
32
◭
Obtivemos um resultado interessante deste exemplo, que mostra que podemos distribuir a quantificação universal sobre a conjunção, visto que tanto uma forma quando a outra resultam nos mesmos
valores verdade.
A Tabela 27 apresenta algumas equivalências e implicações lógicas importantes referentes à quantificadores:
Tabela 27: Equivalências e Implicações
Expressão
Tipo
∃x(P (x) ∧ Q(x))
→
∃x(P (x) ∨ Q(x))
↔
∀x(P (x) ∧ Q(x))
↔
∀xP (x) ∨ ∀xQ(x)
→
6.3.8
Lógicas sobre Sentenças Quantificadas
Equivalência/Implicação
∃xP (x) ∧ ∃xQ(x)
∃xP (x) ∨ ∃xQ(x)
∀xP (x) ∧ ∀xQ(x)
∀x(P (x) ∨ Q(x))
Negação de Quantificadores
É comum considerar a situação de negar uma expressão quantificada. Por exemplo, seja a declaração ‘Todo estudante na sua classe teve aulas de cálculo’, representada pela quantificação universal
∀xP (x) onde P (x) consiste na declaração ‘x teve aulas de cálculo’.
A negação desta proposição é ‘Não é o caso que todo estudante na sua classe teve aulas de
cálculo’, que equivale a dizer que ‘Existe um estudante na sua classe que não teve aula de cálculo’.
Em termos formais, a negação da quantificação universal equivale à quantificação existencial da
negação da função proposicional original: ¬∀xP (x) ≡ ∃x¬P (x).
Pode ser que se torne necessário negar uma quantificação existencial. Seja a sentença ‘Existe um
estudante desta classe que não teve aulas de cálculo’, descrito formalmente como ∃xP (x), onde P (x)
declara que ‘x teve aulas de cálculo’.
A negação da proposição existencial é ‘Não é o caso de que existe um estudante desta classe
que teve aulas de cálculo’, que equivale a dizer que ‘Todo estudante desta classe não teve aulas de
cálculo’. Formalmente, a negação da quantificação existencial equivale à quantificação universal da
negação da função proposicional original: ¬∃xP (x) ≡ ∀x¬P (x).
As negações de quantificadores são chamadas de leis de De Morgan para quantificadores, e
estão resuminadas na Tabela 28.
33
Tabela 28: Leis de De Morgan para Quantificadores
Quando a negação é verdadeira
Negação
Sentença Equivalente
¬∃xP (x)
∀x¬P (x)
Para todo x, P (x) é falsa
¬∀xP (x)
∃x¬P (x)
Existe um x para o qual P (x)
é falsa
Quando a negação é falsa
Existe um x para o qual P (x)
é verdadeira
Para todo x, P (x) é verdadeira.
Exemplo:
Qual é a negação de ‘Existe um político honesto’ ?
Seja H(x) uma função proposicional que diz que ‘x é um político honesto’. A declaração ’Existe
um político honesto’ é expressa por ∃xH(x), no domínio de todos os políticos.
A negação ¬∃xH(x) equivale à expressão ∀x¬xH(x), que pode ser expressa por ‘Todos os políticos
não são honestos’, ou ‘Todos os políticos são desonestos’.
◭
Exemplo:
Qual é a negação de ‘Todos os brasileiros comem churrasco’ ?
Seja C(x) uma função proposicional que diz que ‘x come churrasco’. A senteça original é representada por ∀xC(x), cuja negação ¬∀xC(x) equivale à ∃x¬C(x).
Em linguagem natural, essa expressão pode ser dita como ‘Existe um brasileiro que não come churrasco’, ou ainda ‘Alguns brasileiros não comem churrasco’.
◭
Exemplo:
Quais as negações das proposições ∀x(x2 > x) e ∃x(x2 = 2)?
A negação de ∀x(x2 > x) equivale à ∃x¬(x2 > x), que pode ser reescrita como ∃x(x2 ≤ x). A
negação de ∃x(x2 = 2) equivale à ∀x¬(x2 = 2), que pode ser reescrita como ∀x(x2 6= 2).
Em ambos os casos, os valores-verdade destas proposições dependem do conjunto numérico que
corresponde ao domínio. Por exemplo se o domínio da sentença ∀x(x2 6= 2) for o conjunto Z, então
a sentença será verdadeira porque não existe nenhum inteiro que elevado ao quadrado resulta em 2;
√ 2
2 = 2.
◭
já se o domínio for o conjunto R, então a sentença será falsa porque
Exemplo:
Seja P (x) : ‘2x + 1 = 5’ e Q(x) : ‘x2 = 9’. Faça a negação da declaração ∃x(P (x) ∧ Q(x)) e dê uma
34
interpretação da sentença resultante em linguagem natural.
A negação da sentença ∃x(P (x) ∧ Q(x)) é dada por ∀x¬(P (x) ∧ Q(x)). Pela lei de De Morgan,
∀x¬(P (x) ∧ Q(x)) equivale à ∀x(¬P (x) ∨ ¬Q(x)).
Em linguagem natural, ∀x(¬P (x) ∨ ¬Q(x)) significa ‘Para cada inteiro x, 2x + 1 6= 5 ou x2 6= 9’. ◭
6.4
Quantificadores Aninhados
Até o presente momento, os quantificadores foram usados para mostrar como podem ser usados
em sentenças matemáticas, assim como podem ser usados para traduzir a linguagem natural para
expressões lógicas.
A partir de agora, introduziremos o conceito de quantificadores aninhados (agrupados).
6.4.1
Declarações Envolvendo Quantificadores Aninhados
Dois quantificadores estão aninhados se um está no escopo do outro, onde o quantificador mais
interno é tratado como uma função proposicional. Para exemplificar, ∀x∃y(x + y = 0) é o mesmo
que ∀xQ(x), em que Q(x) é ∃yP (x, y) e P (x, y) é x + y = 0.
Exemplo:
Traduza a sentença ∀x∀y((x > 0) ∧ (y < 0) → (xy < 0)) para linguagem natural.
A sentença afirma que ‘para todo real x e para todo real y, se x > 0 e y < 0, então xy < 0’; ou
‘para números reais x e y, se x é positivo e y é negativo, então o produto xy é negativo’; ou ainda
‘o produto de um número positivo po um número negativo é sempre negativo’.
◭
Exemplo:
Seja Q(x, y) a sentença x + y = 0. Quais os valores verdade das quantificações ∃y∀xQ(x, y) e
∀x∃yQ(x, y), com x ∈ R e y ∈ R.
A quantificação ∃y∀x(x + y = 0) representa a afirmação ‘existe um número real y para todo número
real x para o qual x + y = 0. Como não existe nenhum número real y que, somado à todo real x
resulta em zero, então a sentença ∃y∀xQ(x, y) é falsa.
Já a quantificação ∀x∃y(x + y = 0) expressa a afirmação ‘para todo real x, existe um número real y
para o qual x + y = 0’. Essa sentença é verdadeira, pois para cada x, existe um y = −x cuja soma
x + y resulta em 0.
◭
35
A Tabela 29 resume o significado das quantificações com duas variáveis, indicando as situações
em que o valor verdade da quantificação é verdadeiro, e as situações onde a quantificação assume
valor-verdade falso.
Sentença
∀x∀yP (x, y)
∀y∀xP (x, y)
∀x∃yP (x, y)
∃x∀yP (x, y)
∃x∃yP (x, y)
∃y∃xP (x, y)
Tabela 29: Quantificadores com Duas Variáveis
Quando é verdadeira
Quando é falsa
P (x, y) é verdadeira para todo
par x,y
P (x, y) é verdadeira para todo
par x,y
Para todo x existe um y para o
qual P (x, y) é verdadeira
Existe um x tal que P (x, y) é verdadeira para todo y
Existe um par x, y para o qual
P (x, y) é verdadeira
Existe um par x, y para o qual
P (x, y) é verdadeira
Existe um par x, y para o qual
P (x, y) é falsa
Existe um par x, y para o qual
P (x, y) é falsa
Existe um x tal que P (x, y) é
falsa para todo y
Para todo x, existe um y para o
qual P (x, y) é falsa
P (x, y) é falsa para todo par x, y
P (x, y) é falsa para todo par x, y
Neste último exemplo fica claro que a ordem em que os quantificadores aparecem determina a
verdade sobre a declaração. Segue mais um exemplo, desta vez envolvendo três variáveis e três
quantificadores, onde a ordem afeta a verdade da declaração:
Exemplo:
Seja S(x, y, z) a declaração ‘x+y = z’. Quais são os valores verdade das declarações ∀x∀y∃zS(x, y, z)
e ∃z∀x∀yS(x, y, z), com x, y, z ∈ R?
A quantificação ∀x∀y∃zS(x, y, z) pode ser expressa em linguagem natural como ‘para todo real x e
y, existe um real z para o qual x + y = z’, que é verdadeira visto que a soma de dois números reais
resulta em um número real.
Já a quantificação ∃z∀x∀yS(x, y, z) é interpretada em linguagem natural como ‘existe um número
real z tal que para todo real x e y, x + y = z’. Como inexiste tal número, então a quantificação
correspondente é falsa.
◭
Sentenças matemáticas também podem traduzidas em lógica por meio de quantificadores. Os próximos dois exemplos ilustram essa tradução, passo a passo, da declaração inicial até o refinamento
final.
Exemplo:
Traduza a declaração ‘A soma de dois inteiros positivos é sempre positivo’ em uma expressão lógica.
36
Primeiramente reescrevemos a sentença de forma que o domínio e quantificadores. Ela seria algo
do tipo: ‘Para cada dois números inteiros, se ambos são positivos, então o resultado da soma destes
dois inteiros é positivo.’.
O próximo passo do refinamento consiste em incluir variáveis. Teríamos ‘Para todos os inteiros
positivos x e y, x + y é positivo’.
Por fim, a tradução da última sentença em uma expressão lógica é quase direta, e resulta em:
∀x∀y((x > 0) ∧ (y > 0) → (x + y > 0)), com x, y ∈ Z
Se mudarmos o domínio da quantificação, a expressão acima pode ser representada de outra maneira
ainda:
∀x∀y(x + y > 0), com x, y ∈ Z+
A declaração ‘A soma de dois inteiros positivos é sempre positivo’ foi traduzida em termos formais
como ∀x∀y(x + y > 0), com x, y ∈ Z+ .
◭
Definição 18 (Inverso Multiplicativo). O inverso multiplicativo de um número real x é um
número real y tal que xy = 1.
Exemplo:
Traduza a declaração ‘Cada número real, exceto 0, tem um inverso multiplicativo’ para uma expressão lógica.
Reescrevemos a afirmação da seguinte maneira: ‘Para cada número real x, exceto zero, x tem um
inverso multiplicativo.
Em seguida, acrescentamos um pouco mais de formalismo na declaração usando a Definição 18 para
melhorar ainda mais a declaração sobre o que é um inverso multiplicativo: ‘Para cada número real
x, se x 6= 0, então existe um número real y tal que xy = 1’. Essa última declaração é suficiente para
uma tradução direta da sentença em
∀x((x 6= 0) → ∃y(xy = 1))
A declaração ‘Cada número real, exceto 0, tem um inverso multiplicativo’ foi traduzida em termos
formais em ∀x((x 6= 0) → ∃y(xy = 1)), com x, y ∈ R.
◭
O próximo caso exemplifica como traduzir uma quantificação aninhada em linguagem natural.
37
Exemplo:
Sejam as funções proposicionais C(x): ‘x tem um computador’ e A(x, y): ‘x e y são amigos’. Traduza a expressão lógica ∀x(C(x) ∨ (∃y(C(y) ∧ A(x, y))) onde o domínio das variáveis x e y consiste
em todos os alunos da escola.
A expressão lógica dada acima expressa a idéia de que, ‘para cada aluno x da escola, x tem um
computador ou existe um aluno y tal que y tem um computador e y é amigo de x’.
De uma maneira menos formal, essa declaração significa que cada aluno da escola ou tem um computador ou tem um amigo que tem um computador.
◭
6.4.2
Negação de Quantificadores Aninhados
As negações de declarações quantificadas com quantificadores aninhados podem ser feitas aplicandose sucessivamente as regras para negar declarações envolvendo um único quantificador.
Exemplo:
Expresse a negação da declaração quantificada ∀x∃y(xy = 1) tal que a negação precede a declaração.
Usaremos os resultados da Tabela 28 para negação de quantificadores para aplicar a negação da
sentença original. Pela tabela, a negação de ¬∀x∃y(xy = 1) resulta em ∃x¬∃y(xy = 1).
A sentença resultante ainda pode ser trabalhada. Podemos aplicar novamente a negação sobre a
quantificação ∃y. A negação de ∃x¬∃y(xy = 1) resulta, portanto, em ∃x∀y¬(xy = 1)
Para finalizar, podemos substituir a negação ¬(xy = 1) por (xy 6= 1). Após as sucessivas aplicações
de negação sobre cada quantificador e sobre a função proposicional, concluímos que ∀x∃y(xy = 1)
resulta em ∃x∀y(xy 6= 1).
◭
7
Regras de Inferência
Todos os fundamentos de lógica apresentados até o presente momento possuem um objetivo muito
especial em matemática discreta: a construção de provas.
Em matemática, provas são argumentos válidos que estabelecem a verdade de sentenças matemáticas. Entendemos por argumentos uma sequência de declarações que terminam com uma conclusão.
Por válido nós entendemos que a conclusão, ou sentença final do argumento, deve seguir da verdade
das sentenças precedentes do argumento (das premissas).
Diante disto, temos que um argumento é valido se e somente se é impossível que todas as premissas
sejam verdadeiras e a conclusão seja falsa.
38
Para deduzir novas sentenças a partir de sentenças pré-existentes, utilizamos regras de inferência.
Regras de inferência são ‘modelos’ para construir argumentos válidos. Elas são, de fato, as ferramentas básicas para estabelecer a verdade sobre declarações.
Regras de inferência se aplicam tanto a sentenças em lógica proposicional quanto a sentenças quantificadas, em ambos os casos com objetivo de produzir argumentos válidos. As regras de inferência
usando os quantificadores existencial e universal possuem papel fundamental na elaboração de provas em matemática e ciência da computação.
7.1
Argumentos Válidos em Lógica Proposicional
Considere a seguinte sequência de proposições
• ‘Se você tem uma senha, então voce pode efetuar login na rede’
• ‘Você tem uma senha’
Portanto,
• ‘Você pode efetuar login na rede’.
Suponha que a intenção é verificar se a conclusão ‘você pode efetuar login na rede’ é verdadeira com
base na veracidade das premissas ‘se você tem uma senha, então você pode efetuar login na rede’ e
‘você tem uma senha’. O mecanismo que nos permite responder a esta pergunta chama-se regra de
inferência.
Definição 19 (Argumento). Um argumento é uma sequência de afirmações para demonstrar a validade de uma declaração.
Um argumento em lógica proposicional é uma sequência de proposições. Todas, exceto a proposição final, são denominadas premissas, enquanto que a proposição final é denominada conclusão.
Um argumento é válido se a verdade de todas as suas premissas implicam em uma conclusão
verdadeira.
Exemplo:
‘Está chovendo ou está nevando’
‘Não está nevando’
Portanto,
‘Está chovendo’
◭
39
Pela Definição 19 temos que um argumento com premissas p1 , p2 , . . . , pn e conclusão q é válido
quando (p1 ∧ p2 ∧ · · · ∧ pn ) → q é uma tautologia.
Para analizar um argumento, substituímos as proposições (i.e., sentenças afirmativas) por variáveis
proposicionais (i.e., p, q, r, . . . ). Isso transforma um argumento em uma forma de argumento. A
validade de um argumento advém da validade da forma do argumento.
Definição 20 (Forma de Argumento). Em lógica proposicional, uma forma de argumento é uma
sequência de proposições compostas envolvendo variáveis proposicionais.
Uma forma de argumento pode ser válida ou inválida. Uma forma de argumento é válida quando,
para qualquer substituição de variáveis proposicionais, se as premissas são verdadeiras então a
conclusão é também verdadeira.
Exemplo:
Sejam os argumentos:
‘Está chovendo ou está nevando’
‘Não está nevando’
Portanto,
‘Está chovendo’
‘O aluno é aprovado em cálculo ou o aluno é reprovado em cálculo’
‘O aluno não foi reprovado em cálculo’
Portanto,
‘O aluno foi aprovado em cálculo’
Embora estes argumentos possuam ‘conteúdos’ diferentes, eles possuem a mesma ‘forma’:
p∨q
¬q
, onde ∴ é lido como ‘portanto’.
∴p
Nesta notação, as premissas são escritas em colunas, seguidas por uma barra horizontal, seguida
por uma linha que começa com o símbolo de portanto (∴), seguido pela conclusão.
◭
Exemplo:
Sejam os argumentos:
‘Se você tem uma senha, então voce pode efetuar login na rede’
‘Você tem uma senha’
Portanto,
‘Você pode efetuar login na rede’.
40
‘Se você tem carteira de motorista, então você pode dirigir um carro’
‘Você tem carteira de motorista’
Portanto,
‘Você pode dirigir um carro’.
Embora estes argumentos possuam ‘conteúdos’ diferentes, eles possuem a mesma ‘forma’:
p→q
p
∴q
◭
Para verificar se uma forma de argumento é válida, podemos usar o seguinte procedimento, descrito
no Algoritmo 1:
Algoritmo 1 Verifica a validade de uma forma de argumento
1: Identifique as premissas e a conclusão da forma de argumento
2: Construa a tabela verdade, destacando as premissas e a conclusão
3: Encontre as linhas da tabela verdade onde todas as premissas são verdadeiras (linhas críticas)
4: if em todas as linhas críticas a conclusão é verdadeira then
5:
A forma de argumento é válida
6: else
7:
A forma de argumento é inválida
8: end if
Exemplo:
Sejam as proposições p: ‘você tem uma senha’, q: ‘você pode efetuar login na rede’ e p → q ‘se você
tem uma senha, então voce pode efetuar login na rede’. Determine se a seguinte forma de argumento
p→q
p
∴q
é válida.
1. Premissas: p e p → q, conclusão: q
2. Tabela verdade desta forma de argumento
p
0
0
1
1
q
0
1
0
1
p→q
1
1
0
1
(p → q) ∧ p
0
0
0
1
((p → q) ∧ p) → q
1
1
1
1
q
0
1
0
1
3. Segundo a Definição 20 e o Algoritmo 1, o argumento é válido se ambas as premissas p e p → q
e a conclusão q são verdadeiras. Identificamos as linhas onde as premissas e conclusão são
verdadeiras.
41
p
q
0
0
1
1
0
1
0
1
p→q
1
1
0
1
(p → q) ∧ p
0
0
0
1
((p → q) ∧ p) → q
1
1
1
1
q
0
1
0
1
4. Na única linha crítica desta tabela verdade, todas as premissas são verdadeiras, e a conclusão
é também verdadeira. Isto posto, temos que a forma de argumento apresentada é válida.
Observe que, pela Definição 19, as premissas p1 , p2 , . . . , pn e a conclusão q são verdadeiras
quando (p1 ∧ p2 ∧ · · · ∧ pn ) → q é uma tautologia.
Pela tabela verdade deste exemplo, confirmamos este fato já que ((p → q) ∧ q) → q é uma
tautologia.
p
0
0
1
1
q
0
1
0
1
p→q
1
1
0
1
(p → q) ∧ p
0
0
0
1
((p → q) ∧ p) → q
1
1
1
1
q
0
1
0
1
◭
Exemplo:
Seja o argumento:
‘Se o dia está ensolarado, então vou jogar bola ou não vou fazer a lição’
‘Se eu for jogar bola, então o dia está ensolarado e vou fazer a lição’
Portanto,
‘Se o dia está ensolarado, então vou fazer a lição’.
Determine se o argumento é válido.
Traduzindo o argumento na sua forma de argumento:
p → q ∨ ¬r
q →p∧r
∴p→r
Verificando a validade do argumento, pelo Algoritmo 1:
1. Identificando as premissas: (p → q ∨ ¬r) e (q → p ∧ r).
42
2. Tabela verdade da forma de argumento
p
0
0
0
0
1
1
1
1
q
0
0
1
1
0
0
1
1
r
0
1
0
1
0
1
0
1
¬r
1
0
1
0
1
0
1
0
q ∨ ¬r
1
0
1
1
1
0
1
1
p∧r
0
0
0
0
0
1
0
1
p → q ∨ ¬r
1
1
1
1
1
0
1
1
q →p∧r
1
1
0
0
1
1
0
1
[(p → q ∨ ¬r) ∧ (q → p ∧ r)] → (p → r)
1
1
1
1
0
1
1
1
p→r
1
1
1
1
0
1
0
1
3. Identificar as linhas críticas. Destacamos em azul as linhas críticas em que as premissas e
conclusão são verdadeiras, e em vermelho as linhas em que as premissas são verdadeiras, mas
a conclusão é falsa.
4. Pelos resultados da tabela, concluímos que o argumento é inválido, pois existe pelo menos
uma atribuição de valores nas variáveis proposicionais p, q e r que leva à premissas verdadeiras
com conclusão falsa. Além disso, [(p → q ∨ ¬r) ∧ (q → p ∧ r)] → (p → r) não é uma tautologia.
◭
7.2
Regras e Inferência para Proposições Lógicas
Podemos sempre usar tabelas verdade para mostrar que uma forma de argumento é válida: fazemos
isso mostrando que se as premissas são verdadeiras, então a conclusão também deve ser verdadeira.
Porém, essa abordagem pode ser entediante, já que se uma forma de argumento envolvendo muitas
variáveis lógicas terá uma tabela verdade com uma quantidade exponencial de linhas. Isso ocorre em
função da possibilidade de cada uma das variáveis lógicas assumir o valor 0 ou 1. Para exemplificar,
seja a Figura 1 que ilustra a atribuição de valores-verdade para uma proposição composta de quatro
variáveis lógicas, nomeadas p, q, r e s.
Figura 1: Árvore de possibilidades para as variáveis p, q, r e s
1
1
1
1
0
0
0
1
0
1
01
0
0 1
p
1
0
0
1
1
01
0 1
01
q
r
0
0 1
0
s
Com apenas uma variável lógica, existem 2 combinações de valores-verdade possíveis; para uma
proposição com duas variáveis lógicas, existem 4 combinações de valores-verdade possíveis; em uma
43
proposição com quatro variáveis lógicas, existem 16 diferentes combinações de valores-verdade; para
uma proposição com dez variáveis lógicas, haverão 1024 combinações diferentes de valores verdade.
De maneira mais geral, para uma proposição composta com n variáveis lógicas, haverão 2n linhas
diferentes devido às possibilidades de atribuição de valores-verdade a cada uma das n variáveis.
Assim, não é nada prático provar que um argumento é válido usando tabelas verdade para proposições compostas por muitas variáveis.
Existe uma alternativa para mostrar a validade de uma forma de argumento, sem recorrer ao uso
de tabelas verdade, é por meio de formas de argumento mais simples denominadas de regras de
inferência. Tais regras são usadas como elementos básicos para construir formas de argumento
válidas mais complexas.
7.2.1
Modus Ponens
A tautologia [(p → q) ∧ p] → q é a base da regra de inferência denominada modus ponens (do
latim, método de afirmar). Essa tautologia leva à seguinte forma de argumento válida:
p→q
p
∴q
onde ∴ é lido como ‘portanto’. Nesta notação, as premissas são escritas em colunas, seguidas por
uma barra horizontal, seguida por uma linha que começa com o símbolo portanto (∴), seguido da
conclusão.
A tabela verdade dessa regra de inferência será apresentada a Tabela 30.
Tabela 30: Regra de inferência modus ponens e sua tabela-verdade
Forma do argumento
p→q
p
∴q
p
0
0
1
1
q
0
1
0
1
p→q
1
1
0
1
p
0
0
1
1
(p → q) ∧ p
0
0
0
1
[(p → q) ∧ p] → q
1
1
1
1
q
0
1
0
1
Em particular, modus ponens diz que ‘se uma sentença condicional e sua hipótese são ambas verdadeiras, então a conclusão também será verdadeira’.
Exemplo:
Sejam a declaração condicional ‘se nevar hoje, então iremos esquiar’, e sua hipótese ‘está nevando
hoje’ verdadeiras. Assim, pelo modus ponens, temos que a conclusão da sentença condicional ‘nós
44
iremos esquiar’ é verdadeira.
◭
Exemplo:
√ 2
√
2 >
Seja o argumento: ‘se 2 > 23 , então
3 2
2 .
Sabemos que
√
2 > 3/2. Logo,
√ 2
2 > (3/2)2 ’.
Determine se o argumento é válido e se a conclusão é verdadeira.
Sejam as proposições p:
√
2>
3
2
e q:
√ 2
2 >
3 2
2
Na forma de argumento deste exemplo, as premissas são representadas pelas proposições p e p → q
enquanto que conclusão é q. Essa forma é a forma conhecida como modus ponens, que é sabido ser
válida. O argumento é, portanto, válido.
No entanto, uma das premissas do argumento é falsa. Isto posto, temos que a conclusão do argumento será falsa, embora a ‘forma’ do argumento seja válida.
◭
7.2.2
Modus Tollens
A regra de inferência conhecida como modus tollens (do latim, modo de negar) tem a seguinte
forma de argumento válida
p→q
¬q
∴ ¬p
A tabela-verdade para a regra de inferência modus tollens é apresentada na Tabela 31.
Tabela 31: Regra de inferência modus tollens e sua tabela-verdade
Forma do argumento
p→q
¬q
∴ ¬p
p
0
0
1
1
q
0
1
0
1
p→q
1
1
0
1
¬q
1
0
1
0
Exemplo:
‘Se Zeus é humano, então Zeus é mortal’
‘Zeus não é mortal’
Portanto
‘Zeus não é humano’
(p → q) ∧ ¬q
1
0
0
0
[(p → q) ∧ ¬q] → ¬p
1
1
1
1
¬p
1
1
0
0
◭
45
7.2.3
Disjunção Aditiva
A regra de inferência denominada disjunção aditiva consiste em argumentos organizados da seguinte forma de argumento válida:
p
∴ p∨q
A tabela-verdade dessa regra de inferência é apresentada na Tabela 32.
Tabela 32: Regra de inferência disjunção aditiva e sua tabela-verdade
Forma do argumento
p
0
0
1
1
p
∴p∨q
q
0
1
0
1
p
0
0
1
1
p → (p ∨ q)
1
1
1
1
p∨q
0
1
1
1
Neste tipo de construção, se p é verdadeiro, então p ∨ q é verdadeiro para qualquer proposição q.
Esta regra de inferência é útil quando se deseja fazer generalizações.
Exemplo:
‘Está abaixo de zero agora’
Portanto
‘Está abaixo de zero agora ou está chovendo agora’
7.2.4
◭
Simplificação Conjuntiva
A regra de inferência denominada de simplificação conjuntiva é aquela que possui a forma
p∧q
∴p
A Tabela 33 mostra os valores-verdade para a simplificação conjuntiva.
Tabela 33: Regra de inferência simplificação conjuntiva e sua tabela-verdade
Forma do argumento
p
0
0
1
1
p∧q
∴p
46
q
0
1
0
1
p∧q
0
0
0
1
(p ∧ q) → p
1
1
1
1
p
0
0
1
1
Esta regra de inferência é usada para fazer particularizações: ‘se p e q são verdadeiros, então p, em
particular, é verdadeiro’.
Exemplo:
‘Está abaixo de zero e chovendo agora’
Portanto
‘Está abaixo de zero’.
7.2.5
◭
Silogismo Disjuntivo
A regra de inferência denominada de silogismo disjuntivo é aquela que têm a forma válida
p∨q
¬q
∴p
ou
p∨q
¬p
∴q
A Tabela 34 e a Tabela 35 mostram os valores-verdade para a regra de inferência silogismo disjuntivo.
Tabela 34: Regra de inferência silogismo disjuntivo e sua tabela-verdade
Forma do argumento
p∨q
¬q
∴p
p
0
0
1
1
q
0
1
0
1
¬q
1
0
1
0
p∨q
0
1
1
1
(p ∨ q) ∧ ¬q
0
0
1
0
[(p ∨ q) ∧ ¬q] → p
1
1
1
1
p
0
0
1
1
Tabela 35: Regra de inferência silogismo disjuntivo e sua tabela-verdade
Forma do argumento
p∨q
¬q
∴p
p
0
0
1
1
q
0
1
0
1
¬p
1
1
0
0
p∨q
0
1
1
1
(p ∨ q) ∧ ¬p
0
1
0
0
Exemplo:
‘Está chovendo ou está nevando’
‘Não está nevando’
Portanto
‘Está chovendo’
[(p ∨ q) ∧ ¬p] → q
1
1
1
1
q
0
1
0
1
◭
47
Estas forma de argumento são empregadas quando se têm uma situação em que existem somente
duas possibilidades e uma delas pode ser excluída, o que faz com que a outra prevaleça.
7.2.6
Silogismo Hipotético
Esta regra de inferência, denominada de silogismo hipotético, possui a forma
p→q
q→r
∴p→r
Os valores-verdade desta regra de inferência é apresentado na Tabela 36.
Tabela 36: Regra de inferência silogismo hipotético e sua tabela-verdade
Forma do argumento
p→q
q→r
∴p→r
p
0
0
0
0
1
1
1
1
q
0
0
1
1
0
0
1
1
r
0
1
0
1
0
1
0
1
p→q
1
1
1
1
0
0
1
1
q→r
1
1
0
1
0
1
0
1
[(p → q) ∧ (q → r)] → (p → r)
1
1
1
1
1
1
1
1
p→r
1
1
1
1
0
1
0
1
É usado para argumentos que encadeiam sentenças do tipo se-então, onde o primeiro implica o
último.
7.2.7
Conjunção
A regra de inferência denominada conjunção consiste na apresentação de argumentos na seguinte
forma de argumento
p
q
∴ p∧q
Para essa regra de inferência apresentaremos a Tabela 37, que mostra os valores verdade dessa regra.
Tabela 37: Regra de inferência conjunção e sua tabela-verdade
Forma do argumento
p
q
∴p∧q
p
0
0
1
1
q
0
1
0
1
[(p) ∧ (q)] → p ∧ q
1
1
1
1
48
p∧q
0
0
0
1
7.2.8
Resolução
A regra de inferência resolução consiste na forma de argumento apresentada da seguinte maneira
p∨q
¬p ∨ r
∴q∨r
A tabela-verdade para essa regra de inferência tem seus resultados apresentados na Tabela 38.
Tabela 38: Regra de inferência resolução e sua tabela-verdade
Forma do argumento
p∨q
¬p ∨ r
∴q∨r
7.2.9
p
0
0
0
0
1
1
1
1
q
0
0
1
1
0
0
1
1
r
0
1
0
1
0
1
0
1
¬p
1
1
1
1
0
0
0
0
p∨q
0
0
1
1
1
1
1
1
¬p ∨ r
1
1
1
1
0
1
0
1
[(p ∨ q) ∧ (¬p ∨ r)] → (q ∨ r)
1
1
1
1
1
1
1
1
q∨r
0
1
1
1
0
1
1
1
Resumo das Regras de Inferência
A Tabela 39 resume as regras de inferência mais importantes para lógica proposicional.
Tabela 39: Regras de Inferência
Regra de Inferência
Tautologia
Nomenclatura
p→q
p
∴q
[(p) ∧ (p → q)] → q
Modus Ponens
[(¬q) ∧ (p → q)] → ¬p
Modus Tollens
[(p → q) ∧ (q → r)] → (p → r)
Silogismo Hipotético
[(p ∨ q) ∧ (¬q)] → p
Silogismo Disjuntivo
p→q
¬q
∴ ¬p
p→q
q→r
∴p→r
p∨q
¬q
∴p
49
p
∴p∨q
p → (p ∨ q)
Disjunção Aditiva
p∧q
∴q
(p ∧ q) → p
Simplificação Conjuntiva
[(p) ∧ (q)] → (p ∧ q)
Conjunção
[(p ∨ q) ∧ (¬p ∨ r)] → (q ∨ r)
Resolução
p
q
∴p∧q
p∨q
¬p ∨ r
∴q∨r
50
7.3
Construindo Argumentos por meio de Regras de Inferência
Em muitas situações nós nos deparamos com situações onde deve-se avaliar a validade de um argumento que possui muitas premissas. Para estes casos, o uso de regras de inferência devem ser
aplicadas de forma a provar este resultado.
Mais adiante veremos outra aplicação importante em ciência da computação e, em especial, em
matemática discreta, que consiste na construção de provas.
Exemplo:
Mostre que as hipóteses ‘se você me enviar um email, então eu terminarei de escrever o programa’,
‘se você não me enviar um email, então eu irei dormir mais cedo’, ‘se eu dormir mais cedo hoje,
levam à conclusão ‘se eu não terminar de escrever o programa, eu acordarei revigorado”.
Primeiro, transformaremos os argumentos acima em formas de argumento, atribuíndo uma variável
proposicional à cada um dos argumentos. Isso resulta em:
• p: Você me enviará um email.
• q: Eu terminarei de escrever o programa.
• r: Eu irei dormir mais cedo.
• s: Eu acordarei revigorado.
Tradução dos fatos para premissas:
(a): p → q
(b): ¬p → r
(c): r → s
Tradução da conclusão:
(d): ¬q → s
Deduções de (a), (b), (c) para chegar a conclusão (d):
Identificação
(a)
(b)
(c)
(a)
(d)
(d)
(b)
(e)
(e)
(c)
(f)
Expressão
p→q
¬p → r
r→s
p→q
∴ ¬q → ¬p
¬q → ¬p
¬p → r
∴ ¬q → r
¬q → r
r→s
∴ ¬q → s
Dedução
Premissa
Premissa
Premissa
Contrapositiva de (a)
Silogismo hipotético de (b) e (e)
Silogismo hipotético de (e) e (c) levam à (f)
51
De acordo com as deduções lógicas aplicadas sobre as premissas, conclui-se que se eu não terminar de escrever o programa, então acordarei revigorado.
◭
Exemplo:
[Loureiro, A. A. F.] Você está saindo para a escola de manhã e percebe que não está usando os
óculos. Ao tentar descobrir onde estão os óculos, você começa a pensar sobre os seguintes fatos, que
são verdadeiros:
• Se meus óculos estão na mesa da cozinha, então eu os ví pela manhã
• Eu estava lendo o jornal na sala de estar ou eu estava lendo o jornal na cozinha
• Se eu estava lendo o jornal na sala de estar, então meus óculos estão na mesa do café
• Eu não vi meus óculos no café da manhã
• Se eu estava lendo um livro na cama, então meus óculos estão no criado mudo
• Se eu estava lendo o jornal na cozinha, então meus óculos estão na mesa da cozinha
Argumentos:
• p: Os meus óculos estão na mesa da cozinha
• q: Eu ví os meus óculos pela manhã
• r: Eu estava lendo jornal na sala de estar
• s: Eu estava lendo jornal na cozinha
• t: Meus óculos estão na mesa do café
• u: Eu estava lendo um livro na cama
• v: Meus óculos estão no criado mudo
Tradução dos fatos em premissas
(a): p → q
(b): r ∨ s
(c): r → t
(d): ¬q
(e): u → v
(f): s → p
Deduções de (a), (b), (c), (d), (e) e (f) para levar à uma conclusão desconhecida
Idetificação
Expressão
52
Dedução
(a)
(b)
(c)
(d)
(e)
(f)
(a)
(d)
(g)
(f)
(g)
(h)
(b)
(h)
(i)
(c)
(i)
(j)
p→q
r∨s
r→t
¬q
u→v
s→p
p→q
¬q
∴ ¬p
s→p
¬p
∴ ¬s
r∨s
¬s
∴r
r→t
r
∴t
Premissa
Premissa
Premissa
Premissa
Premissa
Premissa
Modus Tollens
Modus Tollens
Silogismo Disjuntivo
Modus Ponens
Pelo resultado das deduções aplicadas sobre as formas de argumento descritas neste exemplo,
concluí-se que os óculos foram esquecidos na mesa do café.
◭
7.4
Regras de Inferência para Quantificadores
Na seção anterior, apresentamos o conceito de regras de inferência para proposições lógicas. Na presente seção apresentaremos as regras de inferência mais importantes para declarações envolvendo
quantificadores. São elas: instanciação universal, generalização universal, instanciação existencial e
generalização existencial.
A instanciação universal consiste na regra de inferência que declara que, dado a premissa ∀xP (x),
∀xP (x)
). Usamos esta regra
P (c) é verdadeiro para um membro particular do domínio (isto é,
∴ P (c)
de inferência para concluir a partir da declaração ‘Todas as cidades de MG são bacanas’ que ‘Formiga é uma cidade bacana’, visto que Formiga é um elemento do domínio de todas as cidades de MG.
Já a generalização universal consiste na regra de inferência que declara que ∀xP (x) é verdadeiro
P (c)
dado a premissa que P (c) é verdadeiro para todo elemento c no domínio (isto é,
para
∴ ∀xP (x)
um elemento c arbitrário do domínio).
O elemento c escolhido deve ser arbitrário, e não específico, a partir do domínio. Em outras palavras, quando nós afirmamos que a escolha do elemento c é arbitrária, nós estamos afirmando que
não temos controle sobre qual elemento do domínio será escolhido e, desta forma, não podemos
53
fazer nenhuma consideração sobre c que não esteja relacionada ao conjunto domínio.
A generalização universal é usada implicitamente na demonstração de teorema e provas sobre proposições matemáticas, sendo raramente explícita. Deve-se, no entanto, ter cuidado para não construir
raciocínios incorretos quando usando generalização universal, tomando como verdade considerações
que não podem ser garantidas para um elemento c arbitrário do domínio.
Outra regra de inferência importante em declarações quantificadas consiste na regra denominada
instanciação existencial. Ela nos permite concluir que existe um elemento c do domínio para o
qual P (c) é verdadeira desde que ∃xP (x) seja uma declaração verdadeira.
Neste caso, não podemos selecionar um elemento c arbitrariamente; o elemento c escolhido deve ser
aquele que torna P (c) verdadeira. Geralmente não se sabe qual dos elementos do domínio corresponde ao elemento c, apenas sabemos que ele existe. Uma vez que ele existe, damos à ele o nome
∃xP (x)
para algum
de c e continuamos a dedução. Essa regra de inferência é formalizada por
∴ P (c)
elemento c.
Por fim, existe a generalização existencial. Por meio dela nós concluímos que ∃xP (x) se houver
um elemento c do domínio para o qual sabemos que P (c) é verdadeiro. Em outras palavras, se sabemos que existe um elemento c para o qual P (c) é verdadeiro, então ∃xP (x) também é verdadeiro.
P (c)
Em notação de inferência,
para algum elemento c. A Tabela 42 resume as regras de
∴ ∀xP (c)
inferência para declarações quantificadas.
Tabela 42: Inferência sobre Declarações Quantificadas
Regra de Inferência
Nomenclatura
∀xP (x)
∴ P (c)
P (c)
∴ ∀xP (x)
∃xP (x)
∴ P (c)
P (c)
∴ ∃xP (c)
Instanciação Universal
para um c arbitrário
para algum c
Generalização Universal
Instanciação Existencial
para algum c
Generalização Existencial
54
Exemplo:
Mostre que as premissas ‘Todos da turma de matemática discreta estão matriculados no curso de
Ciência da Computação’ e ‘Marla é uma aluna da turma de matemática discreta’ implica na conclusão ‘Marla está matriculada no curso de Ciência da Computação’.
Vamos denotar D(x) a propriedade ‘x está na turma de matemática discreta’ e C(x) como a propriedade ‘x está matriculado em um curso de Ciência da Computação’. Então as premissas são
∀x(D(x) → C(x)) e D(M arla), e a conclusão é C(M arla). Vamos mostrar que a dedução das
premissas leva à conclusão esperada usando as regras de inferência comentadas nesta seção do documento.
Idetificação
(a)
(b)
(a)
(c)
(c)
(b)
(d)
Expressão
∀x(D(x) → C(x))
D(M arla)
∀x(D(x) → C(x))
∴ D(M arla) → C(M arla)
D(M arla) → C(M arla)
D(M arla)
∴ C(M arla)
Dedução
Premissa
Premissa
Premissa
Instanciação Universal de (a)
Premissa
Modus Ponens de (c) e (b)
Segundo a dedução apresentada sobre ∀x(D(x) → C(x)) e D(M arla), chegamos à conclusão que a
afirmação C(M arla) é verdadeira.
◭
Exemplo:
Mostre que as premissas ‘Um estudante da turma não leu o livro’, e ‘Todo mundo da classe passou
no exame’ implica em ‘Alguem que passou no exame não leu o livro’.
Sejam T (x) ‘x é um estudante da turma’, L(x) ‘x leu o livro’ e P (x) ‘x passou no exame’. Logo,
as premissas são ∃x(T (x) ∧ ¬L(x)) e ∀x(T (x) → P (x)). A conclusão obtida mediante dedução a
partir das premissas é dada a seguir:
Idetificação
(a)
(b)
(a)
(c)
(c)
(d)
(b)
(e)
(e)
(d)
(f)
Expressão
∃x(T (x) ∧ ¬L(x))
∀x(T (x) → P (x))
∃x(T (x) ∧ ¬L(x))
∴ T (a) ∧ ¬L(a)
T (a) ∧ ¬L(a)
∴ T (a)
∀x(T (x) → P (x))
∴ T (a) → P (a)
T (a) → P (a)
T (a)
∴ P (a)
55
Dedução
Premissa
Premissa
Premissa
Instanciação Existencial de (a)
Simplificação Conjuntiva de (c)
Premissa
Instanciação Existencial de (b)
Modus Ponens de (e) e (d)
(c)
(g)
(f)
(g)
(h)
(h)
(i)
∴ T (a) ∧ ¬L(a)
∴ ¬L(a)
P (a)
¬L(a)
∴ P (a) ∧ ¬L(a)
P (a) ∧ ¬L(a)
∴ ∃x(P (x) ∧ ¬L(x))
Simplificação conjuntiva de (c)
Conjunção de (f) e (g)
Generalização Existencial de (h)
Logo, da dedução acima concluímos que ‘alguém que passou no exame não leu o livro’.
7.5
◭
Regras de Inferência para Proposições e Declarações Quantificadas
Nas deduções apresentadas nos exemplos da seção de regras de inferência para declarações quantificadas observamos o uso das regras de inferência de instanciação e generalização juntamente com
regras de inferência que operam sobre proposições.
Em especial, a combinação de regra de generalização universal de declarações quantificadas e modus
ponens de proposições são usadas frequentemente em deduções. Devido a este fato, esta combinação
possui a denominação especial de modus ponens universal . A regra de inferência diz que se
∀x(P (x) → Q(x)) é verdadeiro, e se P (a) é verdadeiro para algum elemento particular a do domínio,
então Q(a) também deve ser verdadeiro:
∀x(P (x) → Q(x))
P (a)
, onde a é um elemento particular do domínio
∴ Q(a)
A forma modus ponens universal é frequentemente usada em argumentos matemáticos.
Exemplo:
Assuma que ‘Para todo inteiro positivo n, se n é maior do que 4, (n2 < 2n )’ é uma afirmação
verdadeira. Mostre que 1002 < 2100 .
Sejam as propriedades P (x) : n > 4 e Q(x) : n2 < 2n . As premissas da afirmação acima podem ser
formalizadas na seguinte sentença ∀x ∈ Z(P (x) → Q(x)). Assuma que tal sentença seja verdadeira.
Idetificação
(a)
(b)
(a)
(b)
(c)
Expressão
∀x ∈ Z(P (x) → Q(x))
P (100)
∀x ∈ Z(P (x) → Q(x))
P (100)
∴ Q(100)
Dedução
Premissa
Premissa
Modus Ponens Universal de (a) e (b)
Logo, pela regra de inferência modus ponens universal temos que Q(100) é verdadeiro.
56
◭
Da mesma forma, pode-se combinar uma generalização universal e a regra modus tollens para gerar
a regra de inferência modus tollens universal para combinações de declarações quantificadas e
proposições. Essa regra de inferência tem a forma
∀x(P (x) → Q(x))
¬Q(a)
, onde a é um elemento particular do domínio
∴ ¬P (a)
57
8
Exercícios de Fixação
Exercício 1. Escreva a tabela verdade para todos os conectivos lógicos apresentados nesta nota de
aula. Use os resultados encontrados como apoio para resolver e responder os exercícios da lista.
Exercício 2. Quais destas sentenças são proposições? Dê os valores verdade para as sentenças que
forem proposições.
(a) Boston é a capital de Massachusetts
(b) Miami é a capital da Florida
(c) 2 + 3 = 5
(d) x + 2 = 11
(e) Responda esta questão.
(f ) A lua é feita de queijo.
(g) 2n ≥ 100.
Exercício 3. Dê a negação das seguintes proposições:
(a) Jeniffer e Teja são amigos.
(b) Existem 13 itens em uma dúzia de padeiro.
(c) 121 é um quadrado perfeito.
(d) Steve tem mais de 100 GB livres em seu notebook.
(e) Zack bloqueia emails e textos de Jeniffer.
Exercício 4. Sejam p, q e r as proposições:
p: ‘Você fica gripado’
q: ‘Você perde a prova final’
r: ‘Você conclui o curso’
Expresse cada uma das proposições em linguagem natural.
(a) p → q
(b) q → ¬r
(c) (p → ¬r) ∨ (q → ¬r)
(d) (p ∧ q) ∨ (¬q ∧ r)
(e) ¬q ↔ r
(f ) p ∨ q ∨ r
Exercício 5. Determine se cada uma das declarações condicionais é verdadeira ou falsa.
(a) Se 1 + 1 = 2, então 2 + 2 = 5
(b) Se 1 + 1 = 3, então 2 + 2 = 4
(c) Se 1 + 1 = 3, então 2 + 2 = 5
(d) Se macacos podem voar, então 1 + 1 = 3
(e) Se 1 + 1 = 3, então unicórnios existem
(f ) Se 2 + 2 = 4, então 1 + 2 = 3
58
Exercício 6. Quantas linhas aparecem na tabela verdade das seguintes proposições?
(a) (q → ¬p) ∨ (¬p → ¬q)
(b) (p ∨ ¬t) ∧ (p ∨ ¬s)
(c) (p → r) ∨ (¬s → ¬t) ∨ (¬u → v)
(d) p1 ∧ p2 ∧ p3 ∧ · · · ∧ pn−1 ∧ pn
Exercício 7. Construa uma tabela verdade para cada uma das proposições compostas:
(a) (p → q) ↔ (¬q → ¬p)
(b) (p ↔ q) ⊕ (¬p ↔ ¬q)
(c) [(p → q) → r] → s
(d) (p → q) ∨ (¬p → r)
(e) ¬p → (q → r)
Exercício 8. Circuitos combinacionais também podem ter sua saída representada por meio de proposições compostas. Pesquise sobre os símbolos gráficos que representam as portas lógicas AND,
OR, e NOT e dê uma expressão que represente a saída dos circuitos combinatórios a seguir.
Figura 2: Circuitos Exercício 8
(a)
(b)
(c)
(d)
Exercício 9. Construa circuitos combinacionais cuja saída seja dada pela seguinte expressão:
(a) (p ∧ ¬r) ∨ (¬q ∧ r)
(b) [(¬p ∨ ¬r) ∧ ¬q] ∨ [¬p ∧ (q ∨ r)]
Exercício 10. Use tabelas verdade para verificar as equivalências a seguir. Nos casos em que se
tratarem de equivalências famosas, identifique-as.
(a) (p ∨ q) ≡ (q ∨ p)
(b) ¬(p ∧ q) ≡ (¬p ∨ ¬q)
(c) p ∧ (q ∧ r) ≡ (p ∧ q) ∧ r
(d) (p ∨ q) ∨ r ≡ p ∨ (q ∨ r)
(e) [(p ∧ ¬q) → 0] ≡ (p → q)
59
Exercício 11. Diga se as proposições compostas dadas a seguir são tautologias, contradições ou
contingências.
(a) [(p → q) ∧ (q → r)] → (p → r)
(b) (p → q) ↔ (¬p ∨ q)
(c) p ∧ q → ¬p
(d) [p → (q → s)] ↔ [(p ∧ q) → r]
(e) (¬q → ¬p) → (p → q)
(f ) ¬(p ∧ ¬q) → r
Exercício 12. Mostre que o seguinte argumento é válido: ‘Se usarmos a linguagem assembly, então
o programa será executado mais rapidamente. Se usarmos a linguagem assembly, o programa terá
mais linhas de código. Portanto, se usarmos a linguagem assembly, então o programa será executado
mais rápido e terá mais linhas de código’.
Exercício 13. Seja P (x) a função proposicional que declara que x = x2 . Se o domínio consiste no
conjunto dos números inteiros, quais são os valores verdade de
(a) P (0)?
(b) P (1)?
(c) P (2)?
(d) P (−1)?
(e) ∃xP (x)?
(f ) ∀xP (x)?
Exercício 14. Traduza as seguintes sentenças em expressões lógicas envolvendo quantificadores, dê
a negação da sentença correspondente e traduza-a para linguagem natural.
(a) Alguns motoristas não obedecem o limite de velocidade.
(b) Todos os filmes indianos são sérios.
(c) Ninguém pode guardar um segredo.
(d) Existe alguém na classe que não tem uma boa atitude.
(e) Todo pássaro pode voar.
Exercício 15. Traduza as declarações em linguagem natural, onde C(x) é ‘x é um coelho’, e S(x)
é ‘x salta’, onde o domínio consiste no conjunto de todos os animais.
(a) ∀x(C(x) → S(x))
(b) ∀x(C(x) ∧ S(x))
(c) ∃x(C(x) → S(x))
(d) ∃x(C(x) ∧ S(x))
Exercício 16. Determine o valor verdade de cada uma das declarações.
(a) ∃x ∈ R(x2 = 2)
60
(b) ∃x ∈ Z(x2 = 2)
(c) ∀x ∈ R(x2 + 2 ≥ 1)
(d) ∃x ∈ R(x2 = −1)
(e) ∃x ∈ C(x2 = −1)
(f ) ∀x ∈ R(x2 6= x)
Exercício 17. Determinar o valor lógico das sentenças quantificadas, considerando o conjunto domínio D informado.
(a) ∀x(|x| = x), com D = R
(b) ∃x(x + 3 = 10), com D = {1, 2, 3, 4, 5}
(c) ∃x(4x − 3 = 1 − 2x), com D = R
(d) ¬∀x(x2 + x = 6), com D = {1, 2, 3}
Exercício 18. Reescrever cada uma das declarações abaixo, negando-as. Determine o valor verdade
da negação.
(a) ∃x ∈ R(x2 = 2)
(b) ∃x ∈ Z(x2 = 2)
(c) ∀x ∈ R(x2 + 2 ≥ 1)
(d) ∃x ∈ R(x2 = −1)
(e) ∃x ∈ C(x2 = −1)
(f ) ∀x ∈ R(x2 6= x)
Exercício 19. Negar as sentenças.
(a) Todos os homens são maus.
(b) Existe pescador que não é mentiroso.
(c) ∃x ∈ R(x2 + 5 = 2x)
(d) Existe y tal que, para todo x, x + y ≥ 7
(e) Para todo x, existe y tal que x + y < 3
Exercício 20. Para cada uma das afirmações dadas a seguir, assinale a declaração correta que
representa a negação da declaração original:
(a) Algumas pessoas gostam de Matemática.
✷ Algumas pessoas não gostam de Matemática.
✷ Todo mundo não gosta de Matemática.
✷ Todo mundo gosta de matemática.
(b) Todo mundo gosta de sorvete.
✷ Ninguém gosta de sorvete.
✷ Todo mundo não gosta de sorvete.
✷ Alguém não gosta de sorvete.
61
(c) Todo mundo é alto e magro.
✷ Alguém é baixo e gordo.
✷ Ninguém é alto e magro.
✷ Alguém é baixo ou gordo.
(d) Alguns retratos são velhos ou apagados.
✷ Nenhum retrato está velho ou apagado.
✷ Alguns retratos não estão velhos ou apagados.
✷ Todos os retratos não estão velhos e não estão apagados.
Exercício 21. Qual o valor verdade de cada uma das expressões a seguir, onde o domínio é o
conjunto Z e e as funções proposicionais O(x), L(x) e G(x) expressam O(x): ‘x é ímpar’, L(x):
‘x < 10’ e G(x): ‘x > 9’.
(a) ∃xO(x)
(b) ∃x(L(x) ∧ G(x))
(c) ∀x(L(x) → O(x))
(d) ∀x(L(x) ∨ G(x))
Exercício 22. Use proposições, predicados e quantificadores para mais de uma variável para expressar as declarações abaixo.
(a) A soma dos quadrados de dois inteiros é maior ou igual ao quadrado da soma.
(b) O valor absoluto do produto de dois inteiros é o produto de seus valores absolutos.
(c) Há um estudante na classe que fala Esperanto.
(d) A média de dois inteiros positivos é positiva.
(e) O produto de dois inteiros negativos é negativo.
Exercício 23. Qual o valor verdade das expressões a seguir, onde x, y ∈ Z?
(a) ∀x∃y(x + y = x)
(b) ∀x∃y(x + y = 0)
(c) ∃y∀x(x + y = x)
(d) ∃y∀x(x + y = 0)
(e) ∀x∀y((x < y) ∨ (y < x))
(f ) ∃x∃y(x2 = y)
(g) ∀x(x2 > 0)
(h) ∃x∀y(y 6= 0 → xy = 1)
(i) ∀x(x 6= 0 → ∃y(xy = 1))
Exercício 24. Traduza as seguintes expressões lógicas em linguagem natural. Assuma x, y, z ∈ R.
(a) ∀x∃y(x < y)
(b) ∀x∀y∃z(xy = z)
(c) ∀x∀y∃z(x = y + z)
62
(d) ∀x∀y((x ≥ 0) ∧ (y < 0) → (x − y > 0))
(e) ∃x((x2 = 1) → (x 6= 0))
(f ) ∃x((x2 = 1) ∧ (x < 0))
Exercício 25. Dê a negação das seguintes sentenças quantificadas:
(a) ∀x∀y((x ≥ 0) ∧ (y < 0) → (x − y > 0))
(b) ∀x∃y(x < y)
(c) ∃y∀x(x + y = x)
(d) ∃x∃y(x + y 6= y + x)
(e) ∀x∀y∃z(xy = z)
(f ) ∀x∀y∃z(z = (x + y)/2)
Exercício 26. Determine o valor verdade da declaração ∃x∀y(x ≤ y 2 ) quando o conjunto domínio
das variáveis consiste no conjunto:
(a) R
(b) R+
(c) Z
(d) R∗
(e) {1, 2, 3, 4, 5}
Importante: os próximos exercícios são referentes à regras de inferência, e podem necessitar do
uso das equivalências lógicas apresentadas neste documento. Caso alguma equivalência lógica sobre
proposições condicionais seja necessária, pesquisar e completar o exercício.
Exercício 27. Verifique se os argumentos apresentados a seguir são válidos:
(a) ‘Se a taxa para importação diminuir, o comércio interno irá aumentará. Ou a taxa de desconto
diminuirá ou o comércio interno não irá aumentar.’
(b) ‘A colheita é boa, mas não há água suficiente. Se tivéssemos bastante água ou não tivesse
bastante sol, então haveria água suficiente. Portanto, a colheita é boa e há bastante sol’.
(c) ‘Se José pegou as jóias, ou a sra. Krasov mentiu, então ocorreu um crime. O sr. Krasov não
estava na cidade. Se ocorreu um crime, o sr. Krasov estava na cidade. Logo, José não pegou as
joias’.
(d) ‘Se o produto for confiável, a parcela de mercado irá aumentar. Ou o produto é confiável, ou os
custos irão subir. A parcela de mercado não irá aumentar. Portanto, os custos irão subir.’
Exercício 28. Identifique as regras de inferência usadas nos argumentos abaixo.
(a) Se estiver chuvoso, a piscina estará fechada. Está chuvoso. Logo, a piscina está fechada.
(b) Se eu trabalhar a noite toda neste dever de casa, eu responderei todos os exercícios. Se eu
responder todos os exercícios, eu irei entender todo o material. Assim, se eu trabalhar a noite toda
neste dever de casa, então eu entenderei o material.
(c) Steve trabalhará em uma companhia de computadores neste verão. Logo, Steve trabalhará em
uma companhia de computadores ou estará na praia durante o verão.
63
Exercício 29. Crie argumentos em linguagem natural que sigam o formato das regras de inferência
dadas a seguir:
p→q
q→r
(a)
∴p→r
p∧q
(b)
∴p
p∨q
¬p ∨ r
(c)
∴ q∨r
p∨q
¬q
(d)
∴p
¬q
p→q
(e)
∴ ¬p
Exercício 30. Use inferência para deduzir a conclusão a partir das hipóteses abaixo:
(a) Hipóteses: ‘Randy trabalha duro, então ele é chato. Se Randy é chato, então ele não irá conseguir um trabalho’. Conclusão: ‘Randy não irá conseguir o trabalho’.
(b) Hipóteses: ‘Se não chover e não houver neblina, então a corrida de barcos será mantida e a
demonstração do salva-vidas ocorrerá. Se a corrida de barcos for mantida, então o troféu será entregue. O troféu não foi entregue’. Conclusão: ‘Choveu’.
Exercício 31. Usando as hipóteses apresentadas a seguir, deduza a conclusão.
(a) ‘Eu sou esperto ou sortudo. Eu não sou sortudo. Se eu sou sortudo, então eu irei ganhar a
loteria’.
(b) ‘Se eu comer comida apimentada, então eu terei pesadelos. Eu tenho pesadelos se trovejar
enquanto eu durmo. Eu não tenho pesadelos’.
(c) ‘Se eu tirar o dia de folga, ou chove ou neva. Eu tiro terça-feira ou quinta-feira de folga. Estava
ensolarado na terça-feira. Não nevou na quinta-feira.’.
Exercício 32. Aplique regras de inferência sobre as sentenças abaixo para mostrar que a verdade
sobre as premissas levam à conclusão.
(a) ‘Cada um dos 93 estudantes desta classe possuem um computador pessoal. Todo mundo que
possui um computador pessoal pode usar um editor de textos. Assim, Zeke, um estudante desta
classe, pode usar um editor de texto’.
(b) ‘Todos de New Jersey vivem à 30 km do oceano. Alguém em New Jersey nunca viu o oceano.
Logo, alguem que vive a 30 km do oceano nunca viu o oceano’.
(c) ‘Linda, uma estudante deste curso, tem um conversível vermelho. Todo mundo que possui um
conversível vermelho tomou pelo menos uma multa por velocidade. Portanto, alguém que estuda
neste curso tomou uma multa por velocidade’.
64
Exercício 33. Derive u das seguintes premissas:
p → (q ∧ r)
(q ∧ r) → s
s → (t ∨ (¬t → u))
p
¬t
Exercício 34. Derive (r ∧ s) das seguintes premissas:
¬¬p
q → (r ∧ s)
t → ¬¬q
t ∨ ¬p
Exercício 35. Derive (p ∨ q) ∧ (p ∧ r) das seguintes premissas:
(p ∨ q) → r
r∧p
Exercício 36. Aplique regras de inferência sobre as sentenças abaixo para mostrar que a verdade
sobre as premissas levam à conclusão.
(a) Se Stefan está doente, Mathias não vai à escola. Se Mathias está doente, Stefan não vai à escola.
Stefan e Mathias vão à escola. Logo, nem Stefan nem Mathias estão doentes.
(b) Se a Lua gira em torno da Terra e a Terra gira em torno do sol, então Copérnico tinha razão.
Se Copérnico tinha razão, então Ptolomeu não tinha razão. A Terra gira em torno do sol. Logo, se
a Lua gira em torno da Terra, Ptomoleu não tinha razão.
(c) Se a Lua gira em torno da Terra, então a Terra gira em torno do Sol. Se a Terra gira em torno
do sol, então, se a Lua gira em torno da Terra, ou Ptomoleu ou Copérnico tinham razão. Copérnico
tinha razão se Ptolomeu não tinha razão. Nem Ptolomeu nem Copérnico tinham razão. Logo, a
Lua não gira em torno da Terra.
Exercício 37. Traduza os argumentos na forma de argumento correspondente, e determine sua
validade. Use a notação sugerida para traduzir as sentenças.
(a) Todo papagaio é vermelho. Currupaco é um papagaio. Logo, currupaco é vermelho. Notação: c:
Currupaco, P : x é um papagaio, R: x é vermelho.
(b) Nenhuma arara é vermelha. Todos os papagaios são vermelhos. Logo, nenhuma arara é um
papagaio. Notação: A: x é uma arara.
(c) Todo papagaio é vermelho ou verde. Currupaco não é verde. Logo, se Currupaco é um papagaio,
então ele é vermelho. Notação: G: x é verde.
(d) Todos amam todos. Logo, Romeu ama Julieta e Julieta ama Romeu. Notação: r: Romeu, j:
Julieta, L: x ama y.
(e) Todos os papagaios amam Julieta. Quem ama Julieta detesta Romeu. Quem detesta Romeu tem
bom gosto. Logo, todos os papagaios tem bom gosto. Notação: D: x detesta y, B: x tem bom gosto.
65
Exercício 38. Traduza os argumentos na forma de argumento correspondente, e determine sua
validade. Use a notação sugerida para traduzir as sentenças.
(a) Todo papagaio é vermelho. Existem papagaios. Logo, existem coisas vermelhas. Notação: P : x
é papagaio, R: x é vermelho.
(b) Nenhum papagaio é cor-de-laranja. Algumas aves são papagaio. Logo, algumas aves não são
cor-de-laranja. Notação: B : x é uma ave, L: x é laranja.
(c) Qualquer um que seja mais perigoso que Natasha é mais perigoso que Boris. Há espiões mais
perigosos que Natasha. Logo, há espiões mais perigosos que Boris. Notação: b: Boris, n, Natasha,
E : x é espião, D: x é mais perigoso que y.
(d) As pessoas românticas são inspiradas pela Lua. Quem é inspirado pela Lua não gosta de rosas.
Mas todos gostam ou de rosa ou de flores-do-campo. Logo, pessoas românticas gostam de flores-docampo. Notação: P : x é uma pessoa romântica, L: x é inspirado pela Lua, R: x gosta de rosas,
F : x gosta de flores-do-campo.
Referências
[Rosen, K. H.] Matemática Discreta e suas Aplicações, Tradução da 6a. Edição em Inglês. Editora
Mc-Graw Hill Brasil, ISBN 978-85-7726-036-2, 2009.
[Gersting, J. L.] Fundamentos Matemáticos para Ciência da Computação, 5a. Edição. Editora
LTC. ISBN: 978-85-216-1422-7
[Menezes, P. B.] Matemática Discreta para Computação e Informática, 2a. Edição. Editora Sagra
Luzzatto.
[Scheinerman, E. R.] Matemática Discreta: Uma Introdução, 1a. edição Editora Thompson, ISBN13: 978-85-2210-291-4, 2003.
[Grimaldi, R. P.] Discrete and Combinatorial Mathematics: An Applied Introduction, 3rd. edition.
Adison Wesley, ISBN: 0-201-54983-2, 1994.
[Haggard, G., Schlipf, J. e Whitesides, S.] Discrete Mathematics for Computer Science. Thompson,
ISBN: 0-534-49501-X, 2006.
[Daghlian, J.] Lógica e Álgebra de Boole, 4a. Edição. Editora Atlas, ISBN: 798-85-224-1256-3,
2008.
[Mortari, C. A.] Introdução à Lógica, 1a. Edição. Editora Unesp, ISBN: 85-7139-337-0, 2001.
[Loureiro, A. A. F.]
Slides
sobre
matemática
discreta.
Disponível
www.dcc.ufmg.br/~loureiro/md/md_0Introducao.pdf. Acessado em Set/2012.
em
[Menezes, P. B.]
Slides
sobre
matemática
discreta.
Disponível
ftp://ftp.inf.ufrgs.br/pub/blauth/Discretas/Mat_Discreta2.pdf.
Acessado
Set/2012.
em
em
66
Download