Você está na página 1de 117

Matemtica Discreta para Computao e Informtica - P.

Blauth Menezes 1
Matemtica Discreta para
Computao e Informtica
P. Blauth Menezes
blauth@inf.ufrgs.br
Departamento de Informtica Terica
Instituto de Informtica / UFRGS

Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 2
Matemtica Discreta para Computao e Informtica
P. Blauth Menezes
1 Introduo e Conceitos Bsicos
2 Noes de Lgica e Tcnicas de Demonstrao
3 lgebra de Conjuntos
4 Relaes
5 Funes Parciais e Totais
6 Endorrelaes, Ordenao e Equivalncia
7 Cardinalidade de Conjuntos
8 Induo e Recurso
9 lgebras e Homomorfismos
10 Reticulados e lgebra Booleana
11 Concluses
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 3
2 Lgica e Tcnicas de
Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 4
! Lgica Matemtica
bsica para qq estudo em Computao e Informtica
em particular, para estudo de Matemtica Discreta
! Para desenvolver qq algoritmo (qq software)
necessrios conhecimentos bsicos de Lgica
! Existem linguagens de progr. baseadas em Lgica
desenvolvidas segundo o paradigma lgico
exemplo: Prolog
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 5
! Diretrizes Curriculares do MEC para Cursos de
Computao e Informtica
Lgica Matemtica uma ferramenta fundamental na definio de
conceitos computacionais
! Para matrias da rea de Formao Tecnolgica,
como Inteligncia Artificial
Como base ao estudo da Inteligncia Artificial so imprescindveis
conhecimentos de Lgica Matemtica, ...
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 6
! Lgica permite definir Teorema
! Por que teoremas e suas demonstraes so
fundamentais para a Computao e Informtica?
teorema (freqentemente) pode ser visto como
" problema a ser implementado computacionalmente
demonstrao
" soluo computacional
" algoritmo o qual prova-se, sempre funciona!
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 7
! David Parnas, importante pesquisador internacional e
um dos pioneiros da Engenharia de Software
XIII SBES - Seminrios Brasileiros de Engenharia de Software
o maior avano da Engenharia de Software nos ltimos dez anos
foi os provadores de teoremas
! Objetivo
introduzir principais conceitos e terminologia necessrios para MD
" no uma abordagem ampla nem detalhada
" existe uma disciplina especfica de Lgica
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 8
2 Noes de Lgica e
Tcnicas de Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 9
2.1 Lgica
! Estudo centrado em
Lgica Booleana ou Lgica de Boole
" George Boole: ingls, 1815-1864
" um dos precursores da Lgica
estudo dos princpios e mtodos usados para
" distinguir sentenas verdadeiras de falsas
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 10
2 Noes de Lgica e
Tcnicas de Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 11
2.1.1 Proposies
Def: Proposio
Construo (sentena, frase, pensamento) que pode-se atribuir juzo
tipo de juzo na Lgica Matemtica
" verdadeiro-falso
" interesse na verdade das proposies
! Forma tradicional de tratar com a verdade
dois valores verdade V (verdadeiro) e F (falso)
proposies s podem assumir esses valores
! Denotao do valor verdade de uma proposio p
V(p)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 12
Exp: Proposio
Brasil um pas (valor verdade V)
Buenos Aires a capital do Brasil (valor verdade F)
3 + 4 > 5 (valor verdade V)
7 - 1 = 5 (valor verdade F)
Ou seja
V(Brasil um pas) = V
V(Buenos Aires a capital do Brasil) = F
V(3 + 4 > 5) = V
V(7 - 1 = 5) = F
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 13
Exp: No so proposio
V tomar banho.
Que horas so?
Parabns!
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 14
2 Noes de Lgica e
Tcnicas de Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 15
2.1.2 Conetivos
! Proposies introduzidas
proposies atmicas ou tomos
no podem ser decompostas em proposies mais simples
! possvel construir proposies mais complexas
compondo proposies
usando operadores lgicos ou conetivos
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 16
Exp: Proposies Compostas
Windows sistema operacional e Pascal ling. de programao
Vou comprar um PC ou um MAC
Linux no um software livre
Se chover canivetes, ento todos esto aprovados em MD
A = B se e somente se (A # B e B # A)
! Proposies compostas podem ser usadas para
construir novas proposies compostas
A = B se e somente se (A # B e B # A)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 17
! Cinco conetivos que sero estudados
e (conjuno)
ou (disjuno)
no (negao)
se-ento (condicional)
se-somente-se (bicondicional)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 18
Negao
! Uma proposio p ou verdadeira ou falsa
! Negao de uma proposio
introduzindo a palavra no
prefixando a proposio por no fato que (ou equivalente)
Exp: Negao
Brasil um pas Brasil no um pas
Linux um software livre Linux no um software livre
3 + 4 > 5 No fato que 3 + 4 > 5
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 19
! Negao de p
p ou $p
l-se: no p
! Semntica da negao
se p verdadeira, ento p falsa
se p falsa, ento p verdadeira
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 20
! Tabela Verdade
descreve os valores lgicos de uma proposio
em termos das combinaes dos valores lgicos das proposies
componentes e dos conetivos usados
Def: Negao
Semntica da Negao p
p p
V F
F V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 21
Conjuno
! Conjuno de duas proposies p e q
p % q
l-se: p e q
! Reflete uma noo de simultaneidade
verdadeira, apenas quando p e q so simultaneamente verdadeiras
falsa, em qualquer outro caso
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 22
Def: Conjuno
Semntica da Conjuno p % q
p q p % q
V V V
V F F
F V F
F F F
quatro linhas para expressar todas as combinaes de valores
lgicos de p e q
quantas linhas para n proposies?
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 23
Exp: Conjuno
Verdadeira
Windows sist. operacional e Pascal ling. de programao
Falsa
Windows sistema operacional e Pascal planilha eletrnica
Windows editor de textos e Pascal ling. de programao
Windows editor de textos e Pascal planilha eletrnica
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 24
Exerccio: Conjuno
Suponha que p e q so respectivamente V e F. Valor lgico?
p % q
p % q
p % q
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 25
Exerccio: Conjuno
Determine o V(p), sabendo que
V(q) = V e V(p % q) = F
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 26
Disjuno
! Disjuno de duas proposies p e q
p & q
l-se: p ou q
! Reflete uma noo de pelo menos uma
verdadeira, quando pelo menos uma das proposies verdadeira
falsa, somente quando simultaneamente p e q so falsas
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 27
Def: Disjuno
Semntica da Disjuno p & q
p q p & q
V V V
V F V
F V V
F F F
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 28
Exp: Disjuno
Verdadeira
Windows sist. operacional ou Pascal ling. de programao
Windows sistema operacional ou Pascal planilha eletrnica
Windows editor de textos ou Pascal ling. de programao
Falsa
Windows editor de textos ou Pascal planilha eletrnica
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 29
Exerccio: Disjuno
Suponha que p e q so respectivamente V e F. Valor lgico?
p & q
p & q
p % (p & q)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 30
Exerccio: Disjuno
Determine o V(p), sabendo que
V(q) = F e V(p & q) = F
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 31
Condio
! Condio de duas proposies p e q
p ' q
l-se: se p ento q
! Reflete a noo
partir de uma premissa p verdadeira
obrigatoriamente deve-se chegar a uma concluso q verdadeira
para que p ' q seja verdadeira
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 32
! Entretanto, partindo de uma premissa falsa
qualquer concluso pode ser considerada
! Portanto p ' q
falsa, quando p verdadeira e q falsa
verdadeira, caso contrrio
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 33
Def: Condio
Semntica da Condio p ' q
p q p ' q
V V V
V F F
F V V
F F V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 34
Exp: Condio
Verdadeira
se Windows sist. operacional ento Pascal ling. de progr.
se Windows editor de textos ento Pascal ling. de programao
se Windows editor de textos ento Pascal planilha eletrnica
Falsa
se Windows sist. operacional ento Pascal planilha eletrnica
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 35
Exerccio: Condio
Determine o V(p), sabendo que
V(q) = F e V(p ' q) = F
V(q) = F e V(q ' p) = V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 36
Exerccio: Condio
Determine o V(p) e V(q), sabendo que
V(p ' q) = V e V(p % q) = F
V(p ' q) = V e V(p & q) = F
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 37
Bicondio
! Bicondio de duas proposies p e q
p ( q
l-se: p se e somente se q
! Reflete a noo de condio nos dois sentidos
considera simultaneamente
" ida: p premissa e q concluso
" volta: q premissa e p concluso
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 38
! Portanto p ( q
verdadeira, quando p e q so ambas verdadeiras ou ambas falsas
falsa, quando p e q possuem valor verdade distintos
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 39
Def: Bicondio
Semntica da Bicondio p ( q
p q p ( q
V V V
V F F
F V F
F F V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 40
Exp: Bicondio
Verdadeira
Windows sist. oper. se e somente se Pascal ling. de progr.
Windows ed. de textos se e somente se Pascal planilha eletr.
Falsa
Windows sist. Oper. se e somente se Pascal planilha eletr.
Windows ed. de textos se e somente se Pascal ling. de progr.
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 41
Exerccio: Bicondio
Determine o V(p), sabendo que
V(q) = V e V(p ( q) = F
V(q) = F e V(q ( p) = V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 42
Exerccio: Bicondio
Determine o V(p) e V(q), sabendo que
V(p ( q) = V e V(p % q) = V
V(p ( q) = V e V(p & q) = V
V(p ( q) = F e V(p & q) = V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 43
2 Noes de Lgica e
Tcnicas de Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 44
2.1.3 Frmulas, Linguagem Lgica e Tabelas
Verdade
! Frmulas Lgicas ou simplesmente Frmulas
palavras da Linguagem Lgica
introduzido formalmente adiante
" quando do estudo da Definio Indutiva
informalmente, sentena lgica corretamente construda sobre o
alfabeto cujos smbolos so
" conetivos (%, &, ', )
" parnteses
" identificadores (p, q, r, )
" constantes, etc.
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 45
! Se a frmula contm variveis
no necessariamente possui valor verdade associado
valor lgico depende do valor verdade das sentenas que
substituem as variveis na frmula
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 46
Exp: Frmulas
Suponha p, q e r so sentenas variveis
valores verdade constantes V e F
qualquer proposio
p, q e r
p, p % q, p & q, p ' q e p ( q
p & (q)
(p % q) ' F
(p % q) ( (p & q)
p & (q % r) ( (p & q) % (p & r)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 47
! Precedncia entre os conetivos
reduzir os parnteses
simplificar visualmente
! Ordem de precedncia entre os conetivos
entre parnteses, dos mais internos para os mais externos
negao ()
conjuno (%) e disjuno (&)
condio (')
bicondio (()
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 48
Exp: Precedncia de Conetivos
p & (q) p & q
(p % q) ' F p % q ' F
(p % q) ( (p & q) (p % q) ( p & q
p & (q % r) ( (p & q) % (p & r)
qualquer omisso de parnteses resulta em ambigidade
(por qu?)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 49
! Tabelas Verdade
como construir uma tabela verdade de uma dada frmula?
explicitar todas as combinaes possveis dos valores lgicos
" das frmulas atmicas componentes
frmula atmica no-constante
" dois valores lgicos: V e F
frmula atmica constante
" valor verdade fixo (V ou F)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 50
! Uma frmula atmica (no-constante): negao
tabela: 2 linhas
2
1
possveis combinaes dos valores lgicos
! Duas frmulas atmicas (no-constantes): conjuno,
condio
tabela: 4 linhas
2
2
possveis combinaes dos valores lgicos
! n frmulas atmicas (no-constantes)
tabela: 2
n
linhas
2
n
possveis combinaes de valores lgicos
(fcil verificar tal resultado)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 51
Exp: Tabela Verdade
Construo da tabela verdade para a frmula p & q
p q p q q p q q p & q
V V V V F V V F V
V F V F V V F V V
F V F V F F V F F
F F F F V F F V V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 52
Exp: Tabela Verdade: p % q ' F
No foi introduzida uma coluna para o valor constante F
seria redundante (conteria somente F)
p q q p % q p % q ' F
V V F F V
V F V V F
F V F F V
F F V F V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 53
Exp: Tabela Verdade: p & (q % r) ( (p & q) % (p & r)
p q r q % r p & (q % r) p & q p & r (p & q) % (p & r) p & (q % r) ( (p & q) % (p & r)
V V V V V V V V V
V V F F V V V V V
V F V F V V V V V
V F F F V V V V V
F V V V V V V V V
F V F F F V F F V
F F V F F F V F V
F F F F F F F F V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 54
Exerccio: Tabela Verdade
(p & q)
(p ' q)
p % q ' p & q
p ' (q ' p)
(p ' q) ' p % q
q ( q % p
p ' (q ' (q ' p))
(p ' (p ' q))
p % q ' (p ( q & r)
p % r ' q & r
p ' r ( q & r
p ' (p ' r) ( q & r
(p % q ' r) & (p ( q & r)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 55
2 Noes de Lgica e
Tcnicas de Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 56
2.1.4 Lgica nas Linguagens de Programao
! Em geral, LP possuem o tipo de dado lgico
(booleano) predefinido
! Pascal
tipo de dado boolean
valores lgicos V e F so true e false
declarao (definio) das variveis p, q e r
p, q, r: boolean
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 57
! J foi introduzido que as noes de
igualdade e contido (entre conjuntos)
pertinncia (de um elemento a um conjunto)
resultam em valores lgicos
! Analogamente, relaes entre expresses aritmticas
resultam em valores lgicos
= (igual)
< (menor)
<= (menor ou igual)
> (maior)
>= (maior ou igual)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 58
! Trechos de programas em Pascal
(qual o valor lgico resultante?)
7 1 = 5
n + 1 > n
! Conetivos lgicos Pascal (e na maioria das LP)
not (negao)
and (conjuno)
or (disjuno)
<= (condio)
= (bicondio)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 59
Exp: Programa em Pascal
Calcular o valor lgico de p & (q % r) para qq valores de p, q e r lidos
program valor_logico (input, output);
var p, q, r: boolean;
begin
read (p, q, r);
if p or (q and r)
then write(verdadeiro)
else write(falso)
end.

Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 60
2 Noes de Lgica e
Tcnicas de Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 61
2.1.5 Tautologia e Contradio
Def: Tautologia, Contradio
Seja w uma frmula
Tautologia
" w verdadeira
" para qq combinao possvel de valores de sentenas variveis
Contradio
" w falsa
" para qq combinao possvel de valores de sentenas variveis
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 62
Exp: Tautologia, Contradio
Suponha p uma frmula
p & p tautologia
p % p contradio
p p p & p p % p
V F V F
F V V F
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 63
2 Noes de Lgica e
Tcnicas de Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 64
2.1.6 Implicao e Equivalncia
! Conetivos condio e bicondio induzem relaes
entre frmulas
Condio: implicao
Bicondio: equivalncia
! Importncia destas relaes
Relao de implicao
" relacionada com o conceito de teorema
Relao de equivalncia
" mesmo significado entre frmulas (sintaticamente) diferentes
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 65
Def: Relao de Implicao
p e q frmulas
p ) q
p implica em q
se e somente se
p ' q uma tautologia
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 66
Exp: Relao de Implicao
(interprete os nomes)
Adio: p ) p & q
Simplificao:p % q ) p
p q p & q p ' (p & q) p % q (p % q) ' p
V V V V V V
V F V V F V
F V V V F V
F F F V F V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 67
Def: Relao de Equivalncia
p e q frmulas
p * q
p equivalente a q
se e somente se
p ( q uma tautologia
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 68
Exp: Relao de Equivalncia
p q r q % r p & (q % r) p & q p & r (p & q) % (p & r) p & (q % r) ( (p & q) % (p & r)
V V V V V V V V V
V V F F V V V V V
V F V F V V V V V
V F F F V V V V V
F V V V V V V V V
F V F F F V F F V
F F V F F F V F V
F F F F F F F F V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 69
Exp: Relao de Equivalncia
Distributividade do conetivo ou sobre o conetivo
p & (q % r) * (p & q) % (p & r)
Exerccio
verificar se o conetivo e distribui-se sobre o conetivo ou
! Exemplos de equivalncia que seguem
importantes para o estudo das Tcnicas de Demonstrao
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 70
Exp: Bicondio + Condio p ( q * (p ' q) % (q ' p)
Bicondio pode ser expressa por duas condies: ida e volta
p q p ( q p ' q q ' p (p ' q) % (q ' p) (p ( q) (
(p ' q) % (q ' p)
V V V V V V V
V F F F V F V
F V F V F F V
F F V V V V V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 71
Exp: Contraposio p ' q * q ' p
p q p ' q p q q ' p p ' q ( q ' p
V V V F F V V
V F F F V F V
F V V V F V V
F F V V V V V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 72
Exp: Reduo ao Absurdo p ' q * p % q ' F
p q p ' q q p % q p % q ' F p ' q ( p % q ' F
V V V F F V V
V F F V V F V
F V V F F V V
F F V V F V V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 73
! Exerccios CIC
Idempotncia
" p % p * p
" p & p * p
Comutativa
" p % q * q % p
" p & q * q & p
Associativa
" p % (q % r) * (p % q) % r
" p & (q & r) * (p & q) & r
Distributiva
" p & (q % r) * (p & q) % (p & r)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 74
! Exerccios CIC
Dupla negao
" p * p
DeMorgan
" (p % q) * p & q
" (p & q) * p % q
Absoro
" p % (p & q) * p
" p & (p % q) * p
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 75
! Exerccios ECP
Bastam os conetivos e %
" Prove que os conetivos estudados pode ser expresso usando
somente e %
Conetivos EXORe NAND
" Prove que tais conetivos podem ser expressos usando os
conetivos j estudados
x y x EXOR y x NAND y
V V F F
V F V V
F V V V
F F F V
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 76
2 Noes de Lgica e
Tcnicas de Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 77
2.1.7 Quantificadores
! Proposio sobre um conjunto de valores
n > 1
dependendo do valor de n
assume valor verdadeiro ou falso
" para cada valor de n considerado, uma proposio diferente
! Quantificadores
dada uma proposio sobre um conjunto de valores
freqentemente desejvel quantificar os valores a serem
considerados
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 78
Proposio Sobre um Conjunto
Def: Proposio sobre um Conjunto
Proposio Sobre A
valor lgico depende do elemento x , A considerado
Exp: Proposio sobre N
n > 1
n! < 10
n + 1 > n
2n mpar
Quais proposies so verdadeiras para qualquer n , N?
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 79
p(x)
proposio p a qual descreve alguma propriedade de x , A
! Toda a proposio p sobre A determina 2 conjuntos
Conjunto verdade de p
{ x , A - p(x) verdadeira }
Conjunto falsidade de p
{ x , A - p(x) falsa }
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 80
Exp: Conjuntos Verdade e Falsidade Suponha N
n > 1
{ 2, 3, 4, } conjunto verdade
{ 0, 1 } conjunto falsidade
n! < 10
{ 0, 1, 2, 3 } conjunto verdade
{ n , N - n > 3 } conjunto falsidade
n + 1 > n
N conjunto verdade (o prprio conjunto universo)
. conjunto falsidade
"2n mpar"
. conjunto verdade
N conjunto falsidade (o prprio conjunto universo)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 81
! Uma proposio p sobre A
Tautologia
" se p(x) verdadeira para qualquer x , A
" conjunto verdade A
Contradio
" se p(x) falsa para qualquer x , A
" conjunto falsidade A
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 82
Exp: Tautologia, Contradio Conjunto universo N
n! < 10
no tautologia nem contradio
" para n = 0, a frmula verdadeira
" para n = 4, a frmula falsa
n + 1 > n
tautologia
conjunto verdade o conjunto universo N
"2n mpar"
contradio
conjunto falsidade o conjunto universo N
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 83
Quantificador
! Com freqncia, para uma proposio p(x)
desejvel quantificar os valores de x que devem ser considerados
! Quantificadores so usados em Lgica (suponha
Quantificador universal, simbolizado por /
(/x , A)(p(x)) (/x , A) p(x) /x , A, p(x)
Quantificador existencial, simbolizado por 0
(0x , A)(p(x)) (0x , A) p(x) 0x , A, p(x)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 84
! Denotao alternativa para (/x , A) p(x) e (0x , A) p(x)
quando claro o conjunto de valores
(/x)(p(x)) (/x) p(x) /x, p(x)
(0x)(p(x)) (0x) p(x) 0x, p(x)
! Leitura de (/x , A) p(x)
qualquer x, p(x) ou para todo x, p(x)
! Leitura de (0x , A) p(x)
existe pelo menos um x tal que p(x) ou existe x tal que p(x)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 85
! Como a leitura induz, o valor verdade de um
proposio quantificada
(/x , A) p(x) verdadeira
" se p(x) for verdadeira para todos os elementos de A
(0x , A) p(x) verdadeira
" se p(x) for verdadeira para pelo menos um elemento de A
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 86
Def: Quantificador Universal, Quantificador Existencial
Seja p(x) proposio lgica sobre um conjunto A
Quantificador Universal: (/x , A) p(x)
verdadeira, se o conjunto verdade for A
falsa, caso contrrio
Quantificador Existencial: (0x) p(x)
verdadeira, se o conjunto verdade for no-vazio
falsa, caso contrrio
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 87
Exp: Quantificador Universal, Quantificador Existencial
(/n , N)(n < 1) falsa
(0n , N)(n < 1) verdadeira
(/n , N)(n! < 10) falsa
(0n , N)(n! < 10) verdadeira
(/n , N)(n + 1 > n) verdadeira
(0n , N)(n + 1 > n) verdadeira
(/n , N)(2n par) verdadeira
(0n , N)(2n par) verdadeira
Sempre que uma proposio quantificada universalmente verdadeira
a mesma proposio quantificada existencialmente verdadeira
vale sempre ???
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 88
! Generalizao de p(x)
p(x
1
, x
2
,, x
n
)
p descreve alguma propriedade de x
1
, A
1
, x
2
, A
2
,, x
n
, A
n
cada elemento x
1
, x
2
,, x
n
pode ser individualmente quantificado
" a ordem dos quantificadores existencial e universal
" pode alterar o valor verdade da proposio
Exemplo, para o conjunto universo N, tem-se que
" (/n)(0m)(n < m) verdadeira
" (0m)(/n)(n < m) falsa
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 89
Obs: Existe pelo menos um + Existe um nico
comum quantificar existencialmente de forma nica
simbolizado por 0!
existe um elemento e este nico
" no pode existir mais de um
(0!n , N)(n < 1) verdadeira (0n , N)(n < 1) verdadeira
(0!n , N)(n! < 10) falsa (0n , N)(n! < 10) verdadeira
(0!n , N)(n + 1 > n) falsa (0n , N)(n + 1 > n) verdadeira
(0!n , N)(2n par) falsa (0n , N)(2n par) verdadeira
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 90
Obs: Existe pelo menos um + Existe um nico
0! equivalentemente a
(0!x) p(x) * (0x) p(x) % (/x)(/y)( (p(x)%p(y) ' x = y) )
primeiro termo: existe
segundo termo: nico
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 91
Negao de Proposies Quantificadas
Negao de proposio quantificada intuitiva
(/x , A) p(x)
(/x , A) p(x) V, se p(x) for V para todos os elementos de A
Negao: no V para todos os elemento de A
existe pelo menos um x tal que no fato que p(x)
~( (/x , A) p(x) ) * (0x) ~p(x)
Raciocnio anlogo para (0x , A) p(x)
~( (0x , A) p(x) ) * (/x) ~p(x)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 92
Exp: Negao de Proposies Quantificadas
~( (/n , N)(n < 1) ) * (0n , N)(n 1 1) * V
~( (0n , N)(n < 1) ) * (/n , N)(n 1 1) * F
~( (/n , N)(n! < 10) ) * (0n , N)(n! 1 10) * V
~( (0n , N)(n! < 10) ) * (/n , N)(n! 1 10) * F
~( (/n , N)(n + 1 > n) ) * (0n , N)(n + 1 2 n) * F
~( (0n , N)(n + 1 > n) ) * (/n , N)(n + 1 2 n) * F
~( (/n , N)(2n par) ) * (0n , N)(2n no par) * F
~( (0n , N)(2n par) ) * (/n , N)(2n no par) * F
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 93
! Negao pode ser estendida para proposies que
dependem de n elementos individualmente
quantificados
Exp: Negao de Proposies Quantificadas
Proposies quantificadas
(/n)(0m)(n < m) verdadeira
(0m)(/n)(n < m) falsa
Negao
(0n)(/m)(n 1 m) falsa
(/m)(0n)(n 1 m) verdadeira
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 94
2 Noes de Lgica e
Tcnicas de Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 95
2.2 Tcnicas de Demonstrao
! Teorema: uma proposio do tipo
p ' q
prova-se ser verdadeira sempre (tautologia)
p ) q
" p - hiptese
" q - tese
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 96
! Corolrio
teorema que conseqncia quase direta de outro j demonstrado
! Lema
teorema auxiliar
resultado importante para a prova de outro
! Teoremas so fundamentais em Computao e
Informtica
Exemplo: permite verificar se uma implementao correta
um algoritmo que prova-se, sempre funciona
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 97
! Fundamental identificar claramente a hiptese e a tese
exemplo
0 o nico elemento neutro da adio em N
reescrita identificando claramente a hiptese e a tese
se 0 elemento neutro da adio em N,
ento 0 o nico elemento neutro da adio em N
! Na demonstrao de que p ) q
hiptese p suposta verdadeira
" no deve ser demonstrada
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 98
! Todas as teorias possuem um conjunto de premissas
(hipteses)
so supostas verdadeiras
sobre as quais todo o raciocnio construdo
! Teoria dos Conjuntos
baseada em uma premissa: noo de elemento suposta
algumas abordagens consideram a noo de conjunto como sendo
uma premissa
! Hiptese de Church
Computao e Informtica construda sobre tal premissa
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 99
Obs: Hiptese de Church + Computao e Informtica
Algoritmo, procedimento efetivo ou funo computvel
um dos conceitos mais fundamentais da Computao e Informtica
intuitivamente
uma seqncia finita de instrues, as quais podem ser
realizadas mecanicamente, em um tempo finito
Tal intuio no corresponde a um conceito formal de algoritmo
Incio do sculo XX
pesquisadores se dedicaram a formalizar tal conceito
diversas formalizaes matemticas foram desenvolvidas
" 1936, Alan Turing props o modelo Mquina de Turing
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 100
Obs: Hiptese de Church + Computao e Informtica
1936: Alonzo Church apresentou a Hiptese de Church
qualquer funo computvel pode ser processada por uma
Mquina de Turing, ou seja, existe um procedimento expresso na
forma de uma Mquina de Turing capaz de processar a funo
Como a noo intuitiva de algoritmo no matematicamente precisa
impossvel demonstrar formalmente se a Mquina de Turing o
mais genrico dispositivo de computao
entretanto, foi mostrado que todos os demais modelos possuem, no
mximo, a mesma capacidade computacional
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 101
Obs: Hiptese de Church + Computao e Informtica
Para todos o desenvolvimento subseqentes
Hiptese de Church suposta
premissa bsica para toda a Computao e Informtica
Se for encontrado um modelo mais geral do que a Mquina de Turing??
pela semntica do '
estudos desenvolvidos continuam vlidos (por qu?)
Teoria da Computao estuda
Mquina de Turing, Hiptese de Church e conceitos correlatos
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 102
! Um teorema pode ser apresentado na forma p ( q
uma tcnica usual provar em separado
" ida p ' q
" volta q ' p
p ( q * (p ' q) % (q ' p)
! Para um teorema p ' q existem diversas tcnicas para
provar (demonstrar) que, de fato, p ) q
Prova Direta
Prova por Contraposio
Prova por Reduo ao Absurdo ou Prova por Absurdo
Prova por Induo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 103
! Prova por induo
aplicao particular do Princpio da Induo Matemtica
captulo especfico adiante
! Demais tipos de prova so introduzidos a seguir
! Ao longo da disciplina
cada demonstrao um exemplo das tcnicas
cada exerccios de demonstrao um exerccio das tcnicas
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 104
! Para qualquer tcnica de demonstrao
especial ateno aos quantificadores
provar a proposio
(/x , A) p(x)
" provar para todo x , A
" mostrar para um elemento a , A um exemplo e no uma prova
provar a proposio
(0x , A) p(x)
" basta provar para um a , A
" um exemplo uma prova (compare com o caso universal)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 105
2 Noes de Lgica e
Tcnicas de Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 106
2.2.1 Prova Direta
Def: Prova Direta ou Demonstrao Direta
Pressupe verdadeira a hiptese
a partir desta, prova ser verdadeira a tese
Exp: Prova Direta
a soma de dois nmeros pares um nmero par
Reescrevendo na forma de p ' q
se n e m so dois nmeros pares quaisquer,
ento n + m um nmero par
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 107
Qualquer par n pode ser definido como n = 2r, para algum natural r
Suponha que n e m so dois pares quaisquer
Ento existem r, s , N tais que
n = 2r e m = 2s
Portanto
n + m = 2r + 2s = 2(r + s)
Como a soma de dois naturais r + s natural
n + m = 2(r + s)
Logo, n + m um nmero par
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 108
2 Noes de Lgica e
Tcnicas de Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 109
2.2.2 Prova por Contraposio
! Baseia-se no resultado denominado contraposio
p ' q * q ' p
Def: Prova (ou Demonstrao) por Contraposio
Para provar p ' q, prova-se
q ' p (prova direta)
a partir de q
obter p
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 110
Exp: Prova por Contraposio
n! > (n + 1) ' n > 2
Por contraposio
n 2 2 ' n! 2 n + 1
Muito simples!!!
testar para os casos n = 0, n = 1 e n = 2
exerccio
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 111
2 Noes de Lgica e
Tcnicas de Demonstrao
2.1 Lgica
2.1.1 Proposies
2.1.2 Conetivos
2.1.3 Frmulas, Ling. Lgica e Tabelas Verdade
2.1.4 Lgica nas Linguagens de Programao
2.1.5 Tautologia e Contradio
2.1.6 Implicao e Equivalncia
2.1.7 Quantificadores
2.2 Tcnicas de Demonstrao
2.2.1 Prova Direta
2.2.1 Prova por Contraposio
2.2.1 Prova por Reduo ao Absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 112
2.2.3 Prova por Reduo ao Absurdo
! Baseia-se no resultado reduo ao absurdo
p ' q * (p % q) ' F
Def: Prova (Demonstrao) por Reduo ao Absurdo
Ou simplesmente Prova (Demonstrao) por Absurdo
Para provar p ' q, prova-se
(p % q) ' F (prova direta)
supor a hiptese p
supor a negao da tese q
concluir uma contradio (em geral, q % q)
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 113
! Prova por contra-exemplo
demonstrao por absurdo
" construo da contradio q % q
" em geral, apresentao de um contra-exemplo
Exp: Prova por Reduo ao Absurdo
0 o nico elemento neutro da adio em N
Reescrevendo na forma de p ' q:
se 0 elemento neutro da adio em N,
ento 0 o nico elemento neutro da adio em N
Uma prova por reduo ao absurdo
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 114
Exp: Prova por Reduo ao Absurdo
suponha
" (hiptese) 0 o elemento neutro da adio em N
" (negao da tese) 0 no o nico neutro da adio em N
seja e um outro neutro da adio em N tal que e 3 0
como 0 elemento neutro, para qq n , N
" n = 0 + n = n + 0
" em particular, para n = e: e = 0 + e = e + 0
como e elemento neutro, para qq n , N
" n = n + e = e + n
" em particular, para n = 0: 0 = 0 + e = e + 0
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 115
Exp: Prova por Reduo ao Absurdo
portanto, como e = 0 + e = e + 0 e 0 = 0 + e = e + 0
" pela transitividade da igualdade: e = 0
" contradio!!! pois foi suposto que e 3 0
Logo, absurdo supor que o neutro da adio em N no nico
Portanto, 0 o nico neutro da adio em N
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 116
Matemtica Discreta para Computao e Informtica
P. Blauth Menezes
1 Introduo e Conceitos Bsicos
2 Noes de Lgica e Tcnicas de Demonstrao
3 lgebra de Conjuntos
4 Relaes
5 Funes Parciais e Totais
6 Endorrelaes, Ordenao e Equivalncia
7 Cardinalidade de Conjuntos
8 Induo e Recurso
9 lgebras e Homomorfismos
10 Reticulados e lgebra Booleana
11 Concluses
Matemtica Discreta para Computao e Informtica - P. Blauth Menezes 117
Matemtica Discreta para
Computao e Informtica
P. Blauth Menezes
blauth@inf.ufrgs.br
Departamento de Informtica Terica
Instituto de Informtica / UFRGS

Você também pode gostar