Académique Documents
Professionnel Documents
Culture Documents
Introduo
Antonio Alfredo Ferreira Loureiro
loureiro@dcc.ufmg.br
http://www.dcc.ufmg.br/~loureiro
UFMG/ICEx/DCC
MD
Conceitos
Introduo
Por que estudar Matemtica Discreta?
Prov um conjunto de tcnicas para modelar problemas em Cincia da
Computao.
Tpico de Matemtica Discreta
Lgica e Conjuntos
Relaes e funes
Anlise combinatria
Grafos no-dirigidos
Linguagens e parsing
Grafos dirigidos
lgebra booleana
Teoria de grupo
Teoria da informao
Probabilidade
UFMG/ICEx/DCC
MD
Conceitos
UFMG/ICEx/DCC
MD
Conceitos
UFMG/ICEx/DCC
MD
Conceitos
UFMG/ICEx/DCC
MD
Conceitos
UFMG/ICEx/DCC
MD
Conceitos
UFMG/ICEx/DCC
MD
Mtodos de Prova:
Circuitos integrados;
Projeto de algoritmos.
Seqncias e Induo Matemtica:
Projeto de algoritmos.
Teoria dos Conjuntos:
Banco de dados;
Circuitos integrados;
Inteligncia artificial;
Sistemas distribudos.
Conceitos
Funes:
Otimizao;
Projeto de algoritmos.
Recurso:
Projeto de algoritmos.
Anlise Combinatria:
Circuitos integrados;
Otimizao;
Projeto de algoritmos;
Sistemas distribudos.
Relaes:
Sistemas distribudos.
UFMG/ICEx/DCC
MD
Conceitos
Modelagem Matemtica
Metodologia: conjunto de conceitos que traz coeso a princpios e tcnicas
mostrando quando, como e porque us-los em situaes diferentes.
A metodologia que usa matemtica na resoluo de problemas conhecida
como modelagem matemtica.
O processo de modelagem:
UFMG/ICEx/DCC
Problema
Soluo para
o problema
Modelo
Modelo
Abstrato
Transformado
MD
Conceitos
Exemplo de modelagem:
Malha rodoviria (1)
Suponha a malha rodoviria entre as seis cidades A, B, C, D, E, e F.
Problema: Achar um subconjunto da malha rodoviria representada pela tabela
abaixo que ligue todas as cidades e tenha um comprimento total mnimo.
A
B
C
D
E
UFMG/ICEx/DCC
B
5
MD
D
10
10
20
20
20
Conceitos
30
10
10
Exemplo de modelagem:
Malha rodoviria (2)
Tabela j um modelo da situao do mundo real.
A tabela pode ser transformada numa representao grfica chamada
GRAFO , que ser o modelo matemtico.
20
5
10
10
20
C
30
20
10
Grafo G
Grafo (definio informal): conjunto de pontos chamados de vrtices ou ns,
e um conjunto de linhas (normalmente no-vazio) conectando um vrtice ao
outro.
Neste caso, cidades so representadas por vrtices e estradas por linhas
(arestas).
UFMG/ICEx/DCC
MD
Conceitos
11
Exemplo de modelagem:
Malha rodoviria (3)
Qual o prximo passo?
Achar uma soluo em termos desse modelo.
Nesse caso, achar um grafo G0 com o mesmo nmero de vrtices e um
conjunto mnimo de arestas que conecte todas as cidades e satisfaa a
condio do problema.
Observao: o modelo matemtico escolhido, em geral, visando a soluo.
A soluo ser apresentada na forma de um algoritmo.
UFMG/ICEx/DCC
MD
Conceitos
12
Exemplo de modelagem:
Malha rodoviria (4)
Algoritmo:
1. Selecione arbitrariamente qualquer vrtice e o coloque no conjunto de vrtices j conectados.
2. Escolha dentre os vrtices no conectados aquele mais prximo de um vrtice j conectado. Se existir mais de um vrtice com essa caracterstica escolha aleatoriamente qualquer um deles.
3. Repita o passo 2 at que todos os vrtices j estejam conectados.
Este um exemplo de um algoritmo guloso (greedy algorithm).
20
5
10
C
30
20
10
20
10
Grafo G
UFMG/ICEx/DCC
MD
Conceitos
13
Exemplo de modelagem:
Malha rodoviria Solues (5)
20
5
10
30
20
10
20
10
Grafo G
Solues:
A
5
10
20
10
10
Grafo G1
UFMG/ICEx/DCC
10
20
10
20
10
Grafo G3
MD
Conceitos
10
Grafo G2
20
10
Grafo G4
14
Exemplo de modelagem:
Malha rodoviria (6)
O que foi feito?
1. Obteno do modelo matemtico para o problema.
2. Formulao de um algoritmo em termos do modelo.
Ou seja, essa a tcnica de resoluo de problemas em Cincia da Computao.
Nem todos os problemas considerados tero como soluo um algoritmo,
mas muitos tero.
UFMG/ICEx/DCC
MD
Conceitos
15
Exemplo de modelagem:
Sudoku e Godoku (1)
O objetivo do Sudoku
(Godoku) preencher
todos os espaos em
branco do quadrado
maior, que est dividido em nove grids,
com os nmeros de 1
a 9 (letras). Os algarismos no podem se
repetir na mesma coluna, linha ou grid.
Sudoku: A palavra
Sudoku
significa
nmero sozinho em
Sudoku
Godoku
japons, o que mostra
exatamente o objetivo
do jogo. O Sudoku existe desde a dcada de 1970, mas comeou a ganhar popularidade no
final de 2004 quando comeou a ser publicado diariamente na sesso de puzzles do jornal
The Times. Entre abril e maio de 2005 o puzzle comeou a ganhar um espao na publicao
de outros jornais britnicos e, poucos meses depois, ganhou popularidade mundial. Fonte:
wikipedia.org
Godoku: O jogo Godoku similar ao Sudoku mas formado apenas por letras.
UFMG/ICEx/DCC
MD
Conceitos
16
Exemplo de modelagem:
SuperSudoku (2)
O jogo SuperSudoku similar
ao Sudoku e Godoku formado
por nmeros e letras. Cada grid
tem 16 entradas, sendo nove
dos nmeros (0 a 9) e seis letras (A a F).
UFMG/ICEx/DCC
MD
Conceitos
17
Exemplo de modelagem:
Mais informaes sobre o Sudoku e jogos
similares (3)
Para mais detalhes sobre o Sudoku e variantes desse jogo, veja o artigo A cincia do Sudoku
por Jean-Paul Delahaye, na revista Scientific American Brasil, edio no 50 de julho de 2006, ou
nas pginas:
http://www2.uol.com.br/sciam/conteudo/materia/materia_99.html
http://www2.uol.com.br/sciam/conteudo/materia/materia_imprimir_99.html
UFMG/ICEx/DCC
MD
Conceitos
18
Exemplo de modelagem:
Kasparov Deep Blue
In the first ever traditional chess match between a man (world
champion Garry Kasparov) and a computer (IBMs Deep Blue) in
1996, Deep Blue won one game, tied two and lost three. The next
year, Deep Blue defeated Kasparov in a six-game match the first
time a reigning world champion lost a match to a computer opponent in tournament play. Deep Blue was a combination of special
purpose hardware and software with an IBM RS/6000 SP2 (seen
here) a system capable of examining 200 million moves per second, or 50 billion positions, in the three minutes allocated for a
single move in a chess game.
Referncia:
http://www-03.ibm.com/ibm/history/
exhibits/vintage/vintage_4506VV1001.html
UFMG/ICEx/DCC
MD
Conceitos
19
UFMG/ICEx/DCC
MD
Conceitos
20
MD
Conceitos
21
UFMG/ICEx/DCC
MD
Conceitos
22
MD
Conceitos
23
MD
Conceitos
24
UFMG/ICEx/DCC
MD
Conceitos
25
UFMG/ICEx/DCC
MD
Conceitos
26
UFMG/ICEx/DCC
MD
Conceitos
27
UFMG/ICEx/DCC
MD
Conceitos
28
UFMG/ICEx/DCC
MD
Conceitos
29
UFMG/ICEx/DCC
MD
Conceitos
30
Exrcito Alfa est em maior nmero que o exrcito Gama mas est dividido em duas metades, cada uma numa lateral do vale.
Cada metade do exrcito Alfa est em menor nmero que o exrcito Gama.
Objetivo do exrcito Alfa: coordenar um ataque ao exrcito Gama para ganhar a guerra.
UFMG/ICEx/DCC
MD
Conceitos
31
1. General do exrcito Alfa, do lado esquerdo do vale, chama o seu melhor soldado para
levar uma mensagem para o general do exrcito Alfa do lado direito:
Vamos atacar conjuntamente o exrcito Gama amanh s 6:00h?
Observaes: A nica possibilidade de comunicao entre os dois generais atravs
de um mensageiro.
Os dois generais tm um relgio perfeitamente sincronizado, ou seja,
eles sabem pela posio do sol quando 6:00h.
UFMG/ICEx/DCC
MD
Conceitos
32
UFMG/ICEx/DCC
MD
Conceitos
33
3. O general do exrcito Alfa do lado direito concorda em atacar o exrcito Gama no dia
seguinte s 6:00h.
UFMG/ICEx/DCC
MD
Conceitos
34
4. O soldado do exrcito Alfa atravessa novamente as linhas inimigas e confirma com seu
general o ataque para o dia seguinte.
UFMG/ICEx/DCC
MD
Conceitos
35
Aps esses quatro passos terem sido realizados com sucesso, vai haver ataque amanh s
6:00h?
UFMG/ICEx/DCC
MD
Conceitos
36
UFMG/ICEx/DCC
MD
Conceitos
37
UFMG/ICEx/DCC
MD
Conceitos
38
UFMG/ICEx/DCC
MD
Conceitos
39
Consideraes finais
At agora falamos sobre Matemtica Discreta como um conjunto de princpios, tcnicas e metodologias para resoluo de problemas.
Essa exatamente a abordagem que desenvolveremos neste disciplina.
Matemtica Discreta inclui um nmero muito grande de assuntos e s discutiremos alguns deles.
Os tpicos que estudaremos no so novos. A maior parte deles so mais
antigos que Cincia da Computao.
UFMG/ICEx/DCC
MD
Conceitos
40
Fundamentos da Lgica
Lgica Proposicional
Antonio Alfredo Ferreira Loureiro
UFMG/DCC
loureiro@dcc.ufmg.br
http://www.dcc.ufmg.br/~loureiro
UFMG/ICEx/DCC
MD
Conceitos
41
Fundamentos da lgica:
Alguns fatos histricos
Aristteles (384 a.C.322 a.C.), filsofo
grego. Produziu uma obra rica e multifacetada. Nela encontramos uma exaustiva compilao dos conhecimentos do seu tempo, mas tambm, uma
filosofia que ainda hoje influncia a
nossa maneira de pensar.
Gottfried Wilhelm Leibniz (16461716),
filsofo e matemtico alemo, provavelmente mais conhecido por ter inventado
o clculo integral e diferencial independentemente de Isaac Newton.
George Boole
(18151864),
matemtico
e filsofo
ingls.
UFMG/ICEx/DCC
Augustus
De Morgan
(18061871),
matemtico
ingls.
MD
Conceitos
42
Fundamentos da lgica:
Atualidade
Pesquisa continua sendo aplicada em reas como:
inteligncia artificial;
projeto de circuito lgico;
teoria de autmatos e computabilidade;
teoria de bancos de dados relacionais;
teoria de linguagens;
teoria de sistemas distribudos.
UFMG/ICEx/DCC
MD
Conceitos
43
Forma de um Argumento
Seu Contedo
Forma de um argumento: conceito central da lgica dedutiva.
Argumento: seqncia de afirmaes para demonstrar a validade de uma
assero.
Como saber que a concluso obtida de um argumento vlida?
As afirmaes que compem o argumento
so aceitas como vlidas, ou
podem ser deduzidas de afirmaes anteriores.
Em lgica, forma de um argumento 6= seu contedo.
Anlise lgica no determina a validade do contedo de um argumento.
Anlise lgica determina se a verdade de uma concluso pode ser obtida
da verdade de argumentos propostos.
Lgica: Cincia do Raciocnio.
UFMG/ICEx/DCC
MD
Conceitos
44
Forma de um Argumento
Seu Contedo
Exemplo 1:
se a sintaxe de um programa est errada ou
se a execuo do programa resulta em diviso por zero
ento o computador ir gerar uma mensagem de erro.
.
. . Computador no gera mensagem de erro
x 2 e x 2.
UFMG/ICEx/DCC
MD
Conceitos
45
Forma de um Argumento
Seu Contedo
Nos exemplos, temos que o contedo dos argumentos diferente.
No entanto, a forma lgica a mesma:
se p ou q
ento r.
.
. . no r
no p e no q.
Argumentos na forma lgica so normalmente representados por letras
minsculas do alfabeto.
Exemplo: p, q, r.
Em geral, as definies da lgica formal esto de acordo com a lgica natural
ou intuitiva das pessoas de bom senso.
O formalismo introduzido para evitar ambiguidade e garantir consistncia.
UFMG/ICEx/DCC
MD
Conceitos
46
Proposies
Em toda teoria matemtica, usam-se termos j definidos na concepo de
novas definies.
Mas como fazer com os termos mais primitivos?
Termos primitivos ou iniciais no so definidos.
Em lgica, os termos sentena, verdadeiro, e falso so os termos iniciais
no definidos.
Definio: uma afirmao ou proposio uma sentena que verdadeira
(V) ou falsa (F) mas no ambas.
Exemplo 3:
2+2=4
2+2=5
so proposies, onde a primeira V e a segunda F.
UFMG/ICEx/DCC
MD
Conceitos
47
Proposies
Exemplo 4:
Ele um estudante universitrio.
no uma proposio j que depende da referncia ao pronome ele.
Exemplo 5:
x + y > 0.
tambm no uma proposio j que depende dos valores de x e y.
possvel transformar uma sentena como nos exemplos 4 ou 5 numa
proposio?
Sim, atravs de quantificadores, como ser visto em lgica de predicados.
UFMG/ICEx/DCC
MD
Conceitos
48
Proposies compostas
Nos exemplos usados daqui para frente, usaremos as letras minsculas (por
exemplo, p, q, r) para representar afirmaes.
Os seguintes smbolos podem ser usados para definir expresses lgicas
mais complexas a partir de expresses mais simples:
ou ou barra sobre a letra ou linha : no
p lido como no p e chamado de negao de p.
Outras formas: p, p, p0
: e
p q lido como p e q e chamado de conjuno de p e q.
: ou
p q lido como p ou q e chamado de disjuno de p e q.
UFMG/ICEx/DCC
MD
Conceitos
49
Proposies compostas
um operador unrio e e so operadores binrios.
Avaliao na seguinte ordem:
1. (negao);
2. , (disjuno, conjuno).
Exemplo 6:
p q = (p) q
p q r ambguo.
Correto: (p q) r ou
UFMG/ICEx/DCC
p (q r).
MD
Conceitos
50
Proposies:
Traduo de sentenas em linguagens natural e
algbrica para smbolos
Mas e No/nem . . . nem
p = Est quente.
q = Est ensolarado.
Exemplo 7:
(a) No est quente mas est ensolarado.
Mas = ; p q.
(b) No est quente nem ensolarado.
Nem A nem B = A B ; p q.
UFMG/ICEx/DCC
MD
Conceitos
51
Proposies:
Traduo de sentenas em linguagens natural e
algbrica para smbolos
e (), ou (), e desigualdades
Sejam trs nmeros reais representados por a, b, e x.
xax<ax=a
axbxaxb
2 x 1 x 2 x 1, que F.
Sejam os predicados:
p: x > 0;
q: x < 3;
r: x = 3.
(a) x 3 q r
(b) 0 < x < 3 p q
(c) 0 < x 3 p (q r)
UFMG/ICEx/DCC
MD
Conceitos
52
Proposies e os valores-verdade
Para uma sentena ser uma proposio necessrio ter um valor-verdade
bem definido, i.e., V ou F.
Negao () e sua tabela da verdade:
p p
V
UFMG/ICEx/DCC
MD
Conceitos
53
Proposies e os valores-verdade
Disjuno ()
Possveis significados:
inclusive: p ou q ou ambos (significado assumido para este operador), e
exclusivo: p ou q, mas no ambos.
p
V
V
F
F
UFMG/ICEx/DCC
MD
q
V
F
V
F
pq
V
V
V
F
Conceitos
54
q
V
F
V
F
pq
V
V
V
F
pq
V
F
F
F
(p q)
F
V
V
V
E
F
V
V
F
MD
Conceitos
55
Equivalncia lgica
As proposies p q e q p possuem os mesmos valores-verdade.
p
q
pq
qp
V
V
V
V
V
F
F
F
F
V
F
F
F
F
F
F
Por essa razo, p q e q p so equivalentes logicamente.
Definio: duas proposies P e Q so equivalentes logicamente se e somente se os valores-verdade obtidos forem idnticos para cada combinao
possvel das variveis que formam as proposies.
UFMG/ICEx/DCC
MD
Conceitos
56
Equivalncia lgica
Como verificar se duas proposies P e Q so equivalentes logicamente?
1. Construa a tabela da verdade para P .
2. Construa a tabela da verdade para Q usando os mesmos valores de variveis para as afirmaes que formam a proposio.
3. Verifique se as tabelas da verdade de P e Q so idnticas para cada
combinao de valores-verdade. Se forem, P e Q so equivalentes logicamente, caso contrrio no.
Exemplo 9:
(p) p
(p q) 6 p q
UFMG/ICEx/DCC
MD
Conceitos
57
Equivalncia lgica
Leis de De Morgan
Negao de e : Leis de De Morgan.
Sejam as afirmaes:
p = Joo alto.
q = Jos ruivo.
A proposio p q verdadeira sse os componentes forem verdadeiros.
Quando a proposio falsa?
Quando um dos componentes ou ambos forem falsos, i.e.,
(p q) p q
Mostre as seguintes equivalncias:
(p q) p q
(p q) p q
Essas duas equivalncias so conhecidas como leis de De Morgan que foi
o primeiro a express-las em termos matemticos.
UFMG/ICEx/DCC
MD
Conceitos
58
UFMG/ICEx/DCC
MD
Conceitos
59
UFMG/ICEx/DCC
MD
Conceitos
60
Tautologias e contradies
Uma tautologia uma proposio que sempre verdadeira independente dos
valores-verdade das afirmaes que compem a proposio.
Uma contradio uma proposio que sempre falsa independente dos
valores-verdade das afirmaes que compem a proposio.
De acordo com essas definies, a verdade de uma tautologia ou falsidade
de uma contradio se devem a estrutura lgica da proposio em si e so
independentes dos significados das afirmaes que compem a proposio.
UFMG/ICEx/DCC
MD
Conceitos
61
Tautologias e contradies
Mostre que a proposio p p uma tautologia e que a proposio p p
uma contradio.
Se t uma tautologia e c uma contradio mostre que p t p e p c c
UFMG/ICEx/DCC
MD
Conceitos
62
pq qp
pq qp
Associatividade
(p q) r
p (q r)
(p q) r
p (q r)
Distributividade
p (q r)
(p q) (p r)
p (q r)
(p q) (p r)
Identidade
ptp
pcp
Negao
p p t
p p c
Dupla negao
(p) p
Idempotncia
ppp
ppp
De Morgan
(p q)
p q
(p q)
p q
Limite universal
ptt
pcc
Absoro
p (p q) p
p (p q) p
Negaes
t c
c t
UFMG/ICEx/DCC
MD
Conceitos
63
UFMG/ICEx/DCC
MD
Conceitos
64
MD
Conceitos
65
Proposio condicional
um conectivo lgico binrio para o qual podem ser definidos valoresverdade.
Determinando a tabela da verdade para (seento).
A nica combinao em que a sentena condicional falsa quando a
hiptese V e a concluso F (por definio).
p
V
V
F
F
UFMG/ICEx/DCC
q
V
F
V
F
MD
Conceitos
pq
V
F
V
V
66
Proposio condicional
Seja a seguinte sentena que descreve uma promessa:
Se (voc se apresentar para trabalhar na segunda-feira pela
manh)=[p] ento (voc ter o emprego)=[q].
Em que situao o empregador no falou a verdade, ou seja, a promessa
(sentena) falsa?
p = V q = F.
E se a afirmao p no for satisfeita?
No justo dizer que a promessa falsa.
UFMG/ICEx/DCC
MD
Conceitos
67
UFMG/ICEx/DCC
MD
Conceitos
68
UFMG/ICEx/DCC
MD
Conceitos
69
Proposio condicional
Prioridade para o conectivo lgico :
ltimo a ser avaliado em expresses que contm
, , .
Exemplo 17:
Construa a tabela da verdade para a sentena p q p.
UFMG/ICEx/DCC
p q
p q p
MD
Conceitos
70
Proposio condicional
Exemplo 18:
Mostre que p q r (p r) (q r)
p
pq
pr
qr
pq r
(p r) (q r)
V
V
V
V
F
F
F
F
V
V
F
F
V
V
F
F
V
F
V
F
V
F
V
F
V
V
V
V
V
V
F
F
V
F
V
F
V
V
V
V
V
F
V
V
V
F
V
V
V
F
V
F
V
F
V
V
V
F
V
F
V
F
V
V
UFMG/ICEx/DCC
MD
Conceitos
71
Proposio condicional
possvel representar p q em termos dos conectivos , , ?
Sim.
p q p q
Negao:
(p q) (p q)
(p) q
p q
Exemplo 19:
a: Se o (meu carro est na oficina)=[p] ento (eu no posso ir aula)=[q].
a: (Meu carro est na oficina)=[p] e (eu posso ir aula)=[q].
UFMG/ICEx/DCC
MD
Conceitos
72
UFMG/ICEx/DCC
MD
Conceitos
73
pq qp
No.
converse opinion or statement is one that is the opposite to the one that has just been stated.
Collins Cobuild English Language Dictionary
UFMG/ICEx/DCC
MD
Conceitos
74
p q p q
No.
Exemplo 21:
Recproca: Se amanh segunda-feira ento hoje Pscoa.
Inversa: Se hoje no Pscoa ento amanh no segunda-feira.
UFMG/ICEx/DCC
MD
Conceitos
75
Proposio contrapositiva
(p q) 6 (q p)
Proposio oposta
(p q) 6 (p q)
Proposio inversa
(q p) (p q)
contrapositiva
oposta de (p q)
UFMG/ICEx/DCC
inversa de (p q)
MD
Conceitos
76
Proposio condicional:
Somente se
A sentena p somente se q significa que (acrescentado verbos):
p [pode ocorrer] somente se q [ocorre].
.
. . Se q no ocorre ento p no pode ocorrer, i.e.,
Se q ento p Se p ento q ou p q.
Proposies condicionais:
p somente se q 6 p se q.
p somente se q p q.
p se q q p.
UFMG/ICEx/DCC
MD
Conceitos
77
Proposio condicional:
Somente se
Exemplo 22:
(48 divisvel por 6)=[p] somente se (48 divisvel por 3)=[q]
Se (48 divisvel por 6)=[p] ento (48 divisvel por 3)=[q].
Neste caso, a proposio condicional p q sempre verdadeira j que p e
q sempre assumem o valor verdadeiro.
Suponha que x seja um nmero inteiro e a seguinte proposio:
(x divisvel por 6)=[p] somente se (x divisvel por 3)=[q]
Se (x divisvel por 6)=[p] ento (x divisvel por 3)=[q].
Claramente existem valores para x que fazem com que a proposio seja
verdadeira e outros que seja falsa.
UFMG/ICEx/DCC
MD
Conceitos
78
Proposio condicional:
Somente se
Exemplo 23:
(n+1)(n+2)
]
somente
se
a
soma
de
1
a
n+1
[
]
A soma de 1 a n [ n(n+1)
2
2
(n+1)(n+2)
Se a soma de 1 a n [ n(n+1)
]
ento
a
soma
de
1
a
n
+
1
[
]
2
2
Exemplo 24:
Posso comprar o livro de MD somente se tenho dinheiro
Se posso comprar o livro de MD ento tenho dinheiro.
UFMG/ICEx/DCC
MD
Conceitos
79
Proposio condicional:
Bicondicional (se somente se)
A sentena bicondicional entre p e q expressa como
p se e somente se q
e representada por
pq
e tem a seguinte tabela da verdade:
p
V
V
F
F
UFMG/ICEx/DCC
q
V
F
V
F
MD
Conceitos
pq
V
F
F
V
80
Proposio condicional:
Bicondicional (se somente se)
O conectivo tem a mesma prioridade do conectivo .
Exemplo 25:
Mostre que p q (p q) (q p)
UFMG/ICEx/DCC
pq
qp
pq
(p q) (q p)
V
V
F
F
V
F
V
F
V
F
V
V
V
V
F
V
V
F
F
V
V
F
F
V
MD
Conceitos
81
Proposio condicional:
Bicondicional (se somente se)
Exemplo 26:
Este programa est correto se somente se ele produz a resposta correta para todos os possveis valores de dados de entrada.
Reescrevendo como uma conjuno de duas sentenas seento:
Se este programa est correto ento ele produz a resposta correta
para todos os possveis valores de dados de entrada
e
se o programa produz a resposta correta para todos os possveis valores de dados de entrada ento ele est correto.
UFMG/ICEx/DCC
MD
Conceitos
82
Proposio condicional:
Bicondicional (se somente se)
p q (p q) (q p).
UFMG/ICEx/DCC
pq
(p q)
(q p)
(p q) (q p)
V
V
F
F
V
F
V
F
V
F
F
V
V
F
V
V
V
V
F
V
V
F
F
V
MD
Conceitos
83
Proposio condicional:
Condio necessria & Condio suficiente
Sejam r e s afirmaes.
r uma condio suficiente para s:
se r ento s.
.
. . A ocorrncia de r suficiente para garantir a ocorrncia de s.
r uma condio necessria para s:
se no r ento no s
se s ento r.
.
. . Se r no ocorrer ento s tambm no pode ocorrer, i.e., a ocorrncia de r
necessria para se ter a ocorrncia de s.
A frase
r uma condio necessria e suficiente para s significa r se somente
se s.
UFMG/ICEx/DCC
MD
Conceitos
84
Proposio condicional:
Condio necessria & Condio suficiente
Exemplo 27:
Considere a sentena condicional p q:
Se Joo elegvel para votar ento ele tem pelo menos 16 anos.
p: Joo elegvel para votar.
q: Joo tem pelo menos 16 anos.
A verdade de p suficiente para garantir a verdade de q, ou seja,
Joo ser elegvel para votar condio suficiente para que ele tenha
pelo menos 16 anos.
A condio q necessria para a condio p ser verdadeira, ou seja,
Joo ter pelo menos 16 anos condio necessria para que ele seja
elegvel para votar.
UFMG/ICEx/DCC
MD
Conceitos
85
Proposio condicional:
Condio necessria & Condio suficiente
Exemplo 28:
Converta uma condio suficiente para a forma seento
O nascimento de Joo em solo brasileiro uma condio suficiente para
ele ser cidado brasileiro.
Se Joo nasceu em solo brasileiro ento ele um cidado brasileiro.
Exemplo 29:
Converta uma condio necessria para a forma seento
Joo ter 35 anos uma condio necessria para ser presidente do Brasil.
Se Joo no tem 35 anos ento ele no pode ser presidente do Brasil.
Se Joo pode ser o presidente do Brasil ento ele j tem pelo menos 35
anos.
UFMG/ICEx/DCC
MD
Conceitos
86
UFMG/ICEx/DCC
MD
Conceitos
87
MD
Conceitos
88
UFMG/ICEx/DCC
MD
Conceitos
89
Tabela da verdade:
p (q r);
r;
.
. . p q.
1.
2.
3.
4.
5.
6.
7.
8.
qr
V
V
V
V
F
F
F
F
V
V
F
F
V
V
F
F
V
F
V
F
V
F
V
F
V
V
V
F
V
V
V
F
Premissas
p (q r) r
V
V
V
V
V
V
V
F
F
V
F
V
F
V
F
V
Concluso
pq
V
V
V
V
V
V
F
F
Todas as linhas exceto as linhas crticas so irrelevantes para verificar a validade de um argumento.
UFMG/ICEx/DCC
MD
Conceitos
90
q r
pr
V
V
V
V
F
F
F
F
V
V
F
F
V
V
F
F
V
F
V
F
V
F
V
F
F
V
F
V
F
V
F
V
V
V
F
V
V
V
F
V
V
F
V
F
F
F
F
F
Premissas
p q r q p r
V
V
F
V
V
V
V
V
V
F
V
V
F
F
V
V
Concluso
pr
V
V
V
MD
Conceitos
91
Tabela da verdade:
1.
2.
3.
4.
5.
6.
7.
8.
V
V
V
V
F
F
F
F
V
V
F
F
V
V
F
F
V
F
V
F
V
F
V
F
Premissas
pq qr rp
V
V
F
F
V
V
V
V
V
F
V
V
V
F
V
V
V
V
V
V
F
V
F
V
Concluso
pqr
V
Existem duas linhas crticas, uma delas com concluso falsa. Logo, o argumento invlido.
UFMG/ICEx/DCC
MD
Conceitos
92
UFMG/ICEx/DCC
MD
Conceitos
93
Forma do argumento:
p q;
p;
1.
2.
3.
4.
.
. . q.
UFMG/ICEx/DCC
MD
V
V
F
F
V
F
V
F
Conceitos
Premissas
pq p
V
F
V
V
V
V
F
F
Concluso
q
V
F
V
F
94
(1)
(2)
.
. . Zeus no humano.
Suponha que as afirmaes (1) e (2) sejam verdadeiras.
Zeus deve ser necessariamente no-humano?
Sim!
Porque se Zeus fosse humano ento de acordo com (1) ele seria mortal.
Mas por (2) ele no mortal.
Dessa forma, Zeus no pode ser humano.
Um argumento vlido que tem essa forma chamado de modus tollens em
Latim e que significa mtodo de negar.
UFMG/ICEx/DCC
MD
Conceitos
95
UFMG/ICEx/DCC
MD
Conceitos
96
(b)
1.
2.
3.
4.
Forma do argumento:
p;
.
. . p q.
q;
. . p q.
.
Premissa
p
V
V
F
F
V
F
V
F
V
V
F
F
Concluso
pq
V
V
V
F
UFMG/ICEx/DCC
MD
Conceitos
97
(b)
1.
2.
3.
4.
Forma do argumento:
p q;
.
. . p.
p q;
. . q.
.
Premissa
pq
V
V
F
F
V
F
V
F
V
F
F
F
Concluso
p
V
V
V
F
UFMG/ICEx/DCC
MD
Conceitos
98
(b)
p q;
p;
.
. . q.
Forma do argumento:
p q;
q;
.
. . p.
1.
2.
3.
4.
V
V
F
F
V
F
V
F
Premissas
p q q
V
V
V
F
F
V
F
V
Concluso
p
V
V
F
F
MD
Conceitos
99
UFMG/ICEx/DCC
MD
Conceitos
100
V
V
V
V
F
F
F
F
V
V
F
F
V
V
F
F
V
F
V
F
V
F
V
F
q r;
.
. . p r.
vlida.
1.
2.
3.
4.
5.
6.
7.
8.
Premissas
pq qr
V
V
F
F
V
V
V
V
V
F
V
V
V
F
V
V
Concluso
pr
V
F
V
F
V
V
V
V
UFMG/ICEx/DCC
MD
Conceitos
101
UFMG/ICEx/DCC
MD
Conceitos
102
UFMG/ICEx/DCC
1.
2.
3.
4.
5.
6.
7.
8.
V
V
V
V
F
F
F
F
V
V
F
F
V
V
F
F
V
F
V
F
V
F
V
F
MD
Conceitos
Premissas
pq pr q r
V
V
V
V
V
V
F
F
V
F
V
F
V
V
V
V
V
F
V
V
V
F
V
V
Concluso
r
V
F
V
F
V
F
V
F
103
UFMG/ICEx/DCC
MD
Conceitos
104
Exemplo 40:
Voc est saindo para a escola de manh e
percebe que no est usando os culos. Ao
tentar descobrir onde esto os culos voc
comea a pensar sobre os seguintes fatos que
so verdadeiros:
(a) Se os meus culos esto na mesa da cozinha ento eu os vi no caf da manh;
(b) Eu estava lendo o jornal na sala de estar
ou eu estava lendo o jornal na cozinha;
(c) Se eu estava lendo o jornal na sala de
estar ento meus culos esto na mesa
do caf;
(d) Eu no vi meus culos no caf da manh;
(e) Se eu estava lendo um livro na cama ento meus culos esto no criado-mudo;
(f) Se eu estava lendo o jornal na cozinha
ento meus culos esto na mesa da cozinha;
UFMG/ICEx/DCC
MD
Conceitos
(b) r s
(e) u v
(c) r t
(f) s p
105
(b) r s
(e) u v
(c) r t
(f) s p
1.
2.
p q;
q
.
. . p
(a)
s p;
p
.
. . s
(f)
3.
(d)
Modus Tollens
4.
Concluso de 1.
Modus Tollens
r s;
s
.
.. r
(b)
r t;
r
.
.. t
(c)
Concluso de 2.
Silogismo disjuntivo
Concluso de 3.
Modus Ponens
.
. . t verdadeiro e os culos esto na mesa do caf.
UFMG/ICEx/DCC
MD
Conceitos
106
UFMG/ICEx/DCC
MD
Conceitos
107
UFMG/ICEx/DCC
MD
Conceitos
108
MD
Conceitos
109
q
p
pq
.
. . p q
(a)
(b)
Silogismo disjuntivo
Concluso acima
(b)
(c)
p=Feq=V
UFMG/ICEx/DCC
MD
Conceitos
110
Falcias
Falcia = erro no raciocnio que resulta num argumento invlido.
Falcias comuns:
Usar uma premissa vaga ou ambgua;
Assumir como verdadeiro o que deve ser provado;
Concluir uma premissa sem uma argumentao adequada;
Erro oposto;
Erro inverso.
Como mostrar que um argumento invlido?
Construir a tabela da verdade e achar uma linha crtica com a concluso
falsa.
Achar um argumento com premissas verdadeiras e concluso falsa.
Para um argumento ser vlido, qualquer argumento da mesma forma que
tem premissas verdadeiras deve ter uma concluso verdadeira.
UFMG/ICEx/DCC
MD
Conceitos
111
Erro oposto
Exemplo 43:
Se Zeca um gnio
ento Zeca senta na primeira carteira na sala de aula;
Zeca senta na primeira carteira na sala de aula;
.
. . Zeca um gnio.
UFMG/ICEx/DCC
MD
Conceitos
112
Erro oposto
Forma do argumento :
p q;
q;
1.
2.
3.
4.
. . p.
V
V
F
F
V
F
V
F
Premissas
pq q
V
F
V
V
V
F
V
F
Concluso
p
V
V
F
F
UFMG/ICEx/DCC
MD
Conceitos
113
Erro inverso
Exemplo 44:
Se as taxas de juro subirem
ento os preos das aes iro cair;
As taxas de juro no esto subindo;
.
. . Os preos das aes no iro cair.
A forma geral do argumento acima :
p q;
p;
.
. . q.
UFMG/ICEx/DCC
MD
Conceitos
114
Erro inverso
Forma do argumento :
p q;
p;
1.
2.
3.
4.
. . q.
V
V
F
F
V
F
V
F
Premissas
p q p
V
F
V
V
F
F
V
V
Concluso
q
F
V
F
V
UFMG/ICEx/DCC
MD
Conceitos
115
Validade Verdade
Validade uma propriedade da forma de um argumento.
Se um argumento vlido
ento tambm todo argumento que tem a mesma forma.
Exemplo 45 Argumento vlido com uma concluso falsa:
Se John Lennon era uma estrela do rock
ento ele tinha cabelo ruivo;
John Lennon era uma estrela do rock;
.
. . John Lennon tinha cabelo ruivo.
Argumento vlido de acordo com modus ponens. No entanto, a primeira
premissa falsa assim como a concluso.
Exemplo 46 Argumento invlido com uma concluso verdadeira:
Se Nova York uma cidade grande
ento Nova York tem edifcios altos;
Nova York tem edifcios altos;
.
. . Nova York uma cidade grande.
Argumento invlido (erro oposto) mas com a concluso verdadeira.
UFMG/ICEx/DCC
MD
Conceitos
116
Tabela da verdade:
p
UFMG/ICEx/DCC
Premissa
Concluso
p c
1.
2.
MD
Conceitos
117
Honestos Desonestos
Exemplo 47 Uma ilha possui um de dois tipos de pessoas:
A diz: B honesto.
B diz: A e eu somos de tipos opostos.
Suponha que A honesto.
.
. . O que A diz verdade;
.
. . B tambm honesto;
.
. . O que B diz verdade;
.
. . A e B so de tipos honestos;
.
. . Chegou-se a uma contradio:
A e B so honestos e A e B so desonestos.
.
. . A suposio falsa;
.
. . A no honesto;
.
. . A desonesto;
.
. . O que A diz falso;
.
. . B no honesto;
.
. . B tambm desonesto.
UFMG/ICEx/DCC
MD
Conceitos
118
S ILOGISMO DISJUNTIVO
p q;
p q;
q;
p;
.
.
. . p.
. . q.
M ODUS TOLLENS
p q;
q;
.
. . p.
S ILOGISMO HIPOTTICO
p q;
q r;
.
. . p r.
A DIO DISJUNTIVA
p;
.
. . p q.
D ILEMA
p q;
p r;
q r;
.
. . r.
q;
. . p q.
.
S IMPLIFICAO CONJUNTIVA
p q;
p q;
.
.
. . p.
. . q.
C ONTRADIO
p c;
.
. . p.
A DIO CONJUNTIVA
p;
q;
.
. . p q.
UFMG/ICEx/DCC
MD
Conceitos
119
Claude Shannon (19162001), matemtico americano, considerado o cientista que estabeleceu os fundamentos da teoria da informao moderna, com a publicao em 1948 do trabalho
intitulado Mathematical Theory of Communication. Nesse trabalho ele observa que the fundamental problem of communication is that of reproducing at one point either exactly or approximately a message selected at another point. Os fundamentos propostos nesse trabalho so
usados integralmente hoje em dia em reas como redes de computadores e recuperao da
informao.
Antes disso, Shannon observa a analogia entre operaes de dispositivos de chaveamento
(por exemplo, chaves ou interruptores) e operaes de conectivos lgicos. Ele usa essa analogia com muito sucesso para resolver problemas de projetos de circuitos lgicos e apresenta
os resultados na sua dissertao de mestrado (A Symbolic Analysis of Relay and Switching
Circuits) do MIT em 1938.
UFMG/ICEx/DCC
MD
Conceitos
120
MD
Conceitos
121
Chaves
P
Q
Fechada
Fechada
Aberta
Aberta
Fechada
Aberta
Fechada
Aberta
UFMG/ICEx/DCC
Lmpada
Estado
Chaves
P
Q
Acesa
Apagada
Apagada
Apagada
Fechada
Fechada
Aberta
Aberta
MD
Conceitos
Fechada
Aberta
Fechada
Aberta
Lmpada
Estado
Acesa
Acesa
Acesa
Apagada
122
Fechada
Aberta
Fechada
Aberta
Lmpada
Estado
Chaves
P
Q
Acesa
Apagada
Apagada
Apagada
Fechada
Fechada
Aberta
Aberta
Fechada
Aberta
Fechada
Aberta
Lmpada
Estado
Acesa
Acesa
Acesa
Apagada
(conjuno);
(disjuno).
UFMG/ICEx/DCC
MD
Conceitos
123
UFMG/ICEx/DCC
MD
Conceitos
Circuito integrado.
Tambm chamado de microchip
ou chip uma miniaturizao de dispositivos semicondutores e componentes passivos manufaturados na superfcie de um substrato extremamente fino de um material semicondutor. Abaixo, uma
imagem do processador Intel
Core Duo otimizado para aplicaes multi-threaded e multitarefa.
124
UFMG/ICEx/DCC
MD
Conceitos
125
UFMG/ICEx/DCC
MD
Conceitos
126
Lgica de
Proposies Quantificadas
Clculo de Predicados
Antonio Alfredo Ferreira Loureiro
loureiro@dcc.ufmg.br
http://www.dcc.ufmg.br/~loureiro
UFMG/ICEx/DCC
MD
Conceitos
127
Introduo
J estudamos anlise de proposies compostas, i.e., proposies simples
ligadas por conectivos , , , , .
Este tipo de anlise no suficiente para determinar a validade da maioria
das situaes matemticas e do dia-a-dia.
Todos seres humanos so mortais;
Scrates um ser humano;
.
. . Scrates mortal.
Argumento intuitivamente correto.
Validade no pode ser obtida usando os mtodos j vistos.
Validade determinada separando as proposies em partes.
Vocbulos que denotam quantidades TODOS e ALGUNS tm uma funo
especial na anlise.
Clculo de predicados: rea que trata da anlise simblica de predicados e
proposies quantificadas.
Clculo de proposies ou clculo proposicional: rea que trata da anlise de
proposies compostas.
UFMG/ICEx/DCC
MD
Conceitos
128
UFMG/ICEx/DCC
MD
Conceitos
129
UFMG/ICEx/DCC
MD
Conceitos
130
UFMG/ICEx/DCC
MD
Conceitos
131
UFMG/ICEx/DCC
MD
Conceitos
132
UFMG/ICEx/DCC
MD
Conceitos
133
Quantificadores: e
Como transformar predicados em proposies?
Atribuir valores especficos para todas variveis.
Usar quantificadores.
Definio: Quantificadores so palavras/expresses que referem a quantidades tais como todos e alguns e indicam para quantos elementos do
domnio um dado predicado verdadeiro.
UFMG/ICEx/DCC
MD
Conceitos
134
Quantificadores: e
: denota para todos e chamado de quantificador universal.
Exemplo 3:
seres humanos x, x mortal.
x S, x mortal
onde S o conjunto de todos seres humanos.
: denota existe e chamado de quantificador existencial.
Exemplo 4:
uma pessoa s | s um estudante de AEDS I.
s S, | s um estudante de AEDS I.
onde S o conjunto de todas as pessoas.
UFMG/ICEx/DCC
MD
Conceitos
135
Proposio universal
Definio: Seja Q(x) um predicado e D o domnio de x. Uma proposio
universal uma proposio da forma x D, Q(x).
A proposio universal verdadeira sse Q(x) verdadeiro para todo x em
D.
A proposio universal falsa sse Q(x) falso para pelo menos um x em
D.
O valor de x para o qual Q(x) falso chamado de contra-exemplo
para a proposio universal.
UFMG/ICEx/DCC
MD
Conceitos
136
Proposio universal
Verifique se a proposio universal verdadeira ou falsa:
(a) Seja D = {1, 2, 3, 4, 5} e a proposio x D, x2 x.
12 1, 22 2, 32 3, 42 4, 52 5
.
. . a proposio x D, x2 x verdadeira.
Mtodo da exausto.
(b) x R, x2 x.
.
. . a proposio falsa.
UFMG/ICEx/DCC
1
1
1 2
( ) = 6
2
4
2
MD
Conceitos
137
Proposio existencial
Definio: Seja Q(x) um predicado e D o domnio de x. Uma proposio
existencial uma proposio da forma x D | Q(x).
A proposio existencial verdadeira sse Q(x) verdadeiro para pelo
menos um x em D.
A proposio existencial falsa sse Q(x) falso para todo x em D.
Verifique se a proposio existencial verdadeira ou falsa:
(a) m Z | m2 = m.
12 = 1.
.
. . m2 = m para pelo menos um inteiro m e a proposio m
Z | m2 = m verdadeira.
(b) Seja E = {5, 6, 7, 8, 9, 10} e a proposio
m E | m2 = m.
52 = 25 6= 5 62 = 36 6= 6 72 = 49 6= 7
82 = 64 6= 8 92 = 81 6= 9 102 = 100 6= 10
.
. . a proposio m E | m2 = m falsa.
UFMG/ICEx/DCC
MD
Conceitos
138
UFMG/ICEx/DCC
MD
Conceitos
139
MD
Conceitos
140
MD
Conceitos
141
MD
Conceitos
142
UFMG/ICEx/DCC
MD
Conceitos
143
MD
Conceitos
144
UFMG/ICEx/DCC
MD
Conceitos
145
UFMG/ICEx/DCC
MD
Conceitos
146
UFMG/ICEx/DCC
MD
Conceitos
147
UFMG/ICEx/DCC
MD
Conceitos
148
MD
Conceitos
149
MD
Conceitos
150
(a) (b)
No. Em geral, ao se trocar a ordem dos quantificadores na sentena o sentido muda.
UFMG/ICEx/DCC
MD
Conceitos
151
UFMG/ICEx/DCC
MD
L+
Conceitos
152
UFMG/ICEx/DCC
MD
Conceitos
153
UFMG/ICEx/DCC
MD
Conceitos
154
Anlogo a De Morgan.
UFMG/ICEx/DCC
MD
Negao
Conceitos
155
A relao entre , , ,
Seja o predicado Q(x),
onde x tem domnio D = {x1, x2, . . . , xn}.
Proposio universal uma generalizao da conjuno ():
x D, Q(x) Q(x1) Q(x2) . . . Q(xn)
Exemplo 20: Q(x) : x x, D = {0, 1}
x D, Q(x) Q(0) Q(1)
Proposio existencial uma generalizao da disjuno ():
x D tal que Q(x) Q(x1) Q(x2) . . . Q(xn)
Exemplo 21: Q(x) : x + x, D = {0, 1}
x D tal que Q(x) Q(0) Q(1)
UFMG/ICEx/DCC
MD
Conceitos
156
UFMG/ICEx/DCC
MD
Conceitos
157
UFMG/ICEx/DCC
MD
Conceitos
158
Condio somente se
x, R(x) somente se S(x)
x, se S(x) ento R(x)
x, se R(x) ento S(x).
Exemplo 28:
O produto de dois nmeros zero somente se um dos nmeros zero.
x, se os dois nmeros so diferentes de zero ento o produto dos dois
nmeros diferente de zero.
x, se o produto de dois nmeros zero ento um dos nmeros zero.
UFMG/ICEx/DCC
MD
Conceitos
159
UFMG/ICEx/DCC
MD
Conceitos
160
UFMG/ICEx/DCC
MD
Conceitos
161
UFMG/ICEx/DCC
MD
Conceitos
162
UFMG/ICEx/DCC
MD
Conceitos
163
UFMG/ICEx/DCC
MD
Conceitos
164
MD
Conceitos
165
.
. . A forma do argumento vlida.
UFMG/ICEx/DCC
MD
Conceitos
166
Premissa Menor
mortais
mortais
Zeus
seres humanos
mortais
Zeus
seres humanos
.
. . A forma do argumento vlida.
UFMG/ICEx/DCC
MD
Conceitos
167
Premissa Maior
Premissa Menor
mortais
mortais
Felix
seres humanos
UFMG/ICEx/DCC
MD
Conceitos
168
mortais
mortais
Felix
Felix
seres humanos
seres humanos
.
. . A forma do argumento invlida.
UFMG/ICEx/DCC
MD
Conceitos
169
UFMG/ICEx/DCC
MD
Conceitos
170
UFMG/ICEx/DCC
MD
Conceitos
171
funes com
assntotas horizontais
essa funo
.
. . A forma do argumento vlida.
UFMG/ICEx/DCC
MD
Conceitos
172
UFMG/ICEx/DCC
MD
Conceitos
173
MD
Conceitos
174
Mtodos de Prova
Antonio Alfredo Ferreira Loureiro
loureiro@dcc.ufmg.br
http://www.dcc.ufmg.br/~loureiro
UFMG/ICEx/DCC
MD
Conceitos
175
Introduo
Objetivo: ter preciso de pensamento e linguagem para obter a certeza
matemtica a respeito de um determinado problema.
Mtodos de prova:
Prova direta
Contra-exemplo
Diviso em casos
Prova por contradio
Prova por contraposio
UFMG/ICEx/DCC
MD
Conceitos
176
MD
Conceitos
177
UFMG/ICEx/DCC
MD
Conceitos
178
MD
Conceitos
179
UFMG/ICEx/DCC
MD
Conceitos
180
=
=
=
=
2
5
7
11
+
+
+
+
2
7
13
17
6
14
22
30
=
=
=
=
3
11
5
11
+
+
+
+
3
3
17
19
8=3+ 5
16 = 5 + 11
24 = 5 + 19
10 = 5 + 5
18 = 7 + 11
26 = 7 + 19
MD
Conceitos
181
MD
Conceitos
182
Prova direta
1. Expresse a afirmao a ser provada na forma x D, P (x) Q(x).
[Geralmente feito mentalmente]
2. Comece a prova supondo que x um elemento especfico de D mas escolhido arbitrariamente para o qual a hiptese P (x) V. [Normalmente abreviado
para Suponha x D e P (x)]
UFMG/ICEx/DCC
MD
Conceitos
183
MD
Conceitos
184
UFMG/ICEx/DCC
MD
Conceitos
185
Erros comuns
Argumentar a partir de exemplos:
Exemplo incorreto da prova do teorema:
Se m = 14 e n = 6 ento m + n = 20 que par e m n = 8 que
tambm par.
Usar a mesma letra para representar duas coisas diferentes
Pular para uma concluso:
Alegar a verdade de alguma coisa sem dar uma razo adequada.
Exemplo: Suponha que m e n sejam inteiros e que m + n par. Pela
definio de par, m + n = 2k para algum inteiro k. Ento m = 2k n e
assim m n par.
UFMG/ICEx/DCC
MD
Conceitos
186
Erros comuns
Usando a questo a ser provada:
Assumir como verdadeiro o que deve ser provadovariao de pular para
uma concluso. Exemplo:
Suponha m e n so nmeros mpares.
Se m n mpar, ento m n = 2k + 1 para algum inteiro k.
Tambm pela definio de mpar, m = 2a + 1 e n = 2b + 1 para inteiros
a e b.
Ento m n = (2a + 1)(2b + 1) = 2k + 1, que mpar por definio.
Uso incorreto do vocbulo SE.
Exemplo: Suponha que p um nmero primo. Se p primo, ento p no
pode ser escrito como o produto de dois nmeros menores que so inteiro.
O vocbulo SE, nesta ltima sentena, coloca em dvida se de fato p
primo ou no.
UFMG/ICEx/DCC
MD
Conceitos
187
UFMG/ICEx/DCC
MD
Conceitos
188
Prova e contra-exemplo
ltimo Teorema de Fermat:
No existem inteiros positivos x, y, z e n 3 tais que xn + y n = z n.
Teorema e no existe contra-exemplo.
Conjectura de Goldbach (16901764)
Todo inteiro maior que 2 pode ser representado como uma soma de dois
primos.
Conjectura j verificada por um programa de computador para nmeros at
1017 (Maro de 2010). Veja mais informaes na pgina de Toms Oliveira
e Silva da Universidade do Aveiro, Portugal, em http://www.ieeta.pt/
~tos/goldbach.html.
No quer dizer que seja verdade para todos os nmeros entre 1017 e .
UFMG/ICEx/DCC
MD
Conceitos
189
Prova e contra-exemplo
Seja p(n) = n2 + n + 41.
Conjectura: n N, p(n) primo.
Evidncia:
n
0
1
2
3
...
20
p(n)
41
43
47
53
...
461
Isto no pode ser uma coincidncia!
A hiptese deve ser verdadeira!
Mas no , p(40) = 1681, que no primo!
...
...
39
1601
UFMG/ICEx/DCC
MD
Conceitos
190
Prova e contra-exemplo
Hiptese:
313 (x3 + y 3) = z 3
no tem soluo no conjunto dos nmeros inteiros.
UFMG/ICEx/DCC
MD
Conceitos
191
UFMG/ICEx/DCC
MD
Conceitos
192
UFMG/ICEx/DCC
MD
Conceitos
193
UFMG/ICEx/DCC
MD
Conceitos
194
MD
Conceitos
195
MD
Conceitos
196
Definies
Sejam n e d inteiros e d 6= 0.
n divisvel por d sse n = d k para algum inteiro k.
Alternativamente, podemos dizer que:
n mltiplo de d, ou
d um fator de n, ou
d um divisor de n, ou
d divide n.
A notao d|n deve ser lida como d divide n. Simbolicamente, se n e d so
inteiros e d 6= 0,
d|n um inteiro k tal que n = d k.
UFMG/ICEx/DCC
MD
Conceitos
197
MD
Conceitos
198
UFMG/ICEx/DCC
MD
Conceitos
199
UFMG/ICEx/DCC
MD
Conceitos
200
Divisibilidade e contra-exemplos
Prove ou disprove a seguinte afirmao:
Para todos inteiros a e b, se a|b e b|a ento a = b.
Soluo:
Suponha que a e b so inteiros [especficos mas escolhidos arbitrariamente] tais
que a|b e b|a.
Pela definio de divisibilidade, as condies b|a e a|b podem ser escritas
como
b = k a e a = l b para inteiros k e l.
Por substituio e lgebra temos que:
b = k a = k (l b) = (k l) b
J que b|a e b 6= 0, tem-se que
1=kl
Em outras palavras, k e l so divisores de 1. Mas os nicos divisores de
1 so 1 e 1. Logo, k e l so ambos 1 ou 1. Se k = l = 1 ento
a = b = 1. Mas se k = l = 1 ento b = a e assim a 6= b.
UFMG/ICEx/DCC
MD
Conceitos
201
Divisibilidade e contra-exemplos
De onde se conclui que a afirmao acima falsa.
Comentrio: em muitos casos a busca por uma prova ajuda a descobrir um
contra-exemplo.
UFMG/ICEx/DCC
MD
Conceitos
202
UFMG/ICEx/DCC
MD
Conceitos
203
UFMG/ICEx/DCC
MD
Conceitos
204
UFMG/ICEx/DCC
MD
Conceitos
205
UFMG/ICEx/DCC
MD
Conceitos
206
a b
igual (em valor absoluto) rea
c d
do paralelograma cujos vrtices so (0, 0), (a, b), (c, d) e (a + c, b + d). (Este
o paralelograma baseado nos vetores = (a, b) e = (c, d).) Mostre que a
rea do paralelograma igual a |ad bc|.
O determinante ad bc da matriz
UFMG/ICEx/DCC
MD
Conceitos
207
UFMG/ICEx/DCC
MD
Conceitos
208
MD
Conceitos
209
UFMG/ICEx/DCC
MD
Conceitos
210
UFMG/ICEx/DCC
MD
Conceitos
211
UFMG/ICEx/DCC
MD
Conceitos
212
UFMG/ICEx/DCC
MD
Conceitos
213
UFMG/ICEx/DCC
MD
Conceitos
214
UFMG/ICEx/DCC
MD
Conceitos
215
MD
Conceitos
216
UFMG/ICEx/DCC
MD
Conceitos
217
UFMG/ICEx/DCC
MD
Conceitos
218
Sequncias
Induo Matemtica
Antonio Alfredo Ferreira Loureiro
loureiro@dcc.ufmg.br
http://www.dcc.ufmg.br/~loureiro
UFMG/ICEx/DCC
MD
Conceitos
219
Introduo
Uma das tarefas mais importantes da matemtica descobrir e caracterizar
padres regulares.
Sequncia: estrutura matemtica mais importante para estudar processos
repetidos.
Induo matemtica: ferramenta matemtica mais importante para verificar
conjecturas sobre padres de termos em sequncias.
UFMG/ICEx/DCC
MD
Conceitos
220
sequncias
Exemplo: Nmero de ancestraisUm limite superior
Gerao 1 2 3 4
5
6
7. . .
# ancestrais 2 4 8 16 32 64 128. . .
Mais definies:
Termo: cada elemento de uma sequncia.
Exemplo: a1, a2, a3, . . . , an
ndice ou subscrito: indica a posio do termo na sequncia.
Exemplo: O nmero 3 no termo a3 indica o terceiro elemento da sequncia.
Sequncia finita: possui um conjunto finito de termos.
Sequncia infinita: possui um conjunto infinito de termos.
Exemplo: a1, a2, a3, . . .
Frmula explcita ou frmula geral: a regra que mostra como os valores
de ak podem ser obtidos a partir de k.
UFMG/ICEx/DCC
MD
Conceitos
221
bi =
i1
i
para inteiros i 2
1 = 1 b = 21 = 1
a1 = 1+1
2
2
2
2
2 = 2 b = 31 = 2
a2 = 2+1
3
3
3
3
3 = 3 b = 41 = 3
a3 = 3+1
4
4
4
4
...
...
MD
Conceitos
222
UFMG/ICEx/DCC
MD
Conceitos
223
1
4,
1, 1 ,
9
16
1,
25
...
pode ser
(1)k+1
para inteiros k 1
ak =
2
k
ou
(1)k
ak =
para inteiros k 0
2
(k + 1)
UFMG/ICEx/DCC
MD
Conceitos
224
ak = a
+ a2 + a{z3 + . . . + an}
|1
Forma expandida
UFMG/ICEx/DCC
MD
Conceitos
225
Exemplos
n
X
(1)k
1
1 1
(1)n
= 1 + + ... +
k+1
2
3 4
n+1
k=0
n
X
2
3
n+1
1
k+1
+
+
+ ... +
=
n
n+1
n+2
2n
n+k
k=0
n
X
k
k+1
1 n+1
)=
k+1 k+2
2 n+2
k=1
UFMG/ICEx/DCC
MD
Conceitos
226
Mudana de varivel
Observe que
3
X
k 2 = 1 2 + 22 + 32
k=1
e que
3
X
i2 = 1 2 + 2 2 + 3 2
i=1
Logo,
3
X
k2 =
3
X
i2
i=1
k=1
3
X
(j 1)2 =
k2
k=1
MD
Conceitos
227
Mudana de varivel
Substitua k + 1 na soma abaixo por j:
6
X
1
k+1
k=0
Passos:
(a) Calcule os novos limites do somatrio:
Para k = 0, j = 1.
Para k = 6, j = 7.
(b) Calcule o termo geral:
Como j = k + 1, ento k = j 1
Logo,
1
1
1
=
=
k+1
(j 1) + 1
j
A soma pode ser reescrita como:
6
X
7
X
1
1
=
k
+
1
j=1 j
k=0
UFMG/ICEx/DCC
MD
Conceitos
228
ak
k=1
Exemplos:
5
Y
k = 1 2 3 4 5 = 120
k=1
3
Y
1 2 3
6
k
= =
k+1
2 3 4
24
k=1
UFMG/ICEx/DCC
MD
Conceitos
229
1.
n
X
ak +
k=m
n
X
bk =
k=m
n
X
(ak + bk )
k=m
2.
c
n
X
ak =
n
X
c ak
k=m
k=m
3.
(
n
Y
k=m
UFMG/ICEx/DCC
ak ) (
n
Y
bk ) =
k=m
MD
Conceitos
n
Y
(ak bk )
k=m
230
1. P (n0) V.
2. Para todos inteiros k n0,
se P (k) V ento P (k + 1) V.
Logo, a afirmao
para todos inteiros n n0, P (n)
V.
P(n)
n0
UFMG/ICEx/DCC
Inteiros
MD
Conceitos
231
UFMG/ICEx/DCC
MD
Conceitos
232
UFMG/ICEx/DCC
MD
Conceitos
233
P(n)
...
P (n 0)
P (k )
P (n 1) P (n 2)
P (k+1)
Inteiros
UFMG/ICEx/DCC
MD
Conceitos
234
n(n + 1)
2
MD
Conceitos
235
(k + 1)(k + 2)
2
Sabe-se que
1 + 2 + . . . + k + (k + 1) =
=
=
=
k(k + 1)
+ (k + 1)
2
k(k + 1)
2(k + 1)
+
2
2
k2 + 3k + 2
2
(k + 1)(k + 2)
2
UFMG/ICEx/DCC
MD
Conceitos
236
E RRADO !
MD
Conceitos
237
UFMG/ICEx/DCC
MD
Conceitos
238
n
X
rn+1 1
i
r =
r1
i=0
2. Passo indutivo: se a frmula verdadeira para n = k ento deve ser verdadeira para n = k + 1, i.e., P (k) P (k + 1).
UFMG/ICEx/DCC
MD
Conceitos
239
k+1
X
ri =
i=0
k
X
ri + rk+1
i=0
rk+1 1
+ rk+1
r1
rk+1 1
rk+1(r 1)
=
+
r1
r1
rk+1 1 + rk+2 rk+1
=
r1
rk+2 1
=
r1
UFMG/ICEx/DCC
MD
Conceitos
240
UFMG/ICEx/DCC
MD
Conceitos
241
UFMG/ICEx/DCC
MD
Conceitos
242
UFMG/ICEx/DCC
MD
Conceitos
243
UFMG/ICEx/DCC
MD
Conceitos
244
n
,
2
para n 0.
Hj representa o nmero harmnico e definido por:
Hj = 1 +
1
1
1
+ + ... + .
2
3
j
MD
Conceitos
245
= 1+
1
1
1
1
1
1
+ + ... + k + k
+ k
+ . . . + k+1
2
3
2
2 +1
2 +2
2
= H2k +
1
1
1
+
+
.
.
.
+
2k + 1
2k + 2
2k+1
k
1
1+
+ 2k k+1
2
2
[Hiptese indutiva e existem 2k termos, cada um pelo menos 1/2k+1 .]
k
1
+
1+
2
2
UFMG/ICEx/DCC
1+
k+1
.
2
MD
Conceitos
246
MD
Conceitos
247
UFMG/ICEx/DCC
MD
Conceitos
248
UFMG/ICEx/DCC
MD
Conceitos
249
UFMG/ICEx/DCC
MD
Conceitos
250
UFMG/ICEx/DCC
MD
Conceitos
251
<
2 + 2 < 2k+1
2k + 2 < 2k+1
?
2 < 2k+1 2k
?
2 < 2k (2 1)
?
2 < 2k
1 < 2k1 , que verdade para k 2.
Em particular, a inequao (1 < 2k1 ) vlida para k 3. Assim, P (k + 1) V.
UFMG/ICEx/DCC
MD
Conceitos
252
UFMG/ICEx/DCC
MD
Conceitos
253
UFMG/ICEx/DCC
MD
Conceitos
254
UFMG/ICEx/DCC
MD
Conceitos
255
2. Passo indutivo: se a frmula verdadeira para n = k ento deve ser verdadeira para n = k + 1, i.e., P (k) P (k + 1).
UFMG/ICEx/DCC
MD
Conceitos
256
Temos trs regies 2k 2k com nenhum quadrado removido e uma regio 2k 2k com um quadrado removido.
Ou seja, a regio 2k+1 2k+1 possui apenas um quadrado
removido.
Pela hiptese indutiva, a regio 2k 2k , com um quadrado
removido, pode ser preenchida com peas no formato L.
O problema passa a ser como a mesma hiptese indutiva
pode ser aplicada s outras trs regies.
UFMG/ICEx/DCC
MD
Conceitos
257
UFMG/ICEx/DCC
MD
Conceitos
258
UFMG/ICEx/DCC
MD
Conceitos
259
Inteiros
P (i )
Hipotese Indutiva
UFMG/ICEx/DCC
MD
Conceitos
260
MD
Conceitos
261
UFMG/ICEx/DCC
MD
Conceitos
262
UFMG/ICEx/DCC
MD
Conceitos
263
UFMG/ICEx/DCC
MD
Conceitos
264
UFMG/ICEx/DCC
MD
Conceitos
265
Introduo
O que os seguintes objetos tm em comum?
um grupo de pessoas
um rebanho de animais
um buqu de flores
uma dzia de ovos
Conjunto: coleo de objetos bem definidos, denominados elementos ou
membros do conjunto.
As palavras conjunto e elementos so termos indefinidos da teoria dos
conjuntos.
Teoria dos conjuntos: base do pensamento matemtico.
Todos objetos matemticos podem ser definidos em termos de conjuntos.
UFMG/ICEx/DCC
MD
Conceitos
266
Introduo
Notao:
Seja S um conjunto e a um elemento de S.
a S: a pertence a S
a 6 S: a no pertence a S
Axioma da extenso:
Um conjunto completamente determinado pelos seus elementos.
A ordem na qual os elementos so listados irrelevante.
Elementos podem aparecer mais de uma vez no conjunto.
UFMG/ICEx/DCC
MD
Conceitos
267
Usar
( uma definio recursiva:
1A
MD
Conceitos
268
UFMG/ICEx/DCC
MD
Conceitos
269
UFMG/ICEx/DCC
MD
Conceitos
270
UFMG/ICEx/DCC
MD
Conceitos
271
UFMG/ICEx/DCC
MD
Conceitos
272
UFMG/ICEx/DCC
MD
Conceitos
273
UFMG/ICEx/DCC
MD
Conceitos
274
UFMG/ICEx/DCC
MD
Conceitos
275
Tuplas ordenadas
Seja n um inteiro positivo e seja x1, x2, . . . , xn uma sequncia de elementos
no necessariamente distintos.
A n-tupla ordenada, (x1, x2, . . . , xn), consiste de:
elementos da sequncia, i.e., x1, x2, . . . , xn, e
a ordem desses elementos na sequncia, i.e., x1 o primeiro elemento, x2
o segundo, etc.
Exemplos:
Uma 2-tupla ordenada chamada de par ordenado.
Uma 3-tupla ordenada chamada de tripla ordenada.
Duas n-tuplas ordenadas (x1, x2, . . ., xn) e (y1, y2, . . ., yn) so iguais sse
xi = yi, para i = 1 . . . n.
UFMG/ICEx/DCC
MD
Conceitos
276
Produto Cartesiano
Dado dois conjuntos A e B, o produto cartesiano de A e B, denotado AB,
o conjunto de todos os pares ordenados (a, b), onde a A e b B.
Notao: A B = {(a, b)|a A e b B}
Dado os conjuntos A1, A2, . . . , An, o produto cartesiano de A1, A2, . . . , An,
denotado A1 A2 . . . An, o conjunto de todas n-tuplas ordenadas
(a1, a2, . . . , an), onde ai Ai para i = 1 . . . n.
Notao:
A1 A2 . . . An =
{(a1, a2, . . . , an)|ai Ai para i = 1 . . . n}
UFMG/ICEx/DCC
MD
Conceitos
277
Propriedades de subconjuntos
Incluso da interseco: para todos conjuntos A e B.
AB A
AB B
Incluso na unio: para todos conjuntos A e B.
AAB
B AB
Propriedade transitiva dos subconjuntos: para todos conjuntos A, B e C.
se A B e B C ento A C
UFMG/ICEx/DCC
MD
Conceitos
278
Identidades de conjuntos
Sejam todos os conjuntos abaixo subconjuntos do conjunto universal U .
Comutatividade:
AB =BA
AB =BA
Associatividade:
(A B) C = A (B C)
(A B) C = A (B C)
Distributividade:
A (B C) =
(A B) (A C)
A (B C) =
(A B) (A C)
Interseco com U:
AU =A
Unio com U:
AU =U
UFMG/ICEx/DCC
MD
Conceitos
279
Identidades de conjuntos
Complemento duplo:
(Ac)c = A
Idempotncia:
AA=A
AA=A
De Morgan:
(A B)c = Ac B c
A (B C) =
(A B) (A C)
(A B)c = Ac B c
A (B C) =
(A B) (A C)
Absoro:
A (A B) = A
A (A B) = A
MD
Conceitos
280
UFMG/ICEx/DCC
MD
Conceitos
281
UFMG/ICEx/DCC
MD
Conceitos
282
UFMG/ICEx/DCC
c = U
MD
Conceitos
283
Parties de conjuntos
Definio: Dois conjuntos so chamados disjuntos sse eles no tm nenhum
elemento em comum.
Simbolicamente,
A e B so disjuntos A B =
Proposio: Dados dois conjuntos A e B, (A B) e B so disjuntos.
Prova (por contradio):
Suponha que no. Suponha que existam conjuntos A e B tais que (A
B) e B no sejam disjuntos. [Deve-se deduzir uma contradio.]
.
. . A suposio que existem conjuntos A e B tais que (A B) e B no so
disjuntos F e a proposio V.
UFMG/ICEx/DCC
MD
Conceitos
284
Parties de conjuntos
Definio (conjuntos mutuamente disjuntos): Conjuntos A1, A2, . . . , An so
mutuamente disjuntos (ou disjuntos par-a-par ou sem sobreposio) sse Ai
Aj para todos i, j = 1, 2, . . . , n e i 6= j, i.e., Ai Bi = .
Definio (partio): Uma coleo de conjuntos no vazios {A1, A2, . . ., An}
uma partio do conjunto A sse
1. A = A1 A2 . . . An
2. A1, A2, . . . , An so mutuamente disjuntos
UFMG/ICEx/DCC
MD
Conceitos
285
Conjunto potncia
Definio (conjunto potncia): Dado um conjunto A, o conjunto potncia de
A, denotado por P(A), o conjunto de todos os subconjuntos de A.
Ache o conjunto potncia do conjunto {x, y}.
P({x, y}) = {, {x}, {y}, {x, y}}.
Teorema: Para todos conjuntos A e B, se A B ento P(A) P(B).
Prova:
Suponha que A e B so conjuntos tais que A B. [Deve-se mostrar que
P(A) P(B)].
.
. . P(A) P(B) pela definio de subconjunto.
UFMG/ICEx/DCC
MD
Conceitos
286
Conjunto potncia
Teorema: Para todos inteiros n 0, se um conjunto X tem n elementos ento
P(X) tem 2n elementos.
UFMG/ICEx/DCC
MD
Conceitos
287
Conjunto potncia
Passo indutivo: se a frmula verdadeira para n = k ento deve ser verdadeira para n = k+1.
(a) Seja k 0 e suponha que qualquer conjunto com k elementos tem 2k subconjuntos.
[hiptese indutiva]
(b) Deve-se mostrar que qualquer conjunto com k + 1 elementos tem 2k+1 subconjuntos.
UFMG/ICEx/DCC
MD
Conceitos
288
Funes
Antonio Alfredo Ferreira Loureiro
loureiro@dcc.ufmg.br
http://www.dcc.ufmg.br/~loureiro
UFMG/ICEx/DCC
MD
Conceitos
289
Sumrio
Introduo
Sequncia como funo
Funo como codificao/decodificao de bits
Autmato finito
Funo injetiva e funo hash
Funes sobrejetiva, bijetiva e inversa
Princpio da casa de pombo
Composio de funes
Funo de complexidade
UFMG/ICEx/DCC
MD
Conceitos
290
Introduo
Sejam dois conjuntos A e B. Suponha que cada elemento de A possa ser
associado a um elemento especfico de B. A relao entre elementos de A e
B chamada de funo.
Funes so normalmente representadas por uma nica letra como, por exemplo, f , g, h, F , G. Funes especiais so denotadas por strings, como
log, exp e sin.
UFMG/ICEx/DCC
MD
Conceitos
291
Introduo
Definio: A funo f de um conjunto X para um conjunto Y uma relao entre elementos de X e elementos de Y com a propriedade que cada
elemento de X est relacionado a um nico elemento de Y .
A notao f : X Y significa que f uma funo de X para Y .
O conjunto X chamado de domnio e o conjunto Y de co-domnio.
Faixa de f ou imagem de X para f : conjunto de todos os valores que f
pode assumir:
Faixa de f : {y Y |y = f (x), para algum x X}
Imagem inversa de y = {x X|f (x) = y}
Implicao:
Cada elemento de X pode ser associado a um e somente um elemento
de Y .
UFMG/ICEx/DCC
MD
Conceitos
292
Introduo
Sejam os conjuntos finitos X e Y definidos da seguinte forma: X = {a, b, c}
e Y = {1, 2, 3, 4}. A funo f : X Y pode ser definida por um diagrama,
como por exemplo:
Domnio de f = {a, b, c};
Co-domnio de f = {1, 2, 3, 4}.
f (a) = 2; f (b) = 4; f (c) = 2.
Faixa de f = {2, 4}.
f
a
b
c
1
2
3
4
Imagem inversa de 1 = ;
Imagem inversa de 2 = {a, c};
Imagem inversa de 3 = ;
Imagem inversa de 4 = {b};
A funo f representada como um conjunto de
pares ordenados = {(a, 2), (b, 4), (c, 2)}.
UFMG/ICEx/DCC
MD
Conceitos
293
Introduo
Exemplos de funes:
f : x x2.
f : R R a funo quadrado.
f : n n + 1.
f : Z Z a funo sucessor.
f : r 2.
f : Q N a funo constante.
Definio (Igualdade de funes): Sejam f e g funes definidas de X em Y .
Ento,
f = g, sse f (x) = g(x), x X.
UFMG/ICEx/DCC
MD
Conceitos
294
Introduo
Exemplos:
Sejam f e g funes definidas
para todo x R.
f = g?
(a) f (x) = |x|
e g(x) = x2.
Sim. |x| = x2, x R.
(b) Sejam as funes
f +g : RR e
g+f : RR
definidas como:
(f + g)(x) = f (x) + g(x),
(g + f )(x) = g(x) + f (x),
x R e
x R.
f + g = g + f?
(f + g)(x) = f (x) + g(x)
= g(x) + f (x)
= (g + f )(x)
UFMG/ICEx/DCC
MD
Conceitos
definio de f + g
comutatividade da adio
definio de g + f
295
1,
3
1
2,
(1)n
1
4 , . . . , n+1 , . . .
pode ser definida como uma funo f dos inteiros no-negativos para os
nmeros reais, isto ,
0
1
2
2
...
1
3
Formalmente, f : Z0 R, onde
(1)n
f (n) =
n+1
n
n (1)
n+1
UFMG/ICEx/DCC
MD
Conceitos
296
UFMG/ICEx/DCC
MD
Conceitos
297
UFMG/ICEx/DCC
MD
Conceitos
298
UFMG/ICEx/DCC
MD
Conceitos
299
UFMG/ICEx/DCC
MD
Conceitos
300
Funes booleanas
Definio: Uma funo Booleana f uma funo cujo domnio o conjunto
de todas n-tuplas ordenadas de 0s e 1s e cujo co-domnio {0, 1}.
Formalmente, o domnio de uma funo Booleana pode ser descrito como o
produto Cartesiano de n cpias do conjunto {0, 1}, que representado por
{0, 1}n. Logo,
f : {0, 1}n {0, 1}.
UFMG/ICEx/DCC
MD
Conceitos
301
Funes booleanas
Exemplo: f (x1, x2, x3) = (x1 + x2 + x3) mod 2
Entrada
UFMG/ICEx/DCC
Sada
x1
x2
x3
MD
Conceitos
302
Mas,
1) = 1
f (2
f (3
6) = 3
.
3)
. . f (1
)
=
6
f
(
2
6
UFMG/ICEx/DCC
MD
Conceitos
303
Funo Estado
Os problemas em Cincia da Computao podem ser vistos, de uma forma
geral, conforme o diagrama abaixo:
Sada 1 -
Entrada 1-
...
Entrada n-
Modelo
Computacional
do Problema
...
Sada m -
MD
Conceitos
304
Autmato finito
Um autmato finito (AF), em ingls
Finite Automaton ou
Finite State Automaton ou
Finite State Machine
um modelo matemtico de um sistema que possui entradas e sadas discretas.
O sistema pode estar num estado dentre um conjunto finito de estados ou
configuraes.
O estado do sistema sumariza a informao relacionada com entradas passadas que necessria para determinar o comportamento do sistema em
entradas subseqentes.
UFMG/ICEx/DCC
MD
Conceitos
305
Autmato finito
Exemplo: O mecanismo de controle de um elevador no precisa lembrar
todas as requisies anteriores de servio, mas somente o andar corrente, a
direo de movimento e as requisies pendentes.
Computador digital: pode ser modelado por um autmato finito.
Exemplo: mquina de doce que custa 20 centavos e aceita moedas de 5 e 10
centavos
10
5 Dep
5
0 Dep
15 Dep
10
10
10 Dep
UFMG/ICEx/DCC
MD
10
Conceitos
20 Dep
306
Autmato finito
Definio: um autmato finito uma quintupla A = (I, S, s0, Q, N ), onde
I: alfabeto de entrada para o autmato, ou seja, conjunto de smbolos vlidos.
S: conjunto de estados do autmato.
s0: estado inicial do autmato, onde s0 S.
Q: conjunto de estados finais, onde Q S.
N : funo de transio ou de prximo estado, onde N : S I S.
Observao importante: essa definio define um autmato determinstico.
UFMG/ICEx/DCC
MD
Conceitos
307
Autmato finito
Seja um autmato A = (I, S, s0, Q, N ), onde
I = {0, 1}
S = {s0, s1, s2}
s0 = estado inicial do autmato, onde s0 S.
Q = {s2}, onde Q S.
N = {(s0, 0, s1), (s0, 1, s0), (s1, 0, s1), (s1, 1, s2), (s2, 0, s1), (s2, 1, s0)}.
A operao de um autmato finito normalmente descrito por um diagrama
de transio de estados.
1
s0
s1
0
UFMG/ICEx/DCC
MD
Conceitos
s2
308
Autmato finito
Uma outra forma de representar a operao do autmato (funo de prximo
estado N ) atravs da tabela do prximo estado.
hInicial i
Estado
hFinal i
s0
s1
s2
Entrada
0
1
s1 s0
s1 s2
s1 s0
1
s0
s1
0
UFMG/ICEx/DCC
MD
Conceitos
s2
309
MD
Conceitos
310
s0
s1
0
s2
MD
Conceitos
311
UFMG/ICEx/DCC
MD
Conceitos
312
s0
s1
s2
s1 s 2 s1 s2 s0 s1
ou seja,
N (s1, 10110) = s1.
UFMG/ICEx/DCC
MD
Conceitos
313
0,1
0
1
s1
0*
0*10*
s2
0*11(0*1*)*
Estado vlido
0
1
s0
s1
1
s2
MD
Conceitos
314
s1
s2
s3
E XECUTA AUTMATO(A)
1
2
3
4
5
6
7
8
9
10
state 0
symbol primeiro smbolo do string de entrada
while symbol 6=
do choose state of
0: if symbol = 0 then state 1 else state 0
1: if symbol = 0 then state 1 else state 2
2: if symbol = 0 then state 1 else state 3
3: if symbol = 0 then state 1 else state 0
symbol prximo smbolo do string de entrada
return state O estado final 3 sse o string termina em 011
UFMG/ICEx/DCC
MD
Conceitos
315
UFMG/ICEx/DCC
MD
Conceitos
316
Funo injetiva
Definio: Seja F : X Y . F uma funo um-para-um ou injetiva sse
para todos x1, x2 X,
se F (x1) = F (x2) ento x1 = x2,
ou
se x1 6= x2 ento F (x1) 6= F (x2)
UFMG/ICEx/DCC
MD
Conceitos
317
UFMG/ICEx/DCC
MD
Conceitos
318
Funo hash
Por melhor que seja a funo h(k) e por mais esparsa que seja a ocupao
da tabela colises ocorrem!
Paradoxo do aniversrio:
Quando 23 ou mais pessoas esto juntas existe mais de 50% de chance
que duas pessoas tenham a mesma data de aniversrio.
Logo, uma tabela com 365 entradas e com 23 chaves ou mais, cujos endereos so calculados como se fossem uniformes e randmicos, mais da
metade das vezes, duas ou mais chaves vo ter o mesmo endereo na
tabela.
UFMG/ICEx/DCC
MD
Conceitos
319
Funo hash
Uma funo de transformao deve mapear chaves em inteiros (ndices) dentro do intervalo [0..M 1] onde M o tamanho da tabela.
A funo de transformao ideal aquela que:
1. Seja simples de ser computada, e
2. Para cada chave de entrada, qualquer uma das sadas possveis igualmente provvel de ocorrer.
Mtodo mais usado:
Usa o resto da diviso inteira por M :
h(k) = k mod M
onde k um inteiro correspondente chave e que representa um ndice na
tabela.
UFMG/ICEx/DCC
MD
Conceitos
320
UFMG/ICEx/DCC
MD
Conceitos
321
n
X
Chave[i] p[i],
i=1
onde
n o nmero de caracteres da chave;
Chave[i] corresponde representao ASCII do i-simo caractere da
chave;
p[i] um inteiro de um conjunto de pesos gerados randomicamente para
1 i n.
Vantagem em usar pesos:
Dois conjuntos diferentes de pesos p1[i] e p2[i], 1 i n, leva a duas
funes de transformao h1(k) e h2(k) diferentes.
UFMG/ICEx/DCC
MD
Conceitos
322
UFMG/ICEx/DCC
MD
Conceitos
323
UFMG/ICEx/DCC
MD
Conceitos
324
UFMG/ICEx/DCC
MD
Conceitos
325
UFMG/ICEx/DCC
MD
Conceitos
326
UFMG/ICEx/DCC
MD
Conceitos
327
MD
Conceitos
328
UFMG/ICEx/DCC
MD
Conceitos
329
i.e.,
1 sA 30.
UFMG/ICEx/DCC
MD
Conceitos
330
UFMG/ICEx/DCC
MD
Conceitos
331
UFMG/ICEx/DCC
MD
Conceitos
332
MD
Conceitos
333
Generalizao do princpio
Princpio (3 a verso):
Para qualquer funo f , definida de um conjunto finito X para um conjunto
finito Y e para qualquer inteiro positivo k, se |X| > k |Y |, ento existe
algum y Y tal que y a imagem de pelo menos k + 1 elementos distintos
de X.
Princpio (4 a versocontrapositivo):
Para qualquer funo f , definida de um conjunto finito X para um conjunto
finito Y e para qualquer inteiro positivo k, se para cada y Y , f 1(y) tem
no mximo k elementos ento X tem no mximo k |Y | elementos.
UFMG/ICEx/DCC
MD
Conceitos
334
Generalizao do princpio
Use a generalizao do princpio da Casa de Pombo para mostrar que num
grupo de 85 pessoas, a primeira letra dos nomes de pelo menos quatro pessoas a mesma.
85 > 3 26 = 78. Logo, a letra inicial dos nomes de pelo menos quatro
pessoas a mesma.
O mesmo resultado pode ser dado usando a forma contrapositiva e a negao.
Suponha que no existam quatro pessoas que tm a mesma letra inicial no
primeiro nome. Assim, no mximo trs pessoas tm a mesma letra. Pela
forma contrapositiva da generalizao do princpio da Casa de Pombo isto
implica num total de 3 26 = 78 pessoas. Mas isto uma contradio pois
existem 85 pessoas. Logo, pelo menos quatro pessoas tm a mesma letra
inicial no primeiro nome.
UFMG/ICEx/DCC
MD
Conceitos
335
UFMG/ICEx/DCC
MD
Conceitos
336
Composio de funes
Definio (composio de funes): Sejam f : X Y 0 e g : Y Z funes
com a propriedade que a faixa de f um subconjunto do domnio de g, i.e.,
Y 0 Y . Defina uma nova funo g f : X Z da seguinte forma:
(g f )(x) = g(f (x)), x X.
A funo g f chamada de composio de f e g.
Exemplo:
f : Z Z, f (n) = n + 1.
g : Z Z, g(n) = n2.
?
f g = g f.
(g f )(n) = g(f (n)) = g(n + 1) = (n + 1)2, n Z
(f g)(n) = f (g(n)) = f (n2) = n2 + 1, n Z
.
. . f g 6= g f.
UFMG/ICEx/DCC
MD
Conceitos
337
MD
Conceitos
338
UFMG/ICEx/DCC
MD
Conceitos
339
Cardinalidade de conjuntos
Definio (mesma cardinalidade): Sejam A e B quaisquer conjuntos. A tem
a mesma cardinalidade de B sse existe uma correspondncia um-para-um
de A para B. Em outras palavras, A tem a mesma cardinalidade que B sse
existe uma funo f de A para B que injetiva e sobrejetiva (i.e., bijetiva).
Teorema:
Para todos os conjuntos A, B e C,
(a) A tem a mesma cardinalidade que A.
propriedade reflexiva da cardinalidade.
(b) Se A tem a mesma cardinalidade que B, ento B tem a mesma cardinalidade que A.
propriedade simtrica da cardinalidade.
(c) Se A tem a mesma cardinalidade que B, e B tem a mesma cardinalidade
que C ento A tem a mesma cardinalidade que C.
propriedade transitiva da cardinalidade.
Definio (mesma cardinalidade): A e B tm a mesma cardinalidade sse, A
tem a mesma cardinalidade que B ou B tem a mesma cardinalidade que A.
UFMG/ICEx/DCC
MD
Conceitos
340
Conjuntos contveis
Definio (conjunto contvel infinito): Um conjunto chamado contvel infinito
sse ele possui a mesma cardinalidade do conjunto dos inteiros positivos Z+.
Um conjunto chamado contvel sse finito ou contvel infinito. Um conjunto
que no contvel chamado de incontvel.
Exemplo: Mostre que o conjunto Z, conjunto de todos os inteiros contvel.
0
1
1
2
2
...
...
1
2
3
4
5
...
UFMG/ICEx/DCC
MD
Conceitos
341
Conjuntos contveis
Teorema:
O conjunto de todos os nmeros reais entre 0 e 1 incontvel.
Teorema:
Qualquer subconjunto de um conjunto contvel contvel.
Exemplo: O conjunto de todos os nmeros reais tem a mesma cardinalidade
que o conjunto dos nmeros reais entre 0 e 1.
Exemplo: O conjunto de todos os programas de computador numa dada linguagem de programao contvel.
UFMG/ICEx/DCC
MD
Conceitos
342
UFMG/ICEx/DCC
MD
Conceitos
343
UFMG/ICEx/DCC
MD
Conceitos
344
UFMG/ICEx/DCC
MD
Conceitos
345
Notao
f (n) = (g(n))
UFMG/ICEx/DCC
MD
Conceitos
346
Notao
A notao limita a funo por fatores constantes.
Escreve-se f (n) = (g(n)), se existirem constantes positivas c1, c2 e n0
tais que para n n0, o valor de f (n) est sempre entre c1g(n) e c2g(n)
inclusive.
Pode-se dizer que g(n) um limite assinttico firme (em ingls, asymptotically tight bound) para f (n).
f (n) = (g(n)),
c1 > 0, c2 > 0, n0, | 0 c1g(n) f (n) c2g(n), n n0
MD
Conceitos
347
Notao : Exemplo 1
1 n2 3n = (n2 ).
Mostre que 2
Para provar esta afirmao, devemos achar constantes c1 > 0, c2 > 0, n > 0,
tais que:
1
c1n2 n2 3n c2n2
2
para todo n n0.
Se dividirmos a expresso acima por n2 temos:
1 3
c1 c2 .
2 n
UFMG/ICEx/DCC
MD
Conceitos
348
Notao : Exemplo 1
A inequao mais a direita ser sempre vlida para qualquer valor de n 1 ao
1.
escolhermos c2 2
Da mesma forma, a inequao mais a esquerda ser sempre vlida para qual1.
quer valor de n 7 ao escolhermos c1 14
Assim, ao escolhermos c1 = 1/14, c2 = 1/2 e n0 = 7, podemos verificar que
1 n2 3n = (n2 ).
2
Note que existem outras escolhas para as constantes c1 e c2, mas o fato importante que a escolha existe.
2 3n.
Note tambm que a escolha destas constantes depende da funo 1
n
2
MD
Conceitos
349
Notao : Exemplo 2
Usando a definio formal de prove que 6n3 6= (n2).
UFMG/ICEx/DCC
MD
Conceitos
350
Notao O
f (n) = O(g(n))
UFMG/ICEx/DCC
MD
Conceitos
351
Notao O
A notao O define um limite superior para a funo, por um fator constante.
Escreve-se f (n) = O(g(n)), se existirem constantes positivas c e n0 tais
que para n n0, o valor de f (n) menor ou igual a cg(n).
Pode-se dizer que g(n) um limite assinttico superior (em ingls, asymptotically upper bound) para f (n).
f (n) = O(g(n)), c > 0, n0, | 0 f (n) cg(n), n n0.
UFMG/ICEx/DCC
MD
Conceitos
352
Notao O
Quando a notao O usada para expressar o tempo de execuo de um
algoritmo no pior caso, est se definindo tambm o limite (superior) do tempo
de execuo desse algoritmo para todas as entradas.
Por exemplo, o algoritmo de ordenao por insero (a ser estudado) O(n2)
no pior caso.
Este limite se aplica para qualquer entrada.
UFMG/ICEx/DCC
MD
Conceitos
353
Notao O
Tecnicamente um abuso dizer que o tempo de execuo do algoritmo de
ordenao por insero O(n2) (i.e., sem especificar se para o pior caso,
melhor caso, ou caso mdio):
O tempo de execuo desse algoritmo depende de como os dados de
entrada esto arranjados.
Se os dados de entrada j estiverem ordenados, este algoritmo tem um
tempo de execuo de O(n), ou seja, o tempo de execuo do algoritmo
de ordenao por insero no melhor caso O(n).
O que se quer dizer quando se fala que o tempo de execuo O(n2)
que no pior caso o tempo de execuo O(n2).
Ou seja, no importa como os dados de entrada esto arranjados, o tempo
de execuo em qualquer entrada O(n2).
UFMG/ICEx/DCC
MD
Conceitos
354
Notao
f (n) = (g(n))
UFMG/ICEx/DCC
MD
Conceitos
355
Notao
A notao define um limite inferior para a funo, por um fator constante.
Escreve-se f (n) = (g(n)), se existirem constantes positivas c e n0 tais
que para n n0, o valor de f (n) maior ou igual a cg(n).
Pode-se dizer que g(n) um limite assinttico inferior (em ingls, asymptotically lower bound) para f (n).
f (n) = (g(n)), c > 0, n0, |0 cg(n) f (n), n n0.
UFMG/ICEx/DCC
MD
Conceitos
356
Notao
Quando a notao usada para expressar o tempo de execuo de um algoritmo no melhor caso, est se definindo tambm o limite (inferior) do tempo
de execuo desse algoritmo para todas as entradas.
Por exemplo, o algoritmo de ordenao por insero (n) no melhor
caso.
O tempo de execuo do algoritmo de ordenao por insero (n).
O que significa dizer que o tempo de execuo (i.e., sem especificar se
para o pior caso, melhor caso, ou caso mdio) (g(n))?
O tempo de execuo desse algoritmo pelo menos uma constante vezes
g(n) para valores suficientemente grandes de n.
UFMG/ICEx/DCC
MD
Conceitos
357
UFMG/ICEx/DCC
MD
Conceitos
358
UFMG/ICEx/DCC
MD
Conceitos
359
Pior Caso:
Caso Mdio:
n2
2
n2
4
n
2
3n
4
Melhor caso:
c
(n) = n 1
=
Melhor Caso
n2
n2
UFMG/ICEx/DCC
MD
Conceitos
360
Teorema
Para quaisquer funes f (n) e g(n),
f (n) = (g(n))
se e somente se,
f (n) = O(g(n)) e f (n) = (g(n))
UFMG/ICEx/DCC
MD
Conceitos
361
UFMG/ICEx/DCC
MD
Conceitos
362
Notao o
O limite assinttico superior definido pela notao O pode ser assintoticamente firme ou no.
Por exemplo, o limite 2n2 = O(n2) assintoticamente firme, mas o limite
2n = O(n2) no .
A notao o usada para definir um limite superior que no assintoticamente firme.
Formalmente a notao o definida como:
f (n) = o(g(n)), c > 0 e n0 | 0 f (n) < cg(n), n n0
Exemplo, 2n = o(n2) mas 2n2 6= o(n2).
UFMG/ICEx/DCC
MD
Conceitos
363
Notao o
As definies das notaes O (o grande) e o (o pequeno) so similares.
A diferena principal que em f (n) = O(g(n)), a expresso 0 f (n)
cg(n) vlida para pelo menos uma constante c > 0.
Intuitivamente, a funo f (n) tem um crescimento muito menor que g(n)
quando n tende para infinito. Isto pode ser expresso da seguinte forma:
f (n)
=0
n g(n)
lim
UFMG/ICEx/DCC
MD
Conceitos
364
Notao
Por analogia, a notao est relacionada com a notao da mesma forma
que a notao o est relacionada com a notao O.
Formalmente a notao definida como:
f (n) = (g(n)), c > 0 e n0 | 0 cg(n) < f (n), n n0
2
2
n
n
Por exemplo, 2 = (n), mas 2 6= (n2).
se o limite existir.
UFMG/ICEx/DCC
MD
Conceitos
365
UFMG/ICEx/DCC
MD
Conceitos
366
UFMG/ICEx/DCC
MD
Conceitos
367
UFMG/ICEx/DCC
MD
Conceitos
368
UFMG/ICEx/DCC
MD
Conceitos
369
UFMG/ICEx/DCC
MD
Conceitos
370
UFMG/ICEx/DCC
MD
Conceitos
371
UFMG/ICEx/DCC
MD
Conceitos
372
Hierarquias de funes
A seguinte hierarquia de funes pode ser definida do ponto de vista assinttico:
n
c
log
n
n
n
c
1 log log n log n n n n
c n c
UFMG/ICEx/DCC
MD
Conceitos
373
Hierarquias de funes
Usando MatLab, ou um outro pacote matemtico/software grfico, desenhe
os grficos dessas funes, quando n .
UFMG/ICEx/DCC
MD
Conceitos
374
Hierarquias de funes
Onde as seguintes funes se encaixam nessa hierarquia?
(a) (n) = lnnn . Esta funo define o nmero de primos menor ou igual a n.
(b) e log n.
Dica: ef (n) eg(n) limn(f (n) g(n)) = .
UFMG/ICEx/DCC
MD
Conceitos
375
Hierarquias de funes
Preliminares
A hierarquia apresentada est relacionada com funes que vo para o infinito.
No entanto, podemos ter o oposto dessas funes j que elas nunca so zero.
Isto ,
1
1
.
f (n) g(n)
g(n)
f (n)
Assim, todas as funes (exceto 1) tendem para zero:
1
1
1
1
1
1
1
1
1
n n n log n c
cc
n
c
n
n
n
log n
log log n
UFMG/ICEx/DCC
MD
Conceitos
376
Hierarquias de funes
Soluo de (a)
(n) = lnnn
Temos que (note que a base do logaritmo no altera a hierarquia):
1
1
1
n
ln n
Multiplicando por n, temos:
n
n
n,
n
ln n
ou seja,
n1 (n) n
Note que o valor 1 ainda menor que 1.
UFMG/ICEx/DCC
MD
Conceitos
377
Hierarquias de funes
Soluo de (b)
e log n
Dado a hierarquia:
1 ln ln n
ln n ln n
1
ln
ln
n
e e
e ln n e ln n
Simplificando temos:
e ln n e ln n n
UFMG/ICEx/DCC
MD
Conceitos
378
UFMG/ICEx/DCC
MD
Conceitos
379
UFMG/ICEx/DCC
MD
Conceitos
380
Objetos recursivos
Um objeto recursivo quando definido parcialmente em termos de si
mesmo.
Exemplo 1: Nmeros naturais:
(a) 1 um nmero natural.
(b) o sucessor de um nmero natural um nmero natural.
Exemplo 2: Funo fatorial:
(a) 0! = 1.
(b) se n > 0 ento n! = n (n 1)!
UFMG/ICEx/DCC
MD
Conceitos
381
Objetos recursivos
Exemplo 3: rvores.
(a) A rvore vazia uma rvore.
(b) se T1 e T2 so rvores ento T 0 um rvore.
T 0
T
T
T
TT
T1 T2
UFMG/ICEx/DCC
MD
Conceitos
382
UFMG/ICEx/DCC
MD
Conceitos
383
UFMG/ICEx/DCC
MD
Conceitos
384
Poder da recurso
Definir um conjunto infinito de objetos atravs de um comando finito.
Um problema recursivo P pode ser expresso como P P[Si, P ], onde P
a composio de comandos Si e do prprio P .
Importante: constantes e variveis locais a P so duplicadas a cada chamada
recursiva.
UFMG/ICEx/DCC
MD
Conceitos
385
Problema de terminao
Definir um condio de terminao.
Idia:
Associar um parmetro, por exemplo n, com P e chamar P recursivamente
com n 1 como parmetro.
A condio n > 0 garante a terminao.
Exemplo:
P (n) if n > 0 then P[Si; P (n 1)].
Importante: na prtica necessrio:
mostrar que o nvel de recurso finito, e
tem que ser mantido pequeno! Por que?
UFMG/ICEx/DCC
MD
Conceitos
386
FATORIAL(4)
F : varivel auxiliar
if n > 0
then F n FATORIAL(n 1)
else F 1
return F
UFMG/ICEx/DCC
MD
Conceitos
1
2
3
4
1
4FATORIAL(3)
3FATORIAL(2)
2FATORIAL(1)
1FATORIAL(0)
387
UFMG/ICEx/DCC
MD
Conceitos
388
F , i: variveis auxiliares
i0
F 1
while i < n
do i i + 1
F F i
return F
Logo,
P if B then (S; P )
deve ser transformado em
P (x = x0; while B do S).
UFMG/ICEx/DCC
MD
Conceitos
389
Outro exemplo
F IB(A)
1
2
3
4
5
6
s
5,,l
F : varivel auxiliar
if n = 0
then F 0
else if n = 1
then F 1
else F FIB(n 1) + (n 2)
return F
,
,
,
,
s
4
J,
UFMG/ICEx/DCC
MD
B
B
B
B
B
s
Bs
B
B
B
B
B
Bs
s
Conceitos
l
l
l
l
J
J
J
J
Js
B
B
B
B
B
s
Bs
l
l
ls
B
B
B
B
B
s
Bs
B
B
B
B
B
s
Bs
390
Soluo bvia
F IB(n)
1
2
3
4
5
6
7
8
9
UFMG/ICEx/DCC
MD
Conceitos
391
UFMG/ICEx/DCC
MD
Conceitos
392
UFMG/ICEx/DCC
MD
Conceitos
393
F : varivel auxiliar
if n > 0
then F n FATORIAL(n 1)
else F 1
return F
T (n) =
d
n = 1
c + T (n 1) n > 1
Esta equao diz que quando n = 1 o custo para executar FATORIAL igual a
d. Para valores de n maiores que 1, o custo para executar FATORIAL c mais o
custo para executar T (n 1).
UFMG/ICEx/DCC
MD
Conceitos
394
T (n) = c + T (n 1)
= c + (c + T (n 2))
= c + c + (c + T (n 3))
... = ...
= c + c + + (c + T (1))
= c| + c +{z + c} +d
n1
UFMG/ICEx/DCC
MD
Conceitos
395
k
X
ak+1 1
i
a =
(a 6= 1)
n(n + 1)
i=
2
i=1
i=0
k
X
n
X
2k = 2k+1 1
i=0
i=1
a1
n(n + 1)(2n + 1)
2
i =
6
k
X
1
1
=2 k
i
2
2
i=0
UFMG/ICEx/DCC
MD
Conceitos
396
T (2k ) =
=
=
...
=
=
=
T (2k1 ) + 1
(T (2k2 ) + 1) + 1
(T (2k3 ) + 1) + 1 + 1
...
(T (2) + 1) + 1 + + 1
(T (1) + 1) + 1 + + 1
0 + |1 + {z
+ 1}
k
= k
T (n) = log n
T (n) = O(log n)
UFMG/ICEx/DCC
MD
Conceitos
397
2T (2k1 ) + 2k
2(2T (2k2 ) + 2k1 ) + 2k
2(2(2T (2k3 ) + 2k2 ) + 2k1 ) + 2k
...
2(2( (2(2T (1) + 22 ) + 23 ) + ) + 2k1 ) + 2k
(k 1)2k + 2k
k2k
T (n) = n log n
T (n) = O(n log n)
UFMG/ICEx/DCC
MD
Conceitos
398
Teorema Mestre
Recorrncias da forma
T (n) = aT ( nb ) + f (n),
onde a 1 e b > 1 so constantes e f (n) uma funo assintoticamente positiva podem ser resolvidas usando o Teorema Mestre. Note que neste caso no
estamos achando a forma fechada da recorrncia mas sim seu comportamento
assinttico.
UFMG/ICEx/DCC
MD
Conceitos
399
Teorema Mestre
Sejam as constantes a 1 e b > 1 e f (n) uma funo definida nos inteiros
no-negativos pela recorrncia:
T (n) = aT ( nb ) + f (n),
onde a frao n/b pode significar bn/bc ou dn/be. A equao de recorrncia
T (n) pode ser limitada assintoticamente da seguinte forma:
1. Se f (n) = O(nlogb a) para alguma constante > 0,
ento T (n) = (nlogb a) .
2. Se f (n) = (nlogb a), ento T (n) = (nlogb a log n) .
3. Se f (n) = (nlogb a+) para alguma constante > 0 e se af (n/b)
cf (n) para alguma constante c < 1 e para n suficientemente grande,
ento T (n) = (f (n)) .
UFMG/ICEx/DCC
MD
Conceitos
400
UFMG/ICEx/DCC
MD
Conceitos
401
UFMG/ICEx/DCC
MD
Conceitos
402
UFMG/ICEx/DCC
MD
Conceitos
403
UFMG/ICEx/DCC
MD
Conceitos
404
nlogb a = n
= n0 = 1
UFMG/ICEx/DCC
MD
Conceitos
405
UFMG/ICEx/DCC
MD
Conceitos
406
para c = 3
4 . Conseqentemente, usando o caso 3, a soluo para a recorrncia
UFMG/ICEx/DCC
MD
Conceitos
407
UFMG/ICEx/DCC
MD
Conceitos
408
UFMG/ICEx/DCC
MD
Conceitos
409
UFMG/ICEx/DCC
MD
Conceitos
410
UFMG/ICEx/DCC
MD
Conceitos
411
Qual o maior valor inteiro de a tal que A0 assintoticamente mais rpido que
A?
UFMG/ICEx/DCC
MD
Conceitos
412
UFMG/ICEx/DCC
MD
Conceitos
413
UFMG/ICEx/DCC
MD
Conceitos
414
UFMG/ICEx/DCC
MD
Conceitos
415
UFMG/ICEx/DCC
MD
Conceitos
416
UFMG/ICEx/DCC
MD
Conceitos
(1)
(2)
417
UFMG/ICEx/DCC
MD
Conceitos
418
Configurao inicial:
O jogo comea com um conjunto de oito discos empilhados em tamanho
decrescente em uma das trs varetas.
UFMG/ICEx/DCC
MD
Conceitos
419
T (1) = 1
[apenas um movimento]
T (2) = 3
UFMG/ICEx/DCC
MD
Conceitos
420
UFMG/ICEx/DCC
MD
Conceitos
421
UFMG/ICEx/DCC
MD
Conceitos
para n > 0
422
T (n)
15
31
63
UFMG/ICEx/DCC
MD
Conceitos
423
UFMG/ICEx/DCC
MD
Conceitos
424
UFMG/ICEx/DCC
MD
Conceitos
425
1
2
4
L0 = 1
UFMG/ICEx/DCC
L1 = 2
MD
Conceitos
L2 = 4
426
UFMG/ICEx/DCC
MD
Conceitos
427
12
11
10
5
8
6
7
1a rodada
6
12
2a rodada
21
11
42
5
4
63
37
10
42
5
4
UFMG/ICEx/DCC
21
9 11
10
12
3a rodada
63
8
MD
Conceitos
12
11 1
21
9 11
37
10
42
5 10
4
63
8
428
UFMG/ICEx/DCC
MD
Conceitos
429
UFMG/ICEx/DCC
MD
Conceitos
430
UFMG/ICEx/DCC
MD
Conceitos
431
c = constante
UFMG/ICEx/DCC
MD
Conceitos
432
UFMG/ICEx/DCC
MD
Conceitos
433
Recurso
Antonio Alfredo Ferreira Loureiro
loureiro@dcc.ufmg.br
http://www.dcc.ufmg.br/~loureiro
UFMG/ICEx/DCC
MD
Conceitos
434
MD
Conceitos
435
[relao de recorrncia]
[termos iniciais]
Algumas vezes difcil ou impossvel achar uma frmula explcita para uma
sequncia, mas possvel definir a sequncia usando recurso.
Note que definir sequncias recursivamente similar a provar teoremas por
induo matemtica:
Equao de recorrncia seria o passo indutivo, e
Termos iniciais seriam o passo base.
Definio: Uma equao de recorrncia para uma sequncia a0, a1, a2, . . .
uma frmula que relaciona cada termo ak a certos termos predecessores
ak1, ak2, . . . , aki, onde i um inteiro fixo e k qualquer inteiro, tal que
k i. Os termos iniciais para uma recorrncia so especificados pelos valores a0, a1, a2, . . . , ai1.
UFMG/ICEx/DCC
MD
Conceitos
436
[relao de recorrncia]
[termos iniciais]
bk = 3bk1, k > 1
b1 = 1
b2 = 3, b3 = 9, b4 = 27, . . .
UFMG/ICEx/DCC
MD
Conceitos
437
UFMG/ICEx/DCC
MD
Conceitos
438
UFMG/ICEx/DCC
k[(1)k1 (k 1)!]
(1) k (1)k1 (k 1)!]
(1) (1)k1 k (k 1)!]
(1)k k!
sk
MD
Conceitos
439
Strings
0, 1
00, 01, 10
000, 001, 010, 100, 101
MD
# Strings
1
2
3
5
Conceitos
440
UFMG/ICEx/DCC
MD
Conceitos
441
UFMG/ICEx/DCC
sk
s0
s1
=
=
=
sk1 + sk2
1
2
Equao de recorrncia
)
Condies iniciais
MD
Conceitos
442
MD
Conceitos
443
UFMG/ICEx/DCC
MD
Conceitos
444
UFMG/ICEx/DCC
MD
Conceitos
445
MD
Conceitos
446
MD
Conceitos
447
UFMG/ICEx/DCC
MD
Conceitos
448
2i+1 + 3i + 1 = 2i+1 + (i + 1)
de onde se conclui que 2i = 0 e i = 0, que no uma condio vlida
para a equao de recorrncia.
UFMG/ICEx/DCC
MD
Conceitos
449
Definio recursiva
Existem vrios outros objetos que podem ser definidos recursivamente alm
de sequncias de nmeros.
Exemplo: conjuntos.
A definio recursiva de conjuntos consiste dos seguintes elementos:
(i) BASE: uma afirmao que certos objetos pertencem ao conjunto.
(ii) RECURSO: regras que indicam como formar novos conjuntos a partir de
elementos que so conhecidos estarem em conjuntos.
(iii) RESTRIO: uma afirmao que somente os objetos obtidos atravs dos
passos (i) e (ii) pertencem ao conjunto.
Essas mesmas regras podem ser usadas para definir outros objetos de forma
recursiva.
UFMG/ICEx/DCC
MD
Conceitos
450
UFMG/ICEx/DCC
MD
Conceitos
451
MD
Conceitos
452
ai = a1
i=1
n
X
ai = (
i=1
n1
X
i=1
Definio (Produto):
Dados os nmeros a1, a2, . . . , an, onde n um inteiro positivo, o produtrio
Qn
desses n nmeros, que representado por i=1 ai, definido como
1
Y
i=1
UFMG/ICEx/DCC
ai = a1
n
Y
ai = (
i=1
i=1
MD
n1
Y
Conceitos
453
A i = A1
n
[
i=1
Ai = (
i=1
n1
[
Ai )
An .
i=1
Definio (Interseco):
Dados os conjuntos A1, A2, . . . , An, onde n um inteiro positivo, a interTn
seco desses n conjuntos, que representada por i=1 Ai, definido como
1
\
A i = A1
n
\
i=1
i=1
UFMG/ICEx/DCC
Ai = (
MD
Conceitos
n1
\
Ai )
An .
i=1
454
M (n) =
n 10
se n > 100
M (M (n + 11)) se n 100
M (99) = M (M (110))
= M (100)
= M (M (111))
= M (101)
= 91
UFMG/ICEx/DCC
MD
Conceitos
455
UFMG/ICEx/DCC
MD
Conceitos
456
65536
UFMG/ICEx/DCC
MD
Conceitos
457
se n = 1
se n par
G(3n 1) se n mpar e n > 1
G(n) = 1 + G( n
2)
G(2) = 1 + G(1) = 1 + 1 = 2
G(3) = G(8) = 1 + G(4) = 1 + (1 + G(2))
= 1 + (1 + 2) = 4
G(4) = 1 + G(2) = 1 + 2 = 3
G(5) = G(14) = 1 + G(7) = 1 + G(20)
= 1 + (1 + G(10))
= 1 + (1 + (1 + G(5))) = 3 + G(5)
UFMG/ICEx/DCC
MD
Conceitos
458
H(n) =
se n = 1
n)
se n par
1
+
H(
2
UFMG/ICEx/DCC
MD
Conceitos
459
Anlise Combinatria
Antonio Alfredo Ferreira Loureiro
loureiro@dcc.ufmg.br
http://www.dcc.ufmg.br/~loureiro
UFMG/ICEx/DCC
MD
Conceitos
460
Introduo
Ramo da matemtica que trata da contagem.
Em geral, a dificuldade no est em como contar mas o que contar.
Em Cincia da Computao, questes de contagem so importantes j que
temos uma quantidade finita de recursos.
Exemplos:
Quanto de memria ser utilizado por um determinado programa que faz
alocao dinmica de memria?
Quantos usurios um determinado sistema computacional tem capacidade
de atender?
Quantas computaes um determinado algoritmo executa? (Qual o custo
computacional em termos de tempo e espao de um determinado algoritmo?)
Alm disso, contagem a base de probabilidade e estatstica.
Contagem baseada em dois princpios:
Princpio da Multiplicao
Princpio da Adio
UFMG/ICEx/DCC
MD
Conceitos
461
rvore de possibilidades e
Princpio da multiplicao
Uma rvore um tipo particular de um grafo onde no existem ciclos.
uma estrutura muito til para registrar todas as possibilidades em situaes
em que os eventos ocorrem em ordem.
UFMG/ICEx/DCC
MD
Conceitos
462
rvore de possibilidades e
Princpio da multiplicao
Exemplo 1 Regras para deciso de um torneiro entre os times A e B:
Cada jogo tem sempre um vencedor
O time para ser campeo deve vencer dois jogos consecutivos ou um total de
trs jogos
De quantas formas diferentes o torneio pode ser jogado?
UFMG/ICEx/DCC
MD
Conceitos
463
rvore de possibilidades e
Princpio da multiplicao
AxB
A*
A
AxB
AxB
AxB
B* B
A*
A
AxB
A*
AxB
AxB
B* B
B
B*
B
AxB
A*
AxB
A*
B*
B* B
B
UFMG/ICEx/DCC
MD
Conceitos
464
rvore de possibilidades e
Princpio da multiplicao
Exemplo 1 (continuao) Formas diferentes de o torneio ser jogado:
1. AA
2. ABAA
3. ABABA
A*
A*
A
A
4. ABABB
AxB
AxB
A
A
AxB
AxB
5. ABB
B* B
B
A
B
B
6. BAA
AxB
7. BABAA
A*
A
A
AxB
AxB
8. BABAB
B
A
A
AxB
B* B
9. BABB
B* B
AxB
B
B
10. BB
Ou seja, 10 formas
diferentes.
UFMG/ICEx/DCC
MD
Conceitos
A*
B*
A*
B*
465
rvore de possibilidades e
Princpio da multiplicao
Exemplo 2 Considere um sistema computacional que possui quatro unidades
de Entrada/Sada A, B, C e D e trs processadores X, Y e Z. Qualquer
unidade de E/S pode ser conectada a um processador. Quantas possibilidades
existem de conectar uma unidade de E/S a um processador?
E/S
A
Processador
X
Y
Z
X
4 3 = 12
Sistema
Computacional
ou seja, 12 configuraes
diferentes
X
C
Y
Z
X
Y
Z
UFMG/ICEx/DCC
MD
Conceitos
466
Princpio da multiplicao
Se uma operao consiste em k passos, sendo que
o primeiro passo pode ser executado de n1 formas diferentes, ou seja, existem n1 possibilidades para o passo 1,
o segundo passo pode ser executado de n2 formas diferentes, e assim, sucessivamente, at
o k-simo passo que pode ser executado de nk formas diferentes
ento toda a operao pode ser executada de
n1 n2 . . . nk
formas diferentes.
UFMG/ICEx/DCC
MD
Conceitos
467
Princpio da multiplicao
Exemplo 3 Um nmero de identificao formado por uma sequncia de quatro smbolos escolhidos de um conjunto formado pelas 26 letras do alfabeto e
os 10 dgitos. Quantos nmeros de identificao diferentes existem se repetio
de smbolos permitida?
Observe que:
O conjunto de smbolos formado por 36 smbolos S = {A, . . . , Z, 0, . . . , 9}.
A ordem de ocorrncia dos smbolos importante.
Para cada posio existem 36 possibilidades.
Assim, existem
36 36 36 36 = 364 = 1 679 616
nmeros de identificao diferentes.
UFMG/ICEx/DCC
MD
Conceitos
468
Princpio da multiplicao
Exemplo 4 Suponha o mesmo cenrio anterior de nmero de identificao mas
com a restrio que smbolos no podem ser repetidos. Neste caso, quantos
nmeros de identificao existem?
Observe que:
O conjunto de smbolos formado por 36 smbolos.
A ordem de ocorrncia dos smbolos importante.
Para a primeira posio existem 36 possibilidades.
Para a segunda posio, pode-se escolher um smbolo do subconjunto S2
formado por S menos o smbolo escolhido para a primeira posio. Assim, o
subconjunto S2 possui sempre 35 smbolos.
Da mesma forma, para a terceira posio, o subconjunto S3 possui 34 smbolos e, para a quarta posio, o subconjunto S4 possui 33 smbolos.
Assim, existem
36 35 34 33 = 1 413 720
nmeros de identificao diferentes.
UFMG/ICEx/DCC
MD
Conceitos
469
Princpio da multiplicao
Exemplo 5 Suponha que A1, A2, A3, A4 so conjuntos com n1, n2, n3, n4
elementos respectivamente. Mostre que o conjunto A1 A2 A3 A4 tem
n1 n2 n3 n4 elementos.
Cada elemento em A1 A2 A3 A4 uma tupla ordenada da forma
(a1, a2, a3, a4), onde a1 A1, a2 A2, a3 A3, a4 A4. O processo
de construir estas tuplas ordenadas uma operao de quatro passos:
1.
2.
3.
4.
Para cada um dos passos 1 a 4 acima, existem n1, n2, n3, n4 formas respectivamente. Assim, pela regra da multiplicao existem n1 n2 n3 n4 tuplas
distintas no conjunto A1 A2 A3 A4.
UFMG/ICEx/DCC
MD
Conceitos
470
Princpio da multiplicao
Exemplo 6 Considere o conjunto de todos os circuitos eletrnicos com duas entradas lgicas (P e Q) e uma sada lgica. Quantas tabelas da verdade distintas,
considerando a entrada e sada, podem ser construdas para este cenrio?
Esquema de um circuito e uma possvel tabela de entrada e sada:
P Q Sada
1a linha 1
1
1
P C IRCUITO
2a linha 1
0
0
Sada
Q - E LETRNICO
3a linha 0
1
1
4a linha 0
0
0
Observe que:
Cada linha de entrada corresponde a uma possvel entrada.
Para cada linha existem duas possibilidades de sada.
A ordem em que cada linha de entrada considerada importante.
UFMG/ICEx/DCC
MD
Conceitos
471
Princpio da multiplicao
Assim, existem
|
2
2
2
2
{z
}|
{z
}|
{z
}|
{z
} = 16
1a linha
2a linha
3a linha
4a linha
UFMG/ICEx/DCC
MD
Conceitos
472
Princpio da multiplicao
Exemplo 7 Considere o mesmo problema do exemplo anterior mas um circuito
eletrnico com k entradas. Quantas tabelas distintas existem?
Observe que:
As mesmas consideraes anteriores so vlidas.
Existem 2k linhas de entrada diferentes.
Assim, existem
k
2
. . 2} = 2
|2 .{z
2k vezes
UFMG/ICEx/DCC
MD
Conceitos
473
Princpio da multiplicao
Exemplo 8 Quantas vezes os comandos do trecho de programa abaixo so
executados?
for i 1 to 4 do
for j 1 to 3 do
Comandos a serem executados;
endfor;
endfor;
Observe que:
Claramente existe uma ordem para execuo de cada comando.
Veja que a combinao de variveis de controle pode ser representada por
um par ordenado (i, j) que tm os seguintes valores:
(1, 1), . . . , (1, 3), (2, 1), . . . , (2, 3), . . . , (4, 1), . . . , (4, 3).
Assim, os comandos so executados
{z
1) + 1} = 4 3 = 12
(4
{z
1) + 1} (3
|
|
i
vezes.
UFMG/ICEx/DCC
MD
Conceitos
474
Princpio da multiplicao
Exemplo 9 Considere o mesmo problema do exemplo anterior com comandos
de repetio aninhados. As variveis de controle so c1, c2, . . . , cn, que podem
assumir valores nas faixas [Ic1 , Sc1], [Ic2 , Sc2], . . . , [Icn , Scn], respectivamente
(I para inferior e S para superior). Quantas vezes os comandos presentes no
loop mais interno controlado pela varivel cn so executados?
Observe que:
As mesmas consideraes anteriores so vlidas.
Assim, os comandos presentes no loop mais interno controlado pela varivel cn
so executados
((Sc1 Ic1 ) + 1) ((Sc2 Ic2 ) + 1) . . . |((Scn {z
Icn ) + 1)}
|
{z
c1
} |
{z
c2
cn
vezes.
UFMG/ICEx/DCC
MD
Conceitos
475
Princpio da multiplicao
Exemplo 10 Considere o seguinte problema: As posies de presidente,
tesoureiro e secretrio tm que ser escolhidas entre quatro pessoas A, B, C
e D. Alm disso, existem duas restries:
(a) A no pode ser presidente;
(b) C ou D deve ser o secretrio.
Quantas escolhas distintas existem?
natural tentar resolver o problema usando o princpio de multiplicao. Uma
possibilidade fazer o seguinte raciocnio:
Existem trs escolhas para presidente j que A no pode ser;
Existem trs escolhas para tesoureiro de um conjunto de quatro candidatos;
Duas escolhas para secretrio.
o que daria 3 3 2 = 18 possibilidades.
Observe que:
O nmero de escolhas de secretrio depende de como o presidente e o
tesoureiro so escolhidos e o valor acima no correto.
UFMG/ICEx/DCC
MD
Conceitos
476
Princpio da multiplicao
Exemplo 10 (continuao) A rvore abaixo mostra todas as possibilidades:
Presidente
Tesoureiro
A
Secretrio
C
D
A
Chapa
D
D
C
D
C
B
A
D
C
D
B
MD
Conceitos
477
Princpio da multiplicao
Exemplo 10 (continuao) Estratgia para resoluo do problema usando o
princpio da multiplicao:
(a) Escolha o secretrio, j que existem duas possibilidades apenas: C ou D;
(b) Escolha o presidente. Neste caso, existem apenas duas possibilidades j
que A e a pessoa escolhida como secretrio no podem ser escolhidas
como presidente;
(c) Escolha o tesoureiro, que pode ser uma das duas pessoas restantes.
o que d 2 2 2 = 8 possibilidades.
UFMG/ICEx/DCC
MD
Conceitos
478
Princpio da multiplicao
Exemplo 10 (continuao) A rvore abaixo mostra todas essas possibilidades:
Secretrio
Presidente
Tesoureiro
A
B
D
A
D
B
Chapa
A
B
C
A
C
B
UFMG/ICEx/DCC
MD
Conceitos
479
Princpio da multiplicao
Exemplo 11 Um estudante tem:
4 livros de sistemas operacionais;
7 livros de programao; e
3 livros de estruturas de dados.
De quantas formas diferentes os livros podem ser colocados na prateleira de
uma estante, dado que livros de um mesmo assunto devem ficar juntos?
Observe que:
A ordem de ocorrncia dos conjuntos de livros na estante importante.
Dentro de cada conjunto de livros a ordem tambm importante.
O problema pode ser dividido em duas partes: nmero de ordenaes de
conjuntos e, dentro de cada conjunto, ordenao dos livros.
UFMG/ICEx/DCC
MD
Conceitos
480
Princpio da multiplicao
Exemplo 11 (continuao) A quantidade de ordenaes de conjuntos de livros
dada por:
2
1
3
{z
}|
{z
}=6
{z
}|
|
# possibilidades para # possibilidades para # possibilidades para
o primeiro conjunto o segundo conjunto o terceiro conjunto
(meio)
(direita)
(esquerda)
Para cada um dos conjuntos de livros, temos as seguintes possibilidades:
Sistemas operacionais (4 livros): 4 3 2 1 = 4!
Programao (7 livros): 7 6 . . . 1 = 7!
Estruturas de dados (3 livros): 3 2 1 = 3!
Assim, temos
6 (4! 7! 3!) = 4 354 560
possibilidades de colocar os livros na estante.
UFMG/ICEx/DCC
MD
Conceitos
481
Princpio da multiplicao
Exemplo 12 Quantos inteiros de trs dgitos so divisveis por 5?
Observe que:
Os nmeros inteiros candidatos esto no intervalo [100, 999].
Os nmeros candidatos terminam em 0 ou 5.
Primeira estratgia para resolver o problema:
Os nmeros divisveis por 5 nesse intervalo podem ser criados a partir da
concatenao de dgitos provenientes dos seguintes conjuntos, nessa ordem:
{1, 2, 3, 4, 5, 6, 7, 8, 9}{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}{0, 5}
Assim, essa quantidade dada por:
10
2
9
{z
} = 180
{z
}|
{z
}|
|
# possibilidades para # possibilidades para # possibilidades para
o primeiro conjunto o segundo conjunto o terceiro conjunto
(unidade)
(centena)
(dezena)
UFMG/ICEx/DCC
MD
Conceitos
482
Princpio da multiplicao
Exemplo 12 (continuao) Note que o mesmo problema pode ser resolvido por
outra estratgia que no envolve o princpio da multiplicao.
Segunda estratgia para resolver o problema:
Enumere os nmeros divisveis por 5 nesse intervalo:
100
l
5 20
...
105
l
5 21
...
995
...
l
5 199
999
UFMG/ICEx/DCC
MD
Conceitos
483
Princpio da multiplicao
Exemplo 13 Quantos inteiros no intervalo [1,1000] so divisveis por 3 ou divisveis por 5?
Vamos usar a segunda estratgia do problema anterior:
(a) Enumere os nmeros divisveis por 3 nesse intervalo;
(b) Enumere os nmeros divisveis por 5 nesse intervalo;
(c) Enumere os nmeros divisveis por 3 e 5 (ou seja, 15) nesse intervalo.
A soluo deste problema dado por (a) + (b) (c) = 333 + 200 66 =
467.
(a) Nmeros divisveis por 3 nesse intervalo: 333.
3 1, 3 2, . . . , 3 333.
(b) Nmeros divisveis por 5 nesse intervalo: 200.
5 1, 5 2, . . . , 5 200.
(c) Nmeros divisveis por 15 nesse intervalo: 66.
15 1, 15 2, . . . , 15 66.
UFMG/ICEx/DCC
MD
Conceitos
484
Princpio da multiplicao
Exemplo 14
Quantos nmeros palndromos existem que possuem cinco dgitos?
Um nmero palndromo tem a seguinte regra de formao de dgitos:
1 = d 1
2 = d2
3 = d3
4 = d2
5 = d1
Ou seja, o primeiro dgito e o quinto dgito so idnticos, assim como o segundo e quarto dgitos.
Vamos usar o seguinte raciocnio:
(a) Nmero de opes para o primeiro dgito (d1 ) = n 1.
(b) Nmero de opes para o segundo dgito (d2 ) = n.
(c) Nmero de opes para o terceiro dgito (d3 ) = n.
(d) Nmero de opes para o quarto dgito (d2 ). o mesmo valor do segundo dgito e deve
ser considerado um nico elemento que j foi contado.
(e) Nmero de opes para o quinto dgito (d1 ). o mesmo valor do primeiro dgito e deve
ser considerado um nico elemento que j foi contado.
A soluo deste problema dado por (a) (b) (c) = (n 1) n n = n3 n2
UFMG/ICEx/DCC
MD
Conceitos
485
Princpio da multiplicao
Exemplo 15 Use o princpio da multiplicao para provar que o conjunto
X = {x1 , x2 , . . . , xn }
com n elementos possui 2n subconjuntos (que a cardinalidade do conjunto P(X)).
Prova. Um subconjunto qualquer de X pode ser construdo em n passos:
1. Inclua ou no o elemento x1 ;
2. Inclua ou no o elemento x2 ;
...
n. Inclua ou no o elemento xn ;
Em cada passo existem duas possibilidades. Assim, o nmero de de subconjuntos de X dado
por:
n
|2 2
{z. . . 2} = 2
n fatores
Observe, por exemplo, que o conjunto obtido quando nenhum elemento de X escolhido.
UFMG/ICEx/DCC
MD
Conceitos
486
Permutao
Definio: um arranjo ordenado de objetos sem repetio.
A ordem importante.
Pode-se aplicar o princpio da multiplicao.
Exemplo 16 Seja o conjunto A = {a, b, c}.
(a) Quantas permutaes existem?
3
2
1
{z
}|
{z
}=6
|
{z
}|
# possibilidades para # possibilidades para # possibilidades para
o primeiro elemento o segundo elemento o terceiro elemento
(b) Quais so elas?
1. abc
2. acb
3. bac
4. bca
5. cab
6. cba
UFMG/ICEx/DCC
MD
Conceitos
487
Permutao: Caso I
Seja um conjunto com n elementos. Quantas permutaes existem considerando todos os elementos e que no h repetio?
Observe que:
A ordem de ocorrncia dos smbolos do conjunto importante.
Aplicando-se o princpio da multiplicao, temos:
n
(n-1)
{z
} |
|
{z
}
# possibilidades para # possibilidades para
o primeiro elemento o segundo elemento
UFMG/ICEx/DCC
MD
... ...|
Conceitos
= n!
{z
}
# possibilidades para
o n-simo elemento
488
Permutao: Caso II
Seja um conjunto com n elementos. Quantas permutaes existem considerando r (1 r n) elementos desse conjunto e que no h repetio?
Observe que:
A ordem de ocorrncia dos smbolos do conjunto importante.
Aplicando-se o princpio da multiplicao, temos:
(n-1)
{z
} |
|
{z
}
# possibilidades para # possibilidades para
o primeiro elemento o segundo elemento
n
Y
... ...|
(n-r+1)
{z
}
# possibilidades para
o r-simo elemento
i = (n r + 1) . . . (n 1) n =
i=nr+1
n (n 1) . . . (n r + 1)
UFMG/ICEx/DCC
(n r) (n r 1) . . . 2 1
n!
=
(n r) (n r 1) . . . 2 1
(n r)!
MD
Conceitos
489
UFMG/ICEx/DCC
MD
Conceitos
490
5 4 3!
5!
=
= 20
(5 2)!
3!
UFMG/ICEx/DCC
MD
Conceitos
491
n (n 1)!
n (n 1) (n 2)!
+
(n 2)!
(n 1)!
= n (n 1) + n
= n2 n + n
= n2
UFMG/ICEx/DCC
MD
Conceitos
492
Permutao
Exemplo 19 Permutaes de letras de uma palavra:
(a) De quantas formas diferentes as letras da palavra COMPUTER podem ser
arranjadas numa sequncia (fila)?
Todas as letras na palavra COMPUTER so distintas. Assim, o nmero de
formas distintas de arranjar as letras o nmero de permutaes de um
conjunto de oito elementos, ou seja, 8! = 40 320.
UFMG/ICEx/DCC
MD
Conceitos
493
Permutao
Exemplo 20 Permutaes de objetos ao redor de um crculo:
A
UFMG/ICEx/DCC
MD
Conceitos
494
Princpio da adio
Existem problemas de contagem que podem ser resolvidos contando o nmero de elementos:
na unio de dois conjuntos,
na diferena entre dois conjuntos, e
na interseco de dois conjuntos
O princpio a ser usado neste caso chamado de Princpio da Adio.
UFMG/ICEx/DCC
MD
Conceitos
495
Princpio da adio
Se uma operao consiste em k passos distintos, onde os passos so mutuamente disjuntos, sendo que
o primeiro passo pode ser executado de n1 formas diferentes, ou seja, existem n1 possibilidades para o passo 1,
o segundo passo pode ser executado de n2 formas diferentes, e assim sucessivamente at
o k-simo passo que pode ser executado de nk formas diferentes
ento toda a operao pode ser executada de
n1 + n2 + . . . + nk
formas diferentes.
UFMG/ICEx/DCC
MD
Conceitos
496
Princpio da adio
Exemplo 21 Uma senha de usurio de um sistema computacional pode ser
formada por sequncias de uma a trs letras maisculas, sendo que repeties
so permitidas. Quantas senhas diferentes existem?
Observe que:
O conjunto de todas as senhas formada pelos subconjuntos de senhas de
uma, duas e trs letras.
Em cada um desses subconjuntos temos a seguinte quantidade de senhas:
Uma letra: 26
Duas letras: 26 26 = 262
Trs letras: 26 26 26 = 263
Assim, pelo princpio da adio temos:
26 + 262 + 263 = 18 278
senhas de usurio diferentes.
UFMG/ICEx/DCC
MD
Conceitos
497
Princpio da adio
Exemplo 22 Quantos nmeros inteiros mpares existem no intervalo [10,99]
com dgitos distintos?
Nmeros com
dgitos distintos
Os cinco nmeros mpares com dgitos iguais so 11, 33, 55, 77 e 99. Logo,
deve-se subtrair 5.
I |{1, 2, . . . , 9}| = 9
II |{1, 3, 5, 7, 9 }| = 5
Nmeros com dgitos distintos = 9 5 5 = 40
UFMG/ICEx/DCC
MD
Conceitos
498
Princpio da adio
Uma consequncia importante do princpio da adio que se o nmero de
elementos de um conjunto A (n(A)) e de um subconjunto prprio B (n(B)) de
A so ambos conhecidos, ento o nmero de elementos de A que no esto
em B pode ser calculado:
n(A B) = n(A) n(B)
UFMG/ICEx/DCC
MD
Conceitos
499
Princpio da adio
Exemplo 23 No exemplo 3 vimos que existem 364 = 1 679 616 identificadores formados por uma sequncia de quatro smbolos escolhidos de um
conjunto formado pelas 26 letras do alfabeto e os 10 dgitos, com repetio de
smbolos. Dessa quantidade quantos identificadores possuem pelo menos um
smbolo repetido?
Observe que:
A quantidade de identificadores com pelo menos um smbolo repetido dado
por:
Total de identificadores de tamanho quatro com smbolos repetidos e
no repetidos menos total de identificadores de tamanho quatro com
smbolos no repetidos.
Assim, o total de identificadores de tamanho quatro com pelo menos um smbolo
repetido dado por
364 (36 35 34 33) = 1 679 616 1 413 720 = 265 896
UFMG/ICEx/DCC
MD
Conceitos
500
Princpio da adio
Exemplo 24 Quantos nmeros inteiros existem no intervalo [1, 100 000] que
contm o algarismo 6 exatamente uma nica vez?
O algarismo 6 pode aparecer exatamente uma nica vez nas seguintes posies:
6
6
6
6
6
Nas outras posies podemos escolher qualquer algarismo de 0 a 9, exceto o
6, ou seja, nove possibilidades.
Assim, temos 5 94 = 32805 nmeros.
UFMG/ICEx/DCC
MD
Conceitos
501
Princpio da adio
Exemplo 25 Quantos nmeros inteiros existem no intervalo [1, 100 000] que
contm pelo menos um algarismo 6?
Para resolver este problema, vamos calcular a quantidade de nmeros que no tem o algarismo
6 no intervalo. Neste caso, o intervalo fica alterado para [1, 99 999] j que 100 000 no contm
o algarismo 6.
Temos cinco posies onde podemos preencher com os algarismos de 0 a 9, exceto o 6, ou
seja, temos nove possibilidades, o que gera 95 = 59 049 nmeros sem o algarismo 6. No
entanto, uma dessas sequncias formada por cinco 0s, que est fora do intervalo pedido
e, assim, temos 59 049 1 = 59 048 nmeros no intervalo [1, 99 999] que no contm o
algarismo 6.
Sabemos que no intervalo [1, 99 999] temos 99 999 nmeros sendo que 59 048 deles no
contm o algarismo 6. Logo, temos
99 999 59 048 = 40 951
nmeros que contm pelo menos um algarismo 6.
UFMG/ICEx/DCC
MD
Conceitos
502
Princpio da adio
Exemplo 26 O segredo de um cofre requer trs nmeros no intervalo [1, 39]. Suponha
que o segredo pode ser construdo de tal forma que o mesmo nmero no pode ser usado
em sequncia mas o mesmo nmero pode ser usado na primeira e terceira posies. Quantos
segredos existem?
Podemos resolver este problema usando a seguinte estratgia:
(a) Calcular a quantidade de segredos supondo que sequncias de nmeros idnticos so
permitidas;
Isto dado por 393 = 59 319.
(b) Calcular a quantidade de segredos onde os trs nmeros so idnticos;
Existem exatamente 39 segredos onde os trs nmeros so idnticos.
(c) Calcular a quantidade de segredos onde existem dois nmeros idnticos em sequncia;
Existem (39 38) 2 = 2 964 segredos onde h dois nmeros idnticos em sequncia. Estes dois cenrios podem ser representados por:
n1
n1
n2 6= n1
n2 6= n1
n1
n1
e
.
1
2
3
1
2
3
sendo que n1 pode variar de 1 a 39 e n2 tambm, exceto que no pode ter o mesmo
valor de n1 .
Logo, o nmero de segredos que satisfazem o problema dado por
(a) (b) (c) = 59 319 39 2 964 = 56 316.
UFMG/ICEx/DCC
MD
Conceitos
503
Princpio da adio
Exemplo 26 (continuao)
De uma forma genrica, o segredo de um cofre que requer trs nmeros no intervalo [1, n],
onde o mesmo nmero no pode ser usado em sequncia mas o mesmo nmero pode ser
usado na primeira e terceira posies tem a seguinte quantidade de segredos:
(a) Quantidade de segredos supondo que sequncias de nmeros idnticos so permitidas:
Isto dado por n3 .
(b) Quantidade de segredos onde os trs nmeros so idnticos:
Existem exatamente n segredos onde os trs nmeros so idnticos.
(c) Quantidade de segredos onde existem dois nmeros idnticos em sequncia:
Existem n (n 1) 2 segredos onde h dois nmeros idnticos em sequncia.
Logo, a quantidade de segredos que satisfazem o problema dado por
(a) (b) (c) = n3 n 2n(n 1) = n3 2n2 + n.
UFMG/ICEx/DCC
MD
Conceitos
504
UFMG/ICEx/DCC
MD
Conceitos
505
Combinao e Permutao
Para cada combinao C(n, r), existem r! formas de permutar os r objetos.
Ou ainda, para cada permutao P (n, r) existem r! arranjos com o mesmo
conjunto de r objetos distintos.
Pelo Princpio da Multiplicao, o nmero de permutaes de r objetos distintos escolhidos de n objetos o produto da quantidade de formas de escolher
os r objetos, C(n, r), pela quantidade de formas de arranjar os r objetos, r!,
ou seja,
C(n, r) r! = P (n, r)
Ou ainda
C(n, r) =
UFMG/ICEx/DCC
P (n, r)
n!
=
r!
r!(n r)!
MD
Conceitos
506
Combinao e Permutao
Exemplo 27
Enfileiramento: De quantas formas diferentes pode-se formar uma fila com sete marcianos e
cinco jovianos, sendo que dois jovianos no podem ficar juntos?
Se dois jovianos no podem ficar juntos, a nica configurao possvel de lugares na fila dada
por:
M1
1
M2
2
M3
3
M4
4
M5
5
M6
6
M7
7
MD
Conceitos
507
Combinao
Definio: Sejam n e r inteiros no negativos com r n. Uma combinao
r de um conjunto de n elementos um subconjunto de r dos n elementos.
C(n, r) representa o nmero de subconjuntos de tamanho r que podem ser
obtidos de um conjunto de n elementos.
Formas para representao de uma combinao:
C(n, r)
!
n
r
Cn,r
nCr
nCr
UFMG/ICEx/DCC
MD
Conceitos
508
Combinao e Permutao
Exemplo 28 Quantas combinaes de dois elementos podem ser obtidas do
conjunto {0, 1, 2, 3}?
4!
n!
=
=6
C(n, r) =
r!(n r)!
2! 2!
Esses seis conjuntos so:
{0, 1}, {0, 2}, {0, 3} subconjuntos que contm 0.
{1, 2}, {1, 3}
{2, 3}
UFMG/ICEx/DCC
MD
Conceitos
509
Combinao e Permutao
Exemplo 29 Quantos nmeros inteiros existem no intervalo [1, 99 999] que
contm exatamente os dgitos 2, 3, 4 e 5?
Posies que os dgitos podem ser colocados:
1
Idia:
Cada nmero ser representado com cinco dgitos. Assim, 1 ser escrito
como 00001.
UFMG/ICEx/DCC
MD
Conceitos
510
Combinao e Permutao
Exemplo 29 (continuao)
Devemos:
(a) Calcular a quantidade de subconjuntos de quatro posies que iro ter os quatro dgitos
obrigatrios;
Isto dado por C(5, 4) = 5. Existem cinco conjuntos de quatro posies onde os
dgitos obrigatrios podem ser colocados.
(b) Calcular a quantidade de permutaes que podemos ter com os quatro dgitos obrigatrios;
Isto dado por 4! = 24. Para cada conjunto de quatro posies existem 24 permutaes para os quatro dgitos obrigatrios.
(c) Calcular a quantidade de nmeros no intervalo que podemos ter com os dgitos obrigatrios.
Isto dado por 5 24 = 120.
(d) Calcular a quantidade de nmeros no intervalo que podemos ter incluindo os dgitos
restantes, ou seja, {0, 1, 6, 7, 8, 9}.
Isto dado por 6 120 = 720. Existem seis outros dgitos que podem ocupar a quinta
e ltima posio restante para cada permutao dos quatro dgitos obrigatrios.
UFMG/ICEx/DCC
MD
Conceitos
511
Combinao
Suponha que desejamos selecionar r objetos distintos de um conjunto de n
elementos mas a ordem no importante.
Neste caso, estamos contando o nmero de combinaes de r (r n) objetos distintos escolhidos de um conjunto de n (n 1) elementos onde a ordem
no importante.
UFMG/ICEx/DCC
MD
Conceitos
512
Combinao
Exemplo 30 Numa escola, h 10 professores de Matemtica e 15 de Portugus. Pretende-se formar, com esses professores, uma comisso de sete
membros. Quantas comisses distintas podem ser formadas?
Observe que:
O conjunto possui 25 professores.
A ordem no importante.
C(25, 7) =
25!
7! 18!
25 24 23 22 21 20 19 18!
=
7 6 5 4 3 2 18!
= 2 043 500
UFMG/ICEx/DCC
MD
Conceitos
513
Combinao
Exemplo 31 Suponha que times de 5 pessoas vo ser formados de um grupo
de 12 pessoas. Duas pessoas desse grupo (A e B) insistem em trabalhar conjuntamente. Assim, ao se formar um time, ou as duas pessoas esto presentes
ou no. Quantos times podem ser formados?
No total de times
"
"
10! = 120
I C(10, 3) = 3!7!
Os times que contm A e B devem ter mais 3 pessoas das 10 restantes do grupo.
10! = 252
II C(10, 5) = 5!5!
Os times que no contm A e B devem ter 5 pessoas das 10 restantes do grupo.
UFMG/ICEx/DCC
MD
Conceitos
514
Combinao
Exemplo 32 Suponha o mesmo cenrio anterior mas agora A e B no podem
pertencer simultaneamente a um mesmo time. Quantos times podem ser formados?
No total de times
"
No de times com
A e sem B
I
"
No de times com
B e sem A
II
"
No de times sem
A e sem B
III
10! = 210
I C(10, 4) = 4!6!
Os times com A e sem B devem ter mais 4 pessoas das 10 restantes do grupo (10 porque
A e B esto fora e 4 porque A uma das 5 pessoas).
10! = 210
II C(10, 4) = 4!6!
Idem ao anterior.
10! = 252
III C(10, 5) = 5!5!
Os times que no contm A e B devem ter 5 pessoas das 10 restantes do grupo.
MD
Conceitos
515
Combinao
Exemplo 32 Este problema tambm pode ser resolvido de outra forma:
"
#
No de times com
No de times com
A e com B
= 5 pessoas
II
I
No total de times
12! = 792
I C(12, 5) = 5!7!
Total de times com 5 pessoas.
10! = 120
II C(10, 3) = 3!7!
Os times que contm A e B devem ter mais 3 pessoas das 10 restantes do grupo.
UFMG/ICEx/DCC
MD
Conceitos
516
UFMG/ICEx/DCC
MD
Conceitos
517
Combinao
Exemplo 33 Suponha que o grupo de 12 pessoas seja formado por 5 homens
e 7 mulheres. Quantos times de 5 pessoas podem ser formados com 3 homens
e 2 mulheres?
No total de times
"
No de times com
3 homens
I
"
No de times com
2 mulheres
II
5! = 10
I C(5, 3) = 2!3!
Total de times com 3 homens.
7! = 21
II C(7, 2) = 2!5!
Total de times com 2 mulheres.
UFMG/ICEx/DCC
MD
Conceitos
518
Combinao
Exemplo 34 Suponha o mesmo grupo anterior. Quantos times de 5 pessoas
podem ser formados com pelo menos um homem?
"
#
No de times com
No de times com
nenhum homem
= 5 pessoas
II
I
No total de times
12! = 792
I C(12, 5) = 5!7!
Total de times com 5 pessoas incluindo homens e mulheres.
7! = 21
II C(7, 5) = 5!2!
O total de times com nenhum homem exatamente a quantidade de times formados apenas por mulheres.
UFMG/ICEx/DCC
MD
Conceitos
519
Combinao
Exemplo 34 Este problema tambm pode ser resolvido de outra forma:
5
7
1
4
5
7
2
3
5
7
3
2
5
7
4
1
5
7
5
0
UFMG/ICEx/DCC
MD
Conceitos
520
Combinao
Exemplo 35 Suponha o mesmo grupo anterior. Quantos times de 5 pessoas
podem ser formados com no mximo um homem?
No total de times
"
No de times com
nenhum homem
I
"
No de times com
um homem
II
7! = 21
I C(7, 5) = 5!2!
O total de times com nenhum homem exatamente a quantidade de times formados apenas por mulheres.
5! 7! = 5 35 = 175
II C(5, 1) C(7, 4) = 1!4!
4!3!
O total de times com um homem e quatro mulheres.
UFMG/ICEx/DCC
MD
Conceitos
521
Combinao
Exemplo 36 Numa escola, h 10 professores de Matemtica e 15 de Portugus. Pretende-se formar, com esses professores, uma comisso de sete
membros. Quantas comisses distintas podem ser formadas com, pelo menos,
um professor de Matemtica?
o de comisses com
N
de comisses com
h
i
nenhum professor de
Matemtica
No
MD
Conceitos
522
Combinao
Exemplo 36 Este problema tambm pode ser resolvido de outra forma:
10
15
1
6
10
15
2
5
10
15
3
4
10
15
4
3
10
15
5
2
10
15
6
1
10
15
7
0
UFMG/ICEx/DCC
MD
Conceitos
523
Combinao
Exemplo 37 Suponha o mesmo grupo anterior. Quantas comisses distintas podem ser
formadas com, pelo menos, dois professores de Matemtica e, pelo menos, trs professores de
Portugus?
Por que o raciocnio abaixo est errado?
o de comisses com
N
de comisses com
3
professores
de
Por 2 professores de Ma-
temtica
tugus
I
II
No
No de comisses com
2 professores dentre
os restantes de Matemtica e/ou Portugus
III
10!
I C(10, 2) = 2!8!
= 45
No de comisses com 2 professores de Matemtica.
15!
II C(15, 3) = 3!12!
= 455
No de comisses com 3 professores de Portugus.
20!
III C(20, 2) = 2!18!
= 190
No de comisses com 2 professores dentre os restantes de Matemtica e/ou Portugus.
Note que ficam 20 professores dos 25 do grupo, j que 5 foram escolhidos.
No total de comisses = 45 455 190 = 3 890 250
UFMG/ICEx/DCC
MD
Conceitos
524
Combinao
Exemplo 37 (continuao) O raciocnio foi:
I No de comisses com 2 professores de Matemtica
II No de comisses com 3 professores de Portugus
III No de comisses com 2 professores dentre os restantes de Matemtica e/ou Portugus
Um cenrio da proposio anterior pode ser representado pelos seguintes conjuntos:
I
Professores de Matemtica
III
Professores de Matemtica e
Portugus
F
II
Professores de Portugus
UFMG/ICEx/DCC
MD
Conceitos
525
Combinao
Exemplo 37 (continuao) Este problema pode ser resolvido da seguinte forma:
I
Professores de Matemtica
II
Professores de Portugus
UFMG/ICEx/DCC
10
4
15
+
3
10
3
15
+
4
10
2
15
5
MD
Conceitos
526
Combinao
Exemplo 38 Seja um baralho comum de 52 cartas que possui quatro naipes (, , , )
de 13 denominaes cada (A, 2, 3, . . . , 10, J, Q, K).
(a) De quantas formas diferentes pode-se ter uma mo de poker (cinco cartas) todas do
mesmo naipe?
Uma mo de poker pode ser construda em dois passos sucessivos: selecione um
naipe e, em seguida, escolha cinco cartas desse naipe. Pelo princpio da multiplicao
temos:
4 C(13, 5) = 5 148.
(b) De quantas formas diferentes pode-se ter uma mo de poker contendo trs cartas de
uma denominao e duas cartas de uma outra denominao?
Essa mo de poker pode ser construda em quatro passos sucessivos: selecione a
primeira denominao para as trs cartas, selecione os trs naipes dessa denominao,
selecione a segunda denominao para as outras duas cartas, selecione os dois naipes
dessa denominao. Pelo princpio da multiplicao temos:
13 C(4, 3) 12 C(4, 2) = 3 744.
UFMG/ICEx/DCC
MD
Conceitos
527
Combinao
Exemplo 39 Dado um grid n m, quantas rotas (caminhos) existem entre a
posio (0, 0) (canto inferior esquerdo) at a posio (n, m) (canto superior
direito) se os nicos movimentos possveis so mover para a direita (D) ou para
cima (C)?
(n,m)
...
...
..
.
..
.
..
.
..
.
..
.
..
.
..
.
...
...
...
...
...
(0,0)
UFMG/ICEx/DCC
MD
Conceitos
528
Combinao
Exemplo 39 (continuao)
Cada rota pode ser expressa por uma sequncia de Ds e Cs, sendo que existem exatamente
n Ds e m Cs, ou seja, cada rota possui n + m passos.
Posies dos movimentos:
...
1
n+m
(n + m)!
n+m
=
m
m!n!
se os movimentos Cs forem escolhidos.
UFMG/ICEx/DCC
MD
Conceitos
529
Combinao
Exemplo 40 Quantos strings de 8 bits existem que possuem exatamente trs
bits 1s?
Posies que os bits 1s podem ser colocados:
1
Observe que:
No estamos interessados numa ordem.
Uma vez escolhido um subconjunto de trs posies contendo bits 1s de um
conjunto de oito posies, as posies restantes devem ter o bit 0.
Logo, este problema equivalente a contar o nmero de subconjuntos de trs
posies escolhidos de um conjunto de oito posies.
!
8!
8
=
= 56
3
3! 5!
UFMG/ICEx/DCC
MD
Conceitos
530
Combinao
Exemplo 41 Considere formas de ordenar as letras da palavra MISSISSIPPI.
Por exemplo:
IIMSSPISSIP
ISSSPMIIPIS
PIMISSSSIIP
UFMG/ICEx/DCC
MD
Conceitos
10
11
531
Combinao
Exemplo 41 Observe que:
Este exemplo generaliza o anterior.
Cpias de uma mesma letra no podem ser distinguidas.
Uma vez escolhidas as posies para uma certa letra, as cpias dessa letra
podem ir em qualquer posio.
Assim, construir uma ordem para as letras pode ser visto como um processo
formado de quatro etapas:
Escolher um subconjunto de quatro posies para a letra S.
Escolher um subconjunto de quatro posies para a letra I.
Escolher um subconjunto de duas posies para a letra P.
Escolher um subconjunto de uma posio para a letra M.
UFMG/ICEx/DCC
MD
Conceitos
532
Combinao
Exemplo 41
Observe que:
Existem 11 posies e C(11, 4) subconjuntos de quatro posies para a letra
S.
Existem sete posies restantes e C(7, 4) subconjuntos de quatro posies
para a letra I.
Existem trs posies restantes e C(3, 2) subconjuntos de duas posies
para a letra P.
Finalmente, existe apenas uma posio restante para a letra M.
Assim, pelo princpio da multiplicao temos:
!
11! 7!
3!
1!
11!
11
7
3
1
=
= 34650
4
4
2
1
4!7! 4!3! 2!1! 1!0!
4! 4! 2! 1!
UFMG/ICEx/DCC
MD
Conceitos
533
Combinao: Teorema
Suponha uma coleo formada por n objetos dos quais:
n
n n1
n n1 n2
n n1 n2 . . . nk1
...
n1
n2
n3
nk
n!
n1! n2! n3! . . . nk !
UFMG/ICEx/DCC
MD
Conceitos
534
UFMG/ICEx/DCC
MD
Conceitos
535
UFMG/ICEx/DCC
MD
Conceitos
536
[1, 3, 3] [1, 3, 4]
[1, 4, 4]
[2, 3, 3] [2, 3, 4]
[2, 4, 4]
[3, 3, 3] [3, 3, 4]
[3, 4, 4]
[4, 4, 4]
UFMG/ICEx/DCC
MD
Conceitos
537
Categoria 2
|
Categoria 3
|
UFMG/ICEx/DCC
Categoria 4
Resultado
[2, 4, 4]
[1, 3, 4]
MD
Conceitos
[1, 1, 1]
538
r+n1
r
UFMG/ICEx/DCC
MD
Conceitos
539
19!
r+n1
15 + 5 1
19
= 3876
=
=
=
r
15
15
15! 4!
UFMG/ICEx/DCC
MD
Conceitos
540
13!
r+n1
9+51
13
=
=
=
= 715
r
9
9
9! 4!
UFMG/ICEx/DCC
MD
Conceitos
541
UFMG/ICEx/DCC
MD
Conceitos
Resultado
(1,2,4)
(3,3,5)
542
3 + (n 1)
3
=
=
n+2
3
(n + 2)!
3! (n + 2 3)!
(n + 2) (n + 1) n (n 1)!
=
3! (n 1)!
n(n + 1)(n + 2)
=
6
UFMG/ICEx/DCC
MD
Conceitos
543
Sumrio
O RDEM
SIM
NO
R EPETIO
UFMG/ICEx/DCC
SIM
nr
n + r 1
r
NO
P (n, r)
MD
Conceitos
544
lgebra de combinaes
!
n
n
n!
=1
=
n!(n n)!
n
0
n!
=1
0!(n 0)!
UFMG/ICEx/DCC
MD
Conceitos
545
lgebra de combinaes
!
n
r
n
r
n
nr
n
, n, r|0 < r n
nr
n!
r!(n r)!
n!
(n r)!r!
UFMG/ICEx/DCC
MD
Conceitos
546
Frmula de Pascal
!
n+1
n
n
=
+
r
r1
r
onde, 0 < r n.
UFMG/ICEx/DCC
MD
Conceitos
547
Frmula de Pascal
n!
n!
n
n
+
=
+
r1
r
(r 1)!(n r + 1)!
r!(n r)!
=
n!r + n!(n r + 1)
r!(n r + 1)!
n!(r + n r + 1)
r!(n r + 1)!
n!(n + 1)
r!(n r + 1)!
(n + 1)!
r!(n r + 1)!
n+1
=
r
=
UFMG/ICEx/DCC
MD
Conceitos
548
Frmula de Pascal
Uma outra correo que sugiro a prova do teorema de Pascal, que
n
n1
n1
=
+
.
r
r
r1
Obviamente temos que
(n 1)!
(n 1)!
n1
n1
+
.
+
=
r
r1
(n 1 r)!r!
(n 1 (r 1))!(r 1)!
Mas em vez de multiplicar cada frao pelo denominador da outra, existe um caminho muito
mais fcil: multiplicar o numerador e o denominador da primeira por (n r), e da segunda por
r. Os denominadores j vo dar (n r)!r!, e a soma dos numeradores fcil.
UFMG/ICEx/DCC
MD
Conceitos
549
Relaes
Antonio Alfredo Ferreira Loureiro
loureiro@dcc.ufmg.br
http://www.dcc.ufmg.br/~loureiro
UFMG/ICEx/DCC
MD
Conceitos
550
Introduo
O mundo est povoado por relaes: famlia, emprego, governo, negcios,
etc.
Entidades em Matemtica e Cincia da Computao tambm podem estar
relacionadas entre si de diversas formas.
Objetivo:
estudar relaes em conjuntos;
estudar formas de representar relaes;
estudar propriedades de relaes.
UFMG/ICEx/DCC
MD
Conceitos
551
Relaes em conjuntos
Sejam os conjuntos A = {0, 1, 2} e B = {1, 2, 3}.
Suponha que um elemento x em A esteja relacionado com um elemento y em
B sse x < y.
A notao xRy quer dizer que x est relacionado com y, onde R o nome da
relao (neste caso, x < y).
Logo, temos que:
0R1
0R2
0R3
1R2
1R3
2R3
porque
porque
porque
porque
porque
porque
0 < 1,
0 < 2,
0 < 3,
1 < 2,
1 < 3,
2<3
Por outro lado, a notao x6Ry quer dizer que x no est relacionado com y.
UFMG/ICEx/DCC
MD
Conceitos
552
Relaes em conjuntos
Sejam os conjuntos A = {0, 1, 2} e B = {1, 2, 3}.
Logo, temos que:
UFMG/ICEx/DCC
16R1
porque
1 6< 1,
26R1
porque
2 6< 1,
26R2
porque
2 6< 2
MD
Conceitos
553
Relaes em conjuntos
O produto cartesiano de A e B, definido por
A B = {(x, y)|x A e y B}
Para este exemplo (A = {0, 1, 2} e B = {1, 2, 3}), temos que:
A B = {(0, 1), (0, 2), (0, 3), (1, 1), (1, 2), (1, 3), (2, 1), (2, 2), (2, 3)}
e os elementos que satisfazem a relao so
R = {(0, 1), (0, 2), (0, 3), (1, 2), (1, 3), (2, 3)}.
UFMG/ICEx/DCC
MD
Conceitos
554
Relaes em conjuntos
Definio (Relao (binria)):
Sejam os conjuntos A e B.
Uma relao binria de A para B um subconjunto de A B.
Dado um par ordenado (x, y) em A B, x est relacionado com y por R,
escrito xRy, sse (x, y) R.
O termo binrio usado para indicar uma relao entre dois conjuntos.
Notao:
x est relacionado com y:
xRy (x, y) R
x no est relacionado com y:
x6Ry (x, y) 6 R
UFMG/ICEx/DCC
MD
Conceitos
555
UFMG/ICEx/DCC
MD
Conceitos
556
UFMG/ICEx/DCC
MD
Conceitos
557
x2 + y2 = 1
1 , 3 ) C?
( 2
2
Sim.
(2, 0) C?
No.
UFMG/ICEx/DCC
MD
Conceitos
558
UFMG/ICEx/DCC
MD
Conceitos
559
UFMG/ICEx/DCC
MD
Conceitos
560
1
2
A
UFMG/ICEx/DCC
MD
Conceitos
561
Relaes e funes
Definio:
Uma funo F de um conjunto A para um conjunto B uma relao de A para
B que satisfaz as duas propriedades abaixo:
1. Para cada elemento x em A, existe um elemento y em B tal que (x, y)
F.
cada elemento de A o primeiro elemento de um par ordenado de F .
2. Para todos elementos x em A e y e z em B,
se (x, y) F e (x, z) F, ento y = z
no existem dois pares ordenados distintos cujo primeiro elemento seja
o mesmo.
Se F uma funo de A para B, temos que
y = F (x) (x, y) F
UFMG/ICEx/DCC
MD
Conceitos
562
Relaes e funes
Exemplo 5 Sejam os conjuntos A = {2, 4, 6} e B = {1, 3, 5} e a relao:
R = {(2, 5), (4, 1), (4, 3), (6, 5)}. R uma funo?
No, por causa dos pares (4, 1) e (4, 3).
2
4
UFMG/ICEx/DCC
MD
Conceitos
563
Relaes e funes
Exemplo 6 Sejam os conjuntos A = {2, 4, 6} e B = {1, 3, 5} e a relao:
S : (x, y) A B, (x, y) S y = x + 1. S uma funo?
No, j que 6 A mas no existe y B|y = 6 + 1 = 7.
S
2
UFMG/ICEx/DCC
MD
Conceitos
564
x = 1/2
UFMG/ICEx/DCC
MD
Conceitos
565
(x,0)
UFMG/ICEx/DCC
MD
Conceitos
566
UFMG/ICEx/DCC
MD
Conceitos
567
R
2
UFMG/ICEx/DCC
MD
Conceitos
568
R 1
R 1
A
UFMG/ICEx/DCC
B
MD
Conceitos
A
569
Grfico de R
(u,v)
(v,u)
UFMG/ICEx/DCC
MD
Conceitos
570
UFMG/ICEx/DCC
MD
Conceitos
571
R
3
8
7
7
A
UFMG/ICEx/DCC
MD
Conceitos
572
Relaes n-rias
Definio: Dados os conjuntos A1, A2, . . . , An, uma relao n-ria R em A1
A2 . . . An um subconjunto de A1 A2 . . . An.
Relaes envolvendo dois, trs e quatro conjuntos so chamadas de binrias,
ternrias e quaternrias, respectivamente.
UFMG/ICEx/DCC
MD
Conceitos
573
Propriedades de relaes
Exemplo 13 Seja A = {2, 3, 4, 6, 7, 9} e a relao binria R em A definida
como
(x, y) A A, xRy 3|(x y)
UFMG/ICEx/DCC
MD
Conceitos
574
Propriedades de relaes
Exemplo 13 Este grafo tem trs propriedades importantes:
1. Cada ponto do grafo tem uma seta para o prprio ponto.
2. Em todos os casos onde existe uma seta indo de um ponto p para um ponto
q, existe uma seta indo do ponto q para o ponto p.
3. Em todos os casos onde existe uma seta indo de um ponto p para um ponto
q e do ponto q para um ponto r, existe uma seta indo do ponto p para o
ponto r.
Essas propriedades correspondem a relaes gerais chamadas de reflexiva,
simtrica e transitiva.
UFMG/ICEx/DCC
MD
Conceitos
575
Propriedades de relaes
Seja R uma relao binria no conjunto A.
UFMG/ICEx/DCC
MD
Conceitos
576
Propriedades de relaes
Exemplo 14 Seja o conjunto A = {0, 1, 2, 3} e a relao binria R definida
como:
R = {(0, 0), (0, 1), (0, 3), (1, 0), (1, 1), (2, 2), (3, 0), (3, 3)}
Diga se a propriedade reflexiva, simtrica e transitiva?
UFMG/ICEx/DCC
MD
Conceitos
577
Propriedades de relaes
Exemplo 15 Seja o conjunto A = {0, 1, 2, 3} e a relao binria S definida
como:
S = {(0, 0), (0, 2), (0, 3), (2, 3)}
A propriedade reflexiva, simtrica e transitiva?
Reflexiva (F): No existe, por exemplo, 1R1.
Concluso
(0, 3)
(0, 2)
(0, 3)
MD
Conceitos
578
Propriedades de relaes
Exemplo 16 Seja o conjunto A = {0, 1, 2, 3} e a relao binria T definida
como:
T = {(0, 1), (2, 3)}
Diga se a propriedade reflexiva, simtrica e transitiva?
Reflexiva (F): No existe nenhum lao.
UFMG/ICEx/DCC
Como no existem pares (x, y) e (y, z) que satisfazem a hiptese a concluso da afirmao
verdadeira.
MD
Conceitos
579
UFMG/ICEx/DCC
MD
Conceitos
580
2o elemento
2
3
V
V
UFMG/ICEx/DCC
1
2
MD
Conceitos
2o elemento
0
1o elemento
1o elemento
1o elemento
2o elemento
1
2
581
UFMG/ICEx/DCC
MD
Conceitos
582
UFMG/ICEx/DCC
MD
Conceitos
583
UFMG/ICEx/DCC
MD
Conceitos
584
Hiptese
Concluso
(0, 0) e (0, 0)
(0, 0) e (0, 1)
(0, 0) e (0, 3)
(1, 0) e (0, 1)
(1, 0) e (0, 3)
(1, 1) e (1, 0)
(1, 1) e (1, 1)
(2, 2) e (2, 2)
(3, 0) e (0, 0)
(3, 0) e (0, 1)
(3, 0) e (0, 3)
(3, 3) e (3, 3)
(0, 0)
(0, 1)
(0, 3)
(1, 1)
(1, 3)?
(1, 0)
(1, 1)
(2, 2)
(3, 0)
(3, 1)?
(3, 3)
(3, 3)
Rt = {(0, 0), (0, 1), (0, 3), (1, 0), (1, 1), (1, 3), (2, 2), (3, 0), (3, 1), (3, 3)}.
UFMG/ICEx/DCC
MD
Conceitos
585
Grafo dirigido de R:
0
Hiptese
Concluso
(0, 1) e (1, 2)
(1, 2) e (2, 3)
(0, 2)? e (2, 3)
(0, 2)?
(1, 3)?
(0, 3)?
Assim,
UFMG/ICEx/DCC
Rt = {(0, 1), (0, 2), (0, 3), (1, 2), (1, 3), (2, 3)}
MD
Conceitos
586
UFMG/ICEx/DCC
MD
Conceitos
587
UFMG/ICEx/DCC
MD
Conceitos
588
UFMG/ICEx/DCC
MD
Conceitos
589
UFMG/ICEx/DCC
MD
Conceitos
590
UFMG/ICEx/DCC
MD
Conceitos
591
UFMG/ICEx/DCC
MD
Conceitos
592
UFMG/ICEx/DCC
MD
Conceitos
593
UFMG/ICEx/DCC
MD
Conceitos
594
UFMG/ICEx/DCC
MD
Conceitos
595
MD
Conceitos
596
Propriedades de relaes
Exemplo 21 Seja C o conjunto de todos os circuitos lgicos com um nmero
fixo n de entradas. Seja E uma relao binria no conjunto C definida como:
Para todos os circuitos c1 C e c2 C
c1Ec2
c1 tem a mesma tabela de entrada e sada que c2.
A propriedade reflexiva, simtrica e transitiva?
UFMG/ICEx/DCC
MD
Conceitos
597
Propriedades de relaes
Exemplo 21
Reflexiva (V): E reflexiva sse
c C, cEc.
UFMG/ICEx/DCC
MD
Conceitos
598
Propriedades de relaes
Exemplo 21
Simtrica (V): E simtrica sse
c1, c2 C, se c1Ec2 ento c2Ec1.
Pela definio de E, isto significa
c1, c2 C,
se
ento
UFMG/ICEx/DCC
MD
Conceitos
599
Propriedades de relaes
Exemplo 21
Transitiva (V): E transitiva sse
c1, c2, c3 C, se c1Ec2 e c2Ec3 ento c1Ec3.
Pela definio de E, isto significa
se
ento
UFMG/ICEx/DCC
MD
Conceitos
600
Relao de equivalncia
Idia central de relao de equivalncia:
Agrupar pares ordenados de uma relao que esto relacionados entre si.
Partio de um conjunto A:
Coleo de subconjuntos no-vazios mutuamente disjuntos cuja unio o
conjunto A.
Exemplo 22 Para i 6= j, Ai Aj = , ou ainda A1 A2 . . . A6 = A
A3
A2
A1
UFMG/ICEx/DCC
A4
MD
A6
A5
Conceitos
601
Relao de equivalncia
Definio: Dada uma partio de um conjunto A, a relao binria R induzida
pela partio definida em A como:
x, y A, xRy Existe um subconjunto A da partio
tal que ambos x e y esto em A.
Exemplo 23 Seja A = {0, 1, 2, 3, 4} e considere a seguinte partio de A:
{0, 3, 4}, {1}, {2}
Determine a relao R induzida por essa partio.
R=
(0, 0), (0, 3), (0, 4), (3, 0), (3, 3), (3, 4), (4, 0), (4, 3), (4, 4),
(1, 1),
(2, 2)
Observao importante:
Uma relao induzida por uma partio de um conjunto satisfaz as propriedades de reflexividade, simetria e transitividade.
UFMG/ICEx/DCC
MD
Conceitos
602
Relao de equivalncia
Definio: Seja A um conjunto no-vazio e R uma relao binria em A. R
uma relao de equivalncia sse R reflexiva, simtrica e transitiva.
Exemplo 24 Seja A = {2, 3, 4, 6, 7, 9} e a relao binria R em A definida
como
(x, y) A A, xRy 3|(x y)
A partio de A correspondente
relao R :
{4, 7}, {2}, {3, 6, 9}
UFMG/ICEx/DCC
MD
Conceitos
603
UFMG/ICEx/DCC
MD
Conceitos
604
1
{0, 4}, {1, 3}, {2}
UFMG/ICEx/DCC
MD
Conceitos
605
[a] = [b]
UFMG/ICEx/DCC
MD
Conceitos
606
UFMG/ICEx/DCC
MD
Conceitos
607
UFMG/ICEx/DCC
MD
Conceitos
608
MD
Conceitos
609
UFMG/ICEx/DCC
MD
Conceitos
610
UFMG/ICEx/DCC
MD
Conceitos
611
UFMG/ICEx/DCC
MD
Conceitos
612
UFMG/ICEx/DCC
MD
Conceitos
613
2
2
2
2
{z
}|
{z
}|
{z
}|
{z
} = 16
1a linha
2a linha
3a linha
4a linha
MD
Conceitos
614
Q
1
0
1
0
UFMG/ICEx/DCC
Sada
0
0
0
1
NOT
NOT
OR
AND
Q
NOT
MD
Conceitos
615
Relao anti-simtrica
J foram vistas trs propriedades de relaes:
1. Reflexividade
2. Simetria
3. Transitividade
Definio: Seja R uma relao num conjunto A. R uma relao antisimtrica sse,
a, b A, se aRb bRa ento a = b.
Informalmente, uma relao anti-simtrica se para cada aresta de ida
no existe uma aresta de volta.
Tomando a negao dessa definio temos que uma relao R no antisimtrica sse,
a, b A|aRb bRa a 6= b.
UFMG/ICEx/DCC
MD
Conceitos
616
Relao anti-simtrica
Exemplo 28 Seja R uma relao no conjunto {0, 1, 2} definida como
R = {(0, 2), (1, 2), (2, 0)}
A propriedade anti-simtrica?
MD
Conceitos
617
Relao anti-simtrica
Exemplo 29 Seja R uma relao no conjunto {0, 1, 2} definida como
R = {(0, 0), (0, 1), (0, 2), (1, 1), (1, 2)}
A propriedade anti-simtrica?
2
Anti-simtrica (V): R uma relao anti-simtrica sse,
a, b A, se aRb bRa ento a = b.
Como no existem arestas de ida e de volta para o mesmo par de ns, a relao
anti-simtrica.
UFMG/ICEx/DCC
MD
Conceitos
618
UFMG/ICEx/DCC
MD
Conceitos
619
MD
Conceitos
620
MD
Conceitos
621
Ordem lexicogrfica
Seja um conjunto com uma relao de ordem parcial.
Pode-se, ento, definir uma ordem lexicogrfica ou ordem de dicionrio no
conjunto ?.
Seja R uma relao em ?. Para quaisquer inteiros positivos m e n, e
a1a2. . .am e b1b2. . .bn em ?, temos:
1. Se m n e ai = bi para todos i = 1, 2, . . . , m, ento
a1a2. . .am b1b2. . .bn.
2. Para algum inteiro k, k m, k n, e k 1, ai = bi para todos i =
1, 2, . . . , k 1, e ak Rbk mas ak 6= bk , ento
a1a2. . .am b1b2. . .bn.
3. Se o string nulo e s um string em ?, ento s.
O smbolo usado para referenciar uma relao de ordem parcial genrica
e lido como menor ou igual a.
UFMG/ICEx/DCC
MD
Conceitos
622
Ordem lexicogrfica
Exemplo 32 Seja = {, >} e R a seguinte relao de ordem parcial em :
R = {(, ), (, >), (>, >)}.
Diga se os seguintes strings definem uma ordem lexicogrfica em ?:
UFMG/ICEx/DCC
MD
Conceitos
623
Diagrama de Hasse
Exemplo 33 Seja A = {1, 2, 3, 9, 18} e considere a relao D divide no
conjunto como:
a, b A, a|b b = a k, para algum inteiro k.
O grafo dirigido da relao D :
18
9
2
UFMG/ICEx/DCC
MD
Conceitos
624
Diagrama de Hasse
18
9
2
Note que:
Existe um lao (loop) em cada vrtice;
Todas as arestas apontam para a mesma direo,
ou seja, para cima;
Toda vez que h uma aresta de um vrtice para
um segundo e de um segundo para um terceiro,
ento h uma aresta do primeiro vrtice para o
terceiro vrtice.
UFMG/ICEx/DCC
MD
Conceitos
625
18
18
9
2
UFMG/ICEx/DCC
MD
Conceitos
626
Diagrama de Hasse
Exemplo 34 Considere a relao subconjunto, , no conjunto potncia
P({a, b, c}). Para todos os conjuntos U e V em P({a, b, c}),
U V x, se x U ento x V.
Construa o Diagrama de Hasse dessa relao.
{a,b,c}
{a,b,c}
{a,b}
{a}
{a,c}
{b}
{b,c}
{a,b}
{a}
{c}
0/
UFMG/ICEx/DCC
{a,c}
{b,c}
{b}
{c}
0/
MD
Conceitos
627
UFMG/ICEx/DCC
MD
Conceitos
628
Grafos
Antonio Alfredo Ferreira Loureiro
loureiro@dcc.ufmg.br
http://www.dcc.ufmg.br/~loureiro
UFMG/ICEx/DCC
MD
Conceitos
629
Motivao
Suponha que existam seis sistemas computacionais (A, B, C, D, E, e F) interconectados entre si da seguinte forma:
B
D
E
UFMG/ICEx/DCC
MD
Conceitos
630
Motivao
Dois objetos especiais:
Vrtices
Arestas
Vrtice
C
Aresta
D
E
UFMG/ICEx/DCC
MD
Conceitos
631
Definio
Um grafo G consiste de dois conjuntos finitos:
1. Vrtices V (G)
2. Arestas E(G)
UFMG/ICEx/DCC
MD
Conceitos
632
Terminologia
Cada aresta est associada a um conjunto de um ou dois vrtices, chamados
ns terminais.
Extremidade de uma aresta: vrtice da aresta.
Funo arestaextremidade: associa aresta a vrtices.
Lao (Loop): aresta somente com n terminal.
Arestas paralelas: arestas associadas ao mesmo conjunto de vrtices.
Uma aresta dita conectar seus ns terminais.
Dois vrtices que so conectados por uma aresta so chamados de adjacentes.
Um vrtice que n terminal de um lao dito ser adjacente a si prprio.
Uma aresta dita ser incidente a cada um de seus ns terminais.
Duas arestas incidentes ao mesmo vrtice so chamadas de adjacentes.
Um vrtice que no possui nenhuma aresta incidente chamado de isolado.
Um grafo com nenhum vrtice chamado de vazio.
UFMG/ICEx/DCC
MD
Conceitos
633
Terminologia
Arestas paralelas
v2
e3
Vrtice isolado
v5
v3
v7
e2
e4
v1
e1
e6
e5
v4
v6
Lao
UFMG/ICEx/DCC
MD
Conceitos
634
Terminologia
Conjunto de vrtices:
{v1, v2, v3, v4, v5, v6}.
Conjunto de arestas:
{e1, e2, e3, e4, e5, e6, e7}.
v1
v3
e3
v4
e7
v6
e2
Funo arestavrtice:
Aresta
e1
e2
e3
e4
e5
e6
e7
e1
Vrtice
{v1, v2}
{v1, v3}
{v1, v3}
{v2, v3}
{v5, v6}
{v5}
{v6}
UFMG/ICEx/DCC
e4
e5
v5
v2
e6
MD
Conceitos
635
Terminologia
e1, e2 e e3 so incidentes a
v1.
v2 e v3 so adjacentes a v1.
v1
v3
e3
v4
e7
v6
e2, e3 e e4 so adjacentes
a e1 .
e2
e1
e6 e e7 so laos.
e4
e5
e2 e e3 so paralelas.
v5
v2
e6
v4 um vrtice isolado.
UFMG/ICEx/DCC
MD
Conceitos
636
Terminologia
Seja um grafo especificado
como:
Conjunto de vrtices:
{v1, v2, v3, v4}.
v3
v4
e3 v 2
e2
e1
Conjunto de arestas:
{e1, e2, e3, e4}.
v1
e4
Funo arestavrtice:
Aresta
e1
e2
e3
e4
v4
v3
Vrtice
{v1, v3}
{v2, v4}
{v2, v4}
{v3}
e2
e3
v2
UFMG/ICEx/DCC
MD
Conceitos
e1
v1
637
Terminologia
Considere os dois diagramas abaixo. Rotule os vrtices e as arestas de tal
forma que os dois diagramas representem o mesmo grafo.
UFMG/ICEx/DCC
MD
Conceitos
638
Terminologia
Uma possvel identificao de vrtices e
rtulos pode ser:
v1
e1
e5
v2
v5
Conjunto de arestas:
{e1, e2, e3, e4, e5}.
e2
e4
Funo arestavrtice:
e3
v4
v3
v1
Aresta
e1
e2
e3
e4
e5
e1
v3
e3
v4
e4
e5
e2
v5
UFMG/ICEx/DCC
Vrtice
{v1, v2}
{v2, v3}
{v3, v4}
{v4, v5}
{v5, v1}
v2
MD
Conceitos
639
Vrtice
Aresta
Comunicao
Pginas Web
Posies no tabuleiro
Pessoas, Atores
Links
Movimentos permitidos
Amizades, Trabalho conjunto
em filmes
Circuitos
Hidrulico
Financeiro
Transporte
Escalonamento
Arquitetura funcional de
um software
Internet
Jogos de tabuleiro
Relaes sociais
UFMG/ICEx/DCC
MD
Conceitos
Tubulaes
Transaes
Rodovias, Vias areas
Restries de precedncia
Interaes entre os mdulos
640
i 1 + i4 = i 2 + i3
UFMG/ICEx/DCC
MD
Conceitos
641
Butano
Isobutano
UFMG/ICEx/DCC
MD
Conceitos
642
Modelos usando
grafos
Conectividade na
Internet
Este grafo mostra a conectividade
entre roteadores na Internet, resultado do trabalho Internet Mapping Project de Hal Burch e Bill
Cheswick.
Atualmente o trabalho est sendo
desenvolvido comercialmente pela
empresa Lumeta (www.lumeta.com).
UFMG/ICEx/DCC
MD
Conceitos
643
UFMG/ICEx/DCC
MD
Conceitos
644
MD
Conceitos
645
Noam Chomsky
John Backus
Peter Naur
MD
Conceitos
da
hsentencei
::= hnoun phraseihverb phrasei
hnoun phrasei ::= harticleihnouni |
harticleihadjectiveihnouni
hverb phrasei ::= hverbihnoun phrasei
harticlei
::= the
hadjectivei
::= young
hnouni
::= man | ball
hverbi
::= caught
646
UFMG/ICEx/DCC
MD
Conceitos
647
UFMG/ICEx/DCC
MD
Conceitos
648
ccB/vv
vvcB/c
/Bvvcc
c/Bvvc
vcB/vc
vv/Bcc
vvccB/
vvc/Bc
cc/Bvv
UFMG/ICEx/DCC
MD
Conceitos
649
MD
Conceitos
650
Grafo simples
Definio: Um grafo simples um grafo que no possui laos nem arestas paralelas. Num grafo simples, uma aresta com vrtices (ns terminais) u e v
representada por uv.
Exemplo: Quais so os grafos com quatro vrtices {u, v, w, x} e duas arestas,
sendo que uma delas a aresta uv?
Dado quatro vrtices, existem C(4, 2) = 6 subconjuntos, que definem
arestas diferentes: {uv, uw, ux, vw, vx, wx}.
Logo, todos os grafos simples de quatro vrtices e duas arestas, sendo uma
delas a uv so:
u
UFMG/ICEx/DCC
MD
Conceitos
651
v2
v5
v3
e3
v7
e2
e7
v1
UFMG/ICEx/DCC
e4
e6
e8
e5
e1
v4
MD
Conceitos
v6
652
Grafo dirigido:
v2
v3
v1
v4
UFMG/ICEx/DCC
v5
v7
v2
v3
v6
v1
v4
MD
Conceitos
v5
v7
v6
653
Grafo no dirigido:
v2
v3
v2
v1
UFMG/ICEx/DCC
v3
v1
MD
Conceitos
654
v4
v3
v4
v3
v5
v1
v2
K2
v1
v2
v2
v1
K3
K4
v3
v1
v2
K5
letra K representa a letra inicial da palavra komplett do alemo, que significa completo.
UFMG/ICEx/DCC
MD
Conceitos
655
atravs de # arestas
v1
v2, v3, . . . , vn
n1
v2
...
v3, v4, . . . , vn
...
n2
...
vn1
vn
vn
(n 1) n
n2 n
(|V |2 |V |)
i=
=
=
2
2
2
i=1
UFMG/ICEx/DCC
MD
Conceitos
656
v4
v3
v4
v3
v5
v1
v2
K2
v1
v2
v2
v1
K3
K4
v3
v1
v2
K5
UFMG/ICEx/DCC
Grafo
# arestas
K2
K3
K4
K5
10
MD
Conceitos
657
n2 n
2
=2
(|V |2 |V |)
2
UFMG/ICEx/DCC
MD
Conceitos
658
P(E) =
,
{v1v2},
{v1v3},
{v2v3},
{v1v2, v2v3},
{v1v3, v2v3},
{v1v2, v1v3},
{v1v2, v1v3, v2v3}
v3
v1
UFMG/ICEx/DCC
MD
Conceitos
v2
659
n2 n
2
=2
32 3
2
= 23 = 8
v1
v2
v1
v1
v2
MD
v2
v1
Conceitos
v1
v2
v1
v2
v1
v2
v3
v3
v3
v3
UFMG/ICEx/DCC
v3
v3
v3
v3
v2
v1
v2
660
Grafo ciclo
Definio: Um grafo ciclo de n vrtices, denominado Cn, n 3, um grafo
simples com n vrtices v1, v2, . . . , vn, e arestas v1v2, v2v3, . . ., vn1vn, vnv1.
Exemplo: Grafos ciclos de 3, 4, e 5 vrtices.
v4
v3
v4
v3
v5
v1
v2
v2
v1
C3
UFMG/ICEx/DCC
C4
MD
Conceitos
v3
v1
v2
C5
661
Grafo roda
Definio: Um grafo roda, denominado Wn, um grafo simples com n + 1
vrtices que obtido acrescentado um vrtice ao grafo ciclo Cn, n 3, e
conectando este novo vrtice a cada um dos n vrtices de Cn.
Exemplo: Grafos rodas de 3, 4, e 5 vrtices.
v4
v3
v4
v3
v5
v5
v4
v1
v2
v6
v2
v1
W3
UFMG/ICEx/DCC
v3
W4
MD
Conceitos
v1
v2
W5
662
UFMG/ICEx/DCC
MD
Conceitos
663
11
111
100
101
010
0
Q1
UFMG/ICEx/DCC
00
01
Q2
MD
Conceitos
000
011
Q3
001
664
UFMG/ICEx/DCC
MD
Conceitos
665
UFMG/ICEx/DCC
MD
Conceitos
666
w1
v2
w2
w1
v1
w3
w4
w2
v3
v4
w4
v2
v6
w2
v1
w3
w4
v2
v5
w1
v7
v3
w3
v4
UFMG/ICEx/DCC
MD
Conceitos
w5
v8
667
UFMG/ICEx/DCC
MD
Conceitos
668
v1
v1
w1
v2
w2
v3
w3
w1
v2
w2
v3
K 3,2
UFMG/ICEx/DCC
K 3,3
MD
Conceitos
669
Grafo de Petersen
Definio: grafo no dirigido cbico com 10 vrtices e 15 arestas, como ilustrado
abaixo. um grafo largamente utilizado como exemplo e contra-exemplo para
muitos problemas em teoria dos grafos.
[Recebe esse nome em homenagem ao matemtico dinamarqus Julius Petersen, que o utilizou
em um trabalho publicado em 1898. No entanto, o primeiro registro do uso desse grafo se deve
a um trabalho de Alfred Kempe, matemtico ingls, 12 anos antes, em 1886.]
Em teoria dos grafos, existem vrios outros grafos que recebem nomes especiais sejam eles baseados em nomes de pessoas (e.g, Folkman, Gabriel,
Heawood, Turn, Yao) ou em propriedades (e.g., autocomplementar, complementar, disco unitrio, intervalar, orientado balanceado, poliedro).
UFMG/ICEx/DCC
MD
Conceitos
670
Multigrafo
Definio: Um multigrafo um grafo que no possui laos mas pode ter arestas
paralelas. Formalmente, um multigrafo G = (V, E) consiste de um conjunto V
de vrtices, um conjunto E de arestas, e uma funo f de E para {{u, v}|u, v
V, u 6= v}. As arestas e1 e e2 so chamadas mltiplas ou paralelas se f (e1) =
f (e2).
v1
v3
e3
v4
v6
e2
e1
e4
e5
v5
v2
Vrias aplicaes precisam ser modeladas como um multigrafo.
UFMG/ICEx/DCC
MD
Conceitos
671
Pseudografo
Definio: Um pseudografo um grafo que pode ter laos e arestas paralelas.
Formalmente, um pseudografo G = (V, E) consiste de um conjunto V de vrtices, um conjunto E de arestas, e uma funo f de E para {{u, v}|u, v V }.
Pseudografo mais geral que um multigrafo.
UFMG/ICEx/DCC
MD
Conceitos
672
Multigrafo dirigido
Definio: Um multigrafo dirigido um grafo que pode ter laos e arestas paralelas. Formalmente, um multigrafo dirigido G = (V, E) consiste de um conjunto V de vrtices, um conjunto E de arestas, e uma funo f de E para
{{u, v}|u, v V }. As arestas e1 e e2 so arestas mltiplas se f (e1) = f (e2).
UFMG/ICEx/DCC
MD
Conceitos
673
Hipergrafo
Definio: Um hipergrafo H(V, F ) definido pelo par de conjuntos V e F , onde:
V um conjunto no vazio de vrtices;
F um conjunto que representa uma famlia e partes no vazias de V .
Um hipergrafo um grafo no dirigido em que cada aresta conecta um nmero
arbitrrio de vrtices.
Seja, por exemplo, o grafo H(V, F )
dado por:
V
v1
v2
v4
v3
UFMG/ICEx/DCC
MD
Conceitos
674
Terminologia de grafos
Tipo
Aresta
Arestas mltiplas?
Laos permitidos?
Grafo simples
No dirigida
No
No
Multigrafo
No dirigida
Sim
No
Pseudografo
No dirigida
Sim
Sim
Grafo dirigido
Dirigida
No
Sim
Multigrafo dirigido
Dirigida
Sim
Sim
UFMG/ICEx/DCC
MD
Conceitos
675
Grafo valorado
Definio: Um grafo valorado um grafo em que cada aresta tem um valor associado. Formalmente, um grafo valorado G = (V, E) consiste de um conjunto
V de vrtices, um conjunto E de arestas, e uma funo f de E para P , onde P
representa o conjunto de valores (pesos) associados s arestas.
Grafo valorado usado para modelar vrios problemas importantes em Cincia da Computao.
UFMG/ICEx/DCC
MD
Conceitos
676
Grafo imersvel
Definio: Um grafo imersvel em uma superfcie S se puder ser representado
geograficamente em S de tal forma que arestas se cruzem nas extremidades
(vrtices).
Um grafo planar um grafo que imersvel no plano.
As conexes de uma placa de circuito impresso devem ser representadas
por um grafo planar.
UFMG/ICEx/DCC
MD
Conceitos
677
Subgrafo
Definio: Um grafo H = (V 0, E 0) dito ser um subgrafo de um grafo G =
(V, E) sse:
cada vrtice de H tambm um vrtice de G, ou seja, V 0 V ;
cada aresta de H tambm uma aresta de G, ou seja, E 0 E; e
cada aresta de H tem os mesmos ns terminais em G, ou seja, se (u, v) E 0
ento (u, v) E.
Exemplo: Todos os subgrafos do grafo G:
v2
e1
v1
v2
v1
2
v2
v1
5
v2
e2
e1
v1
8
v2
e2
e1
v1
e3
G
e2
v2
v1
v1
1
v2
v1
4
v2
e1
e3
e3
6
v2
9
UFMG/ICEx/DCC
e1
7
v2
v1
v1
e3
e3
e2
10
MD
Conceitos
11
v1
e3
e2
678
v1
v2
UFMG/ICEx/DCC
grau(v 1) = 5
v3
v4
MD
Conceitos
679
v2
v5
v3
e3
v7
e2
e7
v1
UFMG/ICEx/DCC
e4
e6
e8
e5
e1
v4
MD
Conceitos
v6
680
v1
v2
e1
v3
e3
e2
grau(v1) = 0, j que no existe aresta incidente a v1, que um vrtice
isolado.
grau(v2) = 2, j que e1 e e2 so incidentes a v2.
grau(v3) = 4, j que e1, e2 e e3 so incidentes a v3, sendo que e3 contribui
com dois para o grau de v3.
Grau de G = grau(v1) + grau(v2) + grau(v3) = 0 + 2 + 4 = 6
Grau de G = 2 nmero de arestas de G, que 3, ou seja, cada aresta
contribui com dois para o grau total do grafo.
UFMG/ICEx/DCC
MD
Conceitos
681
UFMG/ICEx/DCC
2 nmero de arestas de G.
MD
Conceitos
682
UFMG/ICEx/DCC
MD
Conceitos
683
vj
i 6= j
vi
vj
i=j
Assim, a aresta e contribui com 2 para o grau total de G. Como e foi escolhido
arbitrariamente, isto mostra que cada aresta de G contribui com 2 para o grau
total de G.
.
. . O grau total de G = 2 nmero de arestas de G.
Corolrio: O grau total de um grafo par.
UFMG/ICEx/DCC
MD
Conceitos
684
Grafo regular
Definio: Um grafo dito ser regular quando todos os seus vrtices tm o
mesmo grau.
Exemplo: Os grafos completos com 2, 3, 4, e 5 vrtices so grafos regulares.
v4
v3
v4
v3
v5
v1
v2
K2
UFMG/ICEx/DCC
v1
v2
v2
v1
K3
K4
MD
Conceitos
v3
v1
v2
K5
685
UFMG/ICEx/DCC
MD
Conceitos
686
d
c
Pelo mesmo raciocnio devem existir arestas que conectam d aos vrtices a, b e c.
a
b
d
c
Mas o grau(a) 2 e grau(b) 2, o que contradiz a suposio que estes vrtices tm
grau 1.
.
. . A suposio inicial falsa e, conseqentemente, no existe um grafo simples com quatro
vrtices com graus 1, 1, 3, e 3.
UFMG/ICEx/DCC
MD
Conceitos
687
UFMG/ICEx/DCC
MD
Conceitos
688
Caracterstica de um grafo
Teorema: Em qualquer grafo G, existe um nmero par de vrtices de grau mpar.
Prova:
Suponha que G tenha n vrtices de grau mpar e m vrtices de grau par, onde n e m so
inteiros no negativos. [Deve-se mostrar que n par.]
Se n = 0, ento G tem um nmero par de vrtices de grau mpar.
Suponha que n 1. Seja P a soma dos graus de todos os vrtices de grau par, I a soma
dos graus de todos os vrtices de grau mpar, e T o grau total de G.
Se p1 , p2 , . . . , pm so os vrtices de grau par e i1 , i2 , . . . , in so os vrtices de grau mpar,
P = grau(p1 ) + grau(p2 ) + . . . + grau(pm ),
I = grau(i1 ) + grau(i2 ) + . . . + grau(in ),
T = grau(p1 ) + grau(p2 ) + . . . + grau(pm ) +
grau(i1 ) + grau(i2 ) + . . . + grau(in )
= P + I [que deve ser um nmero par]
P par, j que P = 0 ou P a soma de grau(pr ), 0 r m, que par.
Mas T = P + I e I = T P . Assim, I a diferena de dois inteiros pares, que par.
Pela suposio, grau(is ), 0 s n, mpar. Assim, I, um inteiro par, a soma de n inteiros
mpares grau(i1 ) + grau(i2 ) + . . . + grau(in ). Mas a soma de n inteiros mpares par, ento
n par [o que devia ser mostrado].
UFMG/ICEx/DCC
MD
Conceitos
689
UFMG/ICEx/DCC
MD
Conceitos
690
UFMG/ICEx/DCC
MD
Conceitos
691
Problema: possvel que uma pessoa faa um percurso na cidade de tal forma que inicie e
volte a mesma posio passando por todas as pontes somente uma nica vez?
UFMG/ICEx/DCC
MD
Conceitos
692
UFMG/ICEx/DCC
MD
Conceitos
693
B
C
UFMG/ICEx/DCC
MD
Conceitos
694
B
C
UFMG/ICEx/DCC
MD
Conceitos
695
Partindo do vrtice A, toda vez que se passa por qualquer outro vrtice, duas arestas so usadas: a de
chegada e a de sada.
B
No entanto, temos:
grau(A) = grau(C) = grau(D) = 3; e
grau(B) = 5.
Assim, por este raciocnio informal no possvel ter
uma soluo para este problema.
UFMG/ICEx/DCC
MD
Conceitos
696
Caminhamentos em grafos
Caminho (1)
Seja G um grafo no dirigido, n 1, e v e w vrtices de G.
Caminho (walk ): Um caminho de v para w uma sequncia alternada de
vrtices e arestas adjacentes de G. Um caminho tem a forma:
(v =)v0e1v1e2v2 . . . vn1envn(= w)
ou ainda
v0[v0, v1]v1[v1, v2]v2 . . . vn1[vn1, vn]vn
onde v0 = v e vn = w.
v2
e1
e4 e
6
e5
e7
v1
UFMG/ICEx/DCC
e3
v3
e2
v4
MD
Conceitos
697
Caminhamentos em grafos
Caminho (2)
No caso de arestas mltiplas, deve-se indicar qual delas est sendo usada.
Vrtices v0 e vn so extremidades do caminho.
Tamanho (comprimento) do caminho: nmero de arestas do mesmo, ou seja,
nmero de vrtices menos um.
O caminho trivial de v para v consiste apenas do vrtice v.
Se existir um caminho c de v para w ento w alcanvel a partir de v via c.
UFMG/ICEx/DCC
MD
Conceitos
698
Caminhamentos em grafos
Caminho fechado (1)
Caminho fechado (Closed walk ): Caminho que comea e termina no mesmo
vrtice:
(v =)v0e1v1e2v3 . . . vn1envn(= w)
onde v = w.
v2
e1
e4 e
6
e5
e7
v1
e3
v3
e2
v4
UFMG/ICEx/DCC
MD
Conceitos
699
Caminhamentos em grafos
Caminho fechado (2)
Dois caminhos fechados
e
v0v1 . . . vn
0
v00 v10 . . . vn
v2
e1
e4 e
6
e5
e7
v1
UFMG/ICEx/DCC
e3
v3
e2
v4
MD
Conceitos
700
Caminhamentos em grafos
Trajeto
Trajeto (Path): Caminho de v para w sem arestas repetidas:
(v =)v0e1v1e2v3 . . . vn1envn(= w)
onde todas as arestas ei so distintas, ou seja, ei 6= ek , para qualquer i 6= k.
v2
e1
e4 e
6
e5
e7
v1
UFMG/ICEx/DCC
e3
v3
Um possvel trajeto :
v1e6v3e2v4e7v2e1v3
e2
v4
MD
Conceitos
701
Caminhamentos em grafos
Trajeto simples
Trajeto simples (Simple path): Caminho de v para w sem arestas e vrtices
repetidos.
v2
e1
e4 e
6
e5
e7
v1
UFMG/ICEx/DCC
e3
v3
e2
v4
MD
Conceitos
702
Caminhamentos em grafos
Circuito
Circuito (Circuit): Trajeto fechado, ou seja, um caminho onde no h aresta
repetida e os vrtices inicial e final so idnticos:
(v =)v0e1v1e2v3 . . . vn1envn(= w)
onde toda aresta ei, 1 i n, distinta e v0 = vn.
v2
e1
e4 e
6
e5
e7
v1
UFMG/ICEx/DCC
e3
v3
Um possvel circuito :
v1e6v3e2v4e7v2e1v3
e2
v4
MD
Conceitos
703
Caminhamentos em grafos
Circuito simples
Circuito simples (Simple circuit): Trajeto fechado, ou seja, um caminho onde
no h arestas e vrtices repetidos, exceto os vrtices inicial e final que so
idnticos.
v2
e1
e4 e
6
e5
e7
v1
e3
v3
e2
v4
UFMG/ICEx/DCC
MD
Conceitos
704
Terminologia de caminhamentos
Aresta
repetida?
Vrtice
repetido?
Comea e termina
no mesmo vrtice?
Caminho (walk )
Pode
Pode
Pode
Pode
Pode
Sim
Trajeto (path)
No
Pode
Pode
No
No
No
Circuito (circuit)
No
Pode
Sim
No
v0 = vn
Sim
Tipo
UFMG/ICEx/DCC
MD
Conceitos
705
Caminhamentos em grafos
Notao simplificada (1)
Em geral um caminho pode ser identificado de forma no ambgua atravs de
uma sequncia de arestas ou vrtices.
e2
e1
v1
e4
v2
e3
v3
MD
Conceitos
706
Caminhamentos em grafos
Notao simplificada (2)
e2
e1
e3
v1
v2
v3
UFMG/ICEx/DCC
MD
Conceitos
707
e2
e3
v2
e1
e5
v3
e7
e6
v4
e 10
e8
v6
e9
v5
UFMG/ICEx/DCC
MD
e1e3e5e5e6
Aresta repetida? Sim e5.
Vrtice repetido? Sim v3.
Comea e termina no mesmo
vrtice? No.
Caminho.
Conceitos
708
e2
e3
v2
e1
e5
v3
e7
e6
v4
e 10
e8
v6
e9
v5
UFMG/ICEx/DCC
MD
v2v3v4v5v6v2
Aresta repetida? No.
Vrtice repetido? Sim v2.
Comea e termina no mesmo
vrtice? Sim v2.
Circuito simples.
Conceitos
709
e2
e3
v2
e1
e5
v3
e7
e6
v4
e 10
e8
v6
e9
v5
UFMG/ICEx/DCC
MD
v1
Aresta repetida? No.
Vrtice repetido? No.
Comea e termina no mesmo
vrtice? Sim v1.
Caminho (circuito) trivial.
Conceitos
710
v2
v1
v4
v3
v6
v5
v7
UFMG/ICEx/DCC
MD
Conceitos
711
v2
v1
v4
v3
v6
v5
v7
UFMG/ICEx/DCC
MD
Conceitos
712
Conectividade (1)
Informalmente um grafo conexo (conectado) se for possvel caminhar de qualquer vrtice para qualquer outro vrtice atravs de uma sequncia de arestas
adjacentes.
Definio: Seja G um grafo. Dois vrtices v e w de G esto conectados sse
existe um caminho de v para w. Um grafo G conexo sse dado um par qualquer
de vrtice v e w em G, existe um caminho de v para w. Simbolicamente,
G conexo vrtices v, w V (G), um caminho de v para w.
Se a negao desta afirmao for tomada, possvel ver que um grafo no
conexo sse existem dois vrtices em G que no esto conectados por qualquer
caminho.
UFMG/ICEx/DCC
MD
Conceitos
713
Conectividade (2)
v2
v3
v4
v1
v5
v6
G1
Grafo conexo.
v2
v4
v5
v3
v6
v4
v2
v5
v1
v3
v8
v1
v7
v6
G3
G2
Grafos no conexos.
UFMG/ICEx/DCC
MD
Conceitos
714
Conectividade (3)
Lemas
Seja G um grafo.
(a) Se G conexo, ento quaisquer dois vrtices distintos de G podem ser
conectados por um trajeto simples (simple path).
(c) Se G conexo e contm um circuito, ento uma aresta do circuito pode ser
removida sem desconectar G.
UFMG/ICEx/DCC
MD
Conceitos
715
Conectividade (4)
Os grafos
v2
v4
v5
v3
v6
v4
v2
v5
v1
v3
v8
v1
v7
v6
G3
G2
possuem trs partes cada um, sendo cada parte um grafo conexo.
Um componente conexo de um grafo um subgrafo conexo de maior tamanho
possvel.
UFMG/ICEx/DCC
MD
Conceitos
716
UFMG/ICEx/DCC
MD
Conceitos
717
v3
e1
v1
v4
v5
v8
e5
e3
e2
v 6 e4 v 7
v2
UFMG/ICEx/DCC
MD
Conceitos
718
v3
v0
v4
Os componentes fortemente conexos do grafo ao lado so:
H1 : V1 = {v0 , v1 , v2 , v3 }
H2 : V2 = {v4 }
H3 : V3 = {v5 }
Observe que {v4 , v5 } no um componente fortemente conexo j que o vrtice v5 no alcanvel a partir do vrtice
v2
UFMG/ICEx/DCC
v1
v 5 v4.
MD
Conceitos
719
UFMG/ICEx/DCC
MD
Conceitos
720
UFMG/ICEx/DCC
MD
Conceitos
721
v3
v1
v2
v0
v5
v4
Par de arestas entrada/sada
Prova (continuao):
Cada vez que o vrtice v visitado atravs de uma aresta de entrada, este
vrtice deixado j que o caminho termina no meio de uma aresta.
J que cada circuito Euleriano passa em cada aresta de G exatamente uma
nica vez, cada aresta incidente a v visitada uma nica vez neste processo.
Como o caminho que passa por v feito atravs de arestas incidentes a v na
forma de pares entrada/sada, o grau de v deve ser mltiplo de 2.
Isto significa que o grau de v par. [O que devia ser mostrado.]
UFMG/ICEx/DCC
MD
Conceitos
722
e1
e4 e
6
e5
e7
v1
e3
v3
e2
v4
MD
Conceitos
723
B
C
Problema: possvel que uma pessoa faa um percurso na cidade de tal forma
que inicie e volte a mesma posio passando por todas as pontes somente uma
nica vez?
No. Todos os vrtices tm grau mpar.
UFMG/ICEx/DCC
MD
Conceitos
724
v2
v3
e1
e3
e2
e4
v1
UFMG/ICEx/DCC
v4
MD
Conceitos
725
Escolha qualquer vrtice v de G. [Este passo pode ser executado j que pela suposio o conjunto de vrtices de G no vazio.]
UFMG/ICEx/DCC
MD
Conceitos
726
UFMG/ICEx/DCC
MD
Conceitos
727
UFMG/ICEx/DCC
MD
Conceitos
728
C
v
u
G:
G
UFMG/ICEx/DCC
MD
Conceitos
729
C
v
u
G:
UFMG/ICEx/DCC
MD
Conceitos
730
UFMG/ICEx/DCC
MD
Conceitos
731
v
u
G:
C
UFMG/ICEx/DCC
MD
Conceitos
732
UFMG/ICEx/DCC
MD
Conceitos
733
i
a
d
e
j
h
Os vrtices a, b, c, f, g, i, j tm grau 2.
Os vrtices d, e, h tm grau 4.
Pelo teorema anterior, este grafo possui um circuito Euleriano.
UFMG/ICEx/DCC
MD
Conceitos
734
i
a
1
3
h
g
UFMG/ICEx/DCC
MD
Conceitos
735
i
9
8
10
h
5
MD
Conceitos
736
i
12
11
13
5
6
1
4
3
10
h
8
MD
Conceitos
737
UFMG/ICEx/DCC
MD
Conceitos
738
G
H
F
E
J
C
D
K
UFMG/ICEx/DCC
MD
Conceitos
739
G
H
J
C
D
K
Cada vrtice deste grafo tem um grau par, exceto os vrtices A e B que tm
grau 1. Assim, pelo corolrio anterior, existe um trajeto Euleriano de A para B.
AGHFEIHEKJDCB
UFMG/ICEx/DCC
MD
Conceitos
740
Con-
tribuiu para o desenvolvimento da ptica, dinmica e lgebra. Em particular, descobriu a lgebra dos quaternions. Seu trabalho provou ser significante para o desenvolvimento da
mecnica quntica.
UFMG/ICEx/DCC
MD
Conceitos
741
UFMG/ICEx/DCC
MD
Conceitos
742
MD
Conceitos
743
UFMG/ICEx/DCC
MD
Conceitos
744
UFMG/ICEx/DCC
MD
Conceitos
745
UFMG/ICEx/DCC
MD
Conceitos
746
UFMG/ICEx/DCC
MD
Conceitos
747
c
b
UFMG/ICEx/DCC
MD
Conceitos
748
c
b
UFMG/ICEx/DCC
MD
Conceitos
749
25
50
35
D
40
UFMG/ICEx/DCC
MD
Conceitos
750
B
Rota
Distncia (km)
ABCDA
ABDCA
ACBDA
ACDBA
ADBCA
ADCBA
30 + 30 + 25 + 40 = 125
30 + 35 + 25 + 50 = 140
50 + 30 + 35 + 40 = 155
50 + 25 + 35 + 30 = 140
40 + 35 + 30 + 50 = 155
40 + 25 + 30 + 30 = 125
30
30
C
25
50
35
D
40
Assim, tanto a rota ABCDA ou ADCBA tem uma distncia total de 125
km.
UFMG/ICEx/DCC
MD
Conceitos
751
MD
Conceitos
752
Representao de um grafo
Dado um grafo G = (V, E):
V = conjunto de vrtices.
E = conjunto de arestas, que pode ser representado pelo subconjunto de
V V.
O tamanho da entrada de dados medido em termos do:
Nmero de vrtices |V |.
Nmero de arestas |E|.
Se G conexo ento |E| |V | 1.
UFMG/ICEx/DCC
MD
Conceitos
753
Representao de um grafo
Convenes
Conveno I (Notao):
Dentro e somente dentro da notao assinttica os smbolos V e E significam respectivamente |V | e |E|.
Se um algoritmo executa em tempo O(V + E) equivalente a dizer que
executa em tempo O(|V | + |E|).
Conveno II (Em pseudo-cdigo):
O conjunto V de vrtices de G representado por V [G].
O conjunto E de arestas de G representado por E[G].
Os conjuntos V e E so vistos como atributos de G.
UFMG/ICEx/DCC
MD
Conceitos
754
Representao de um grafo
Estruturas de dados
Matriz de adjacncia:
Forma preferida de representar grafos densos (|E| |V |2).
Indica rapidamente (O(1)) se existe uma aresta conectando dois vrtices.
Lista de adjacncia:
Representao normalmente preferida.
Prov uma forma compacta de representar grafos esparsos (|E| |V |2).
Matriz de incidncia:
Representao que inclui vrtice e aresta.
UFMG/ICEx/DCC
MD
Conceitos
755
Representao de um grafo
Matriz de adjacncia e grafo dirigido (1)
Seja o grafo dirigido abaixo:
e3
v2
e2
Este grafo pode ser representado por uma matriz A = (aij ), onde (aij ) representa o nmero
de arestas de vi para vj .
Matriz de Adjacncia
e1
e4
v
1
e5
v1
e6
A=
v3
UFMG/ICEx/DCC
v2 v3
v1 1 0 0
v2 1 1 2
v3
MD
Conceitos
756
Representao de um grafo
Matriz de adjacncia e grafo dirigido (2)
Definio: Seja G um grafo dirigido com vrtices v1, v2, . . . , vn. A matriz de
adjacncia de G a matriz A = (aij ) (A[1 . . . n, 1 . . . n]) definida como:
UFMG/ICEx/DCC
MD
Conceitos
757
Representao de um grafo
Matriz de adjacncia e grafo dirigido (3)
e5
e5
v1
v3
v2
e2
e2
e3
e1
A=
e4
v3
v2
v
1
v
1
v2 v3
v1 0 0 0
v2 0 1 1
UFMG/ICEx/DCC
e3
e1
e4
v3
v1
A=
v2 v3
v1 1 1 0
v2 1 0 2
v3
MD
Conceitos
758
Representao de um grafo
Matriz de adjacncia e grafo dirigido (4)
Um possvel desenho deste grafo :
v1
v2
v
1
A=
v2 v3 v4
v1 0 1 1 0
2
0
1
v2
1
v3 0
v4
v3
UFMG/ICEx/DCC
MD
Conceitos
v4
759
Representao de um grafo
Matriz de adjacncia e grafo no dirigido
Definio: Seja G um grafo no dirigido com vrtices v1, v2, . . . , vn. A matriz
de adjacncia de G a matriz A = (aij ) sobre o conjunto dos inteiros no
negativos tal que
aij = # de arestas conectando vi a vj , i, j = 1, 2, . . . , n.
Dado o grafo:
e3
e2
v1
e1
v4
e7
e6
UFMG/ICEx/DCC
v
1
v2
e5
A=
e4
v2 v3 v4
v1 0 1 0 1
v2
1
1
2
1
v3 0
v4
v3
MD
Conceitos
760
Representao de um grafo
Matriz de adjacncia e componentes conexos
Dado o grafo:
v2
e4
e3
e1
e2
v1
v3
e6
0 2 0 0 0
2 0 0 0 0
0 0 0 1 0
0 0 1 1 0
0 0 0 0 0
0 0 0 0 0 2 0
e5
v5
v4
v6
e7
1 0 1 0 0 0 0
A=
0
e8
v7
UFMG/ICEx/DCC
MD
Conceitos
761
Representao de um grafo
Matriz de adjacncia: Anlise
Deve ser utilizada para grafos densos, onde |E| prximo de |V |2 (|E|
|V |2).
O tempo necessrio para acessar um elemento independente de |V | ou |E|.
muito til para algoritmos em que necessitamos saber com rapidez se existe
uma aresta ligando dois vrtices.
A maior desvantagem que a matriz necessita O(V 2) de espao.
Ler ou examinar a matriz tem complexidade de tempo O(V 2).
UFMG/ICEx/DCC
MD
Conceitos
762
Representao de um grafo
Uso de matriz de adjacncia
Quando usada, a maior parte dos algoritmos requer tempo O(V 2), mas existem excees.
Seja um grafo dirigido que contm um vrtice sink, ou seja, um vrtice com:
Grau de entrada (in-degree) = |V | 1
Grau de sada (out-degree) = 0
No existe uma aresta loop
Apresente um algoritmo para determinar se um grafo dirigido possui um vrtice sink em tempo O(V ) usando uma matriz de adjacncia.
UFMG/ICEx/DCC
MD
Conceitos
763
Representao de um grafo
Nmero de vrtices sink num grafo dirigido
Quantos vrtices sink um grafo dirigido G = (V, E) possui no mximo?
No mximo 1.
Prova por contradio:
Suponha que si e sj sejam vrtices sink.
Deve existir uma aresta de todos os ns do grafo G para si e sj , exceto loops.
Em particular deve existir uma aresta (si, sj ) e uma aresta (sj , si) j que si
e sj so vrtices sink.
Isto no pode ocorrer j que o grau de sada de um vrtice sink 0.
Logo, se existir um vrtice sink no grafo G no mximo 1.
UFMG/ICEx/DCC
MD
Conceitos
764
Representao de um grafo
Matriz de incidncia
Definio: Seja G um grafo no dirigido com vrtices v1 , v2 , . . . , vn e arestas e1 , e2 , . . . , em . A
matriz de incidncia de G a matriz M = (mij ) de tamanho n m sobre o conjunto dos
inteiros no negativos tal que
1 quando a aresta ej incidente a vi .
mij =
0 caso contrrio.
Dado o grafo:
e3
e2
v1
v2
M =
e1
v4
e7
e6
UFMG/ICEx/DCC
e5
e4
v1
v2
v3
v4
e
1
1
0
0
1
e2 e3 e4 e5 e6
1 0 0 0 0
1 1 1 1 0
0 0 1 1 0
0 0 0 0 1
e7
0
1
v3
MD
Conceitos
765
Representao de um grafo
Lista de adjacncia
Vetor Adj de |V | listas, uma para cada vrtice de V .
Para cada vrtice u V , a lista Adj[u] contm apontadores para todos os
vrtices v tal que a aresta (u, v) E (todos os vrtices adjacentes a u em
G).
Definio vale para grafos no dirigidos e dirigidos.
P|V |
i=1 comprimento da lista de adjacncia, vale:
Grafo dirigido = |E|, cada aresta aparece uma nica vez na lista.
Grafo no dirigido = 2|E|, cada aresta aparece duas vezes na lista (entrada
de u e entrada de v).
Espao: O(V + E).
UFMG/ICEx/DCC
MD
Conceitos
766
Representao de um grafo
Lista de adjacncia e grafo dirigido (1)
Seja o grafo dirigido abaixo:
e3
v2
e2
Adj[v1] = [v1]
e1
e4
e5
v1
Adj[v3] = [v1]
e6
v3
UFMG/ICEx/DCC
Adj
v1
v1
v2
v1
v3
v1
MD
Conceitos
v2
v3
v3
767
Representao de um grafo
Lista de adjacncia e grafo dirigido (2)
e5
e5
v1
v3
v2
e2
v1
e2
e3
e1
e3
e1
e4
e4
v2
v3
Este grafo pode ser representado
pela lista de adjacncia:
Adj[v1] = []
Adj[v3] = []
UFMG/ICEx/DCC
MD
Conceitos
768
Representao de um grafo
Lista de adjacncia e grafo no dirigido
Dado o grafo:
e3
e2
v1
v2
e1
e7
e5
e4
e6
UFMG/ICEx/DCC
v3
MD
Conceitos
769
O caminho
e2
e1
v2e3v3e4v2e2v2e3v3
v2
v1
e3
tem tamanho 4.
e4
v3
v2e1v1e1v2
v2e2v2e2v2
v2e3v3e4v2
v2e4v3e3v2
v2e3v3e3v2
v2e4v3e4v2
UFMG/ICEx/DCC
MD
Conceitos
770
e2
e1
v
1
v2
v1
e3
e4
A=
v3
UFMG/ICEx/DCC
v2 v3
v1 0 1 0
v2 1 1 2
v3
MD
Conceitos
771
0 1 0
0 1 0
1 1 2
1 1 2 1 1 2 = 1 6 2
0 2 0
0 2 0
2 2 4
e2
e1
v2
v1
e3
e4
v3
MD
Conceitos
772
e1
e1
v5
v2
v3
e3
v4
e4
e4
e2
e5
v4
v3
v5
e3
e2
v2
MD
Conceitos
773
G0
v1
v1
e5
e1
e4
v5
v2
e4
e2
v4
v3
e1
v2
v3
e2
e3
v4
e5
Vrtices de G
Arestas de G
Arestas de G
v1
v1
e1
e1
v2
v2
e2
e2
v3
v3
e3
e3
v4
v4
e4
e4
v5
v5
e5
e5
UFMG/ICEx/DCC
As funes arestavrtice
no so as mesmas.
v5
e3
Vrtices de G
MD
Conceitos
774
UFMG/ICEx/DCC
MD
Conceitos
775
G
e1
e7
v2
e5
e6
v5
v1
v3
w1
w3
e2
e3
f4
f5
w4
e4
v4
f3
f6
f2
w2
f1
f7
w5
so isomorfos?
UFMG/ICEx/DCC
MD
Conceitos
776
G0
G
e1
g : V (G) V (G0 )
e
e7
h : E(G) E(G0 )
e5
e2
e3
w4
f3
f4
f5
v5
f6
e4
f2
w2
f1
f7
v4
w5
E(G)
E(G)
Grafos G e G0 so isomorfos.
V(G)
UFMG/ICEx/DCC
w1
w3
v2
e6
v1
v3
V(G)
e1
f1
e2
f2
v1
w1
e3
f3
v2
w2
e4
f4
v3
w3
e5
f5
v4
w4
e6
f6
v5
w5
e7
f7
MD
Conceitos
777
G
v0
v1
e0
e8 v 4
e4
e7
e3
f3
v 5 e9
e5
e1
f8
w4
e11 v 7 e6 v 6 e10
v3
e2
f0
w0
w1
f1
f9
f4
w2
f2
f10
f5
w5
f11
f6
w6
w3
w7
e7
v2
so isomorfos?
UFMG/ICEx/DCC
MD
Conceitos
778
g : V (G) V (G )
e8 v 4
e4
e7
e3
V(G)
f0
w0
e5
e2
v3
f3
v 5 e9
e1
f8
w4
e11 v 7 e6 v 6 e10
v1
e0
h : E(G) E(G0 )
G0
G
w1
f1
f9
f4
w2
f2
w3
f10
f5
w5
f11
f6
w7
w6
e7
v2
V(G)
v0
E(G)
w0
E(G)
e0
w1
v1
f0
f6
e6
e1
v2
w2
e7
v3
w3
e8
v4
w4
e9
v5
w5
e10
v6
w6
e11
f1
f7
e2
f2
f8
e3
f3
f9
e4
f4
f10
e5
UFMG/ICEx/DCC
MD
Conceitos
f5
f11
779
UFMG/ICEx/DCC
MD
Conceitos
780
(a)
(b)
(c)
(d)
UFMG/ICEx/DCC
MD
Conceitos
781
UFMG/ICEx/DCC
MD
Conceitos
782
Tem n vrtices;
Tem m arestas;
Tem um vrtice de grau k;
Tem m vrtices de grau k;
Tem um circuito de tamanho k;
Tem um circuito simples de tamanho k;
Tem m circuitos simples de tamanho k;
conexo;
Tem um circuito Euleriano;
Tem um circuito Hamiltoniano.
MD
Conceitos
783
so isomorfos?
No. G tem nove arestas e G0 tem oito arestas.
UFMG/ICEx/DCC
MD
Conceitos
784
so isomorfos?
No. H tem um vrtice de grau 4 e H 0 no tem.
UFMG/ICEx/DCC
MD
Conceitos
785
UFMG/ICEx/DCC
MD
Conceitos
786
y
z
so isomorfos?
UFMG/ICEx/DCC
MD
Conceitos
787
b
a
Sim, so isomorfos.
V(G)
Arestas de G
Arestas de G0
ab
yw = {g(a), g(b)}
ac
yx = {g(a), g(c)}
ad
yz = {g(a), g(d)}
cd
xz = {g(c), g(d)}
UFMG/ICEx/DCC
MD
Conceitos
788
rvore
Definio: Uma rvore (tambm chamada de rvore livre) um grafo no dirigido acclico e conexo.
UFMG/ICEx/DCC
MD
Conceitos
789
Floresta
Definio: Uma floresta um grafo no dirigido acclico podendo ou no ser
conexo.
UFMG/ICEx/DCC
MD
Conceitos
790
A
M
I
S
MD
Conceitos
791
UFMG/ICEx/DCC
MD
Conceitos
792
v5
v4
v3
v0
v1
v2
v5
v4
v3
v5
v4
v3
v5
v4
v3
v0
v1
v2
v0
v1
v2
v0
v1
v2
UFMG/ICEx/DCC
MD
Conceitos
793
74
695
355
348
74
230
306
262
269
I
S
242
230
262
83
151
242
83
151
N
N
MD
Conceitos
794
UFMG/ICEx/DCC
MD
Conceitos
795
Grafo inicial:
A
A
355
355
74
695
74
348
C
230
306
262
230
262
269
I
S
242
83
242
151
151
UFMG/ICEx/DCC
83
MD
Conceitos
796
UFMG/ICEx/DCC
MD
Conceitos
797
UFMG/ICEx/DCC
MD
Conceitos
798
UFMG/ICEx/DCC
MD
Conceitos
799
Algoritmo de Prim
Idia bsica:
Tomando como vrtice inicial A, crie uma fila de prioridades classificada pelos pesos das arestas conectando
A.
Repita o processo at que
todos os vrtices tenham
sido visitados.
UFMG/ICEx/DCC
MD
Conceitos
800
MD
Conceitos
801
UFMG/ICEx/DCC
MD
Conceitos
802
UFMG/ICEx/DCC
MD
Conceitos
803
MD
Conceitos
804
UFMG/ICEx/DCC
MD
Conceitos
805
Anlise:
Linhas 14: O(V ).
Cada vrtice (exceto s) inicializado como
white e nenhum vrtice volta a ser white.
5
6
7
8
Anlise:
Linhas 58: O(1).
UFMG/ICEx/DCC
MD
Conceitos
806
9 while Q 6=
10
do u head[Q]
11
for each v Adj[u]
12
do if color [v] = white
13
then color [v] gray
14
d[v] d[u] + 1
15
[v] u
16
Enqueue(Q, v)
17
Dequeue(Q)
18
color [u] black
UFMG/ICEx/DCC
MD
Conceitos
807
9 while Q 6=
10
do u head[Q]
11
for each v Adj[u]
12
do if color [v] = white
13
then color [v] gray
14
d[v] d[u] + 1
15
[v] u
16
Enqueue(Q, v)
17
Dequeue(Q)
18
color [u] black
MD
Conceitos
808
UFMG/ICEx/DCC
MD
Conceitos
809
UFMG/ICEx/DCC
MD
Conceitos
810
UFMG/ICEx/DCC
MD
Conceitos
811
UFMG/ICEx/DCC
MD
Conceitos
812
Inequao triangular
Teorema: (u, v) (u, x) + (x, v).
Caminho mais curto u ; v no mais longo que qualquer outro caminho
u ; v em particular o caminho concatenando o caminho mais curto
u ; x com o caminho mais curto x ; v.
UFMG/ICEx/DCC
MD
Conceitos
813
UFMG/ICEx/DCC
MD
Conceitos
814
UFMG/ICEx/DCC
MD
Conceitos
815
Anlise:
Executa em tempo O(V ).
UFMG/ICEx/DCC
MD
Conceitos
816
UFMG/ICEx/DCC
MD
Conceitos
817
UFMG/ICEx/DCC
MD
Conceitos
818
UFMG/ICEx/DCC
MD
Conceitos
819
UFMG/ICEx/DCC
MD
Conceitos
820
UFMG/ICEx/DCC
MD
Conceitos
821
Vrtice u descoberto
Vrtice u finalizado
MD
Conceitos
822
UFMG/ICEx/DCC
MD
Conceitos
823
Comentrios:
Linha 1: Vrtice u descoberto e torna-se cinza
(gray ).
Linha 2: Incrementa a varivel de timestamp.
Linha 3: Marca o instante em o vrtice u foi descoberto.
Linhas 4 a 7: Verifica cada vrtice v adjacente a
u (linha 4). Se o vrtice v ainda no foi descoberto (linha 5) marca como seu ancestral o vrtice
u (linha 6) e continua pesquisando o grafo em profundidade (linha 7).
Linha 8: Vrtice u finalizado e torna-se preto
(black ).
Linha 9: Incrementa a varivel de timestamp.
Linha 10: Marca o instante em o vrtice u foi finalizado.
Anlise:
Todas as atribuies tm custo O(1).
Loop das linhas 47: executado |Adj[u]| vezes,
sendo que vV |Adj[v]| = (E). Assim o custo
de DFS-V ISIT (E).
UFMG/ICEx/DCC
MD
Conceitos
824
UFMG/ICEx/DCC
MD
Conceitos
825
MD
Conceitos
826
UFMG/ICEx/DCC
MD
Conceitos
827
UFMG/ICEx/DCC
MD
Conceitos
828
MD
Conceitos
829
MD
Conceitos
830
UFMG/ICEx/DCC
MD
Conceitos
831
MD
Conceitos
832
UFMG/ICEx/DCC
MD
Conceitos
833
MD
Conceitos
834
UFMG/ICEx/DCC
MD
Conceitos
835
MD
Conceitos
836
UFMG/ICEx/DCC
MD
Conceitos
837
UFMG/ICEx/DCC
MD
Conceitos
838
MD
Conceitos
839
UFMG/ICEx/DCC
MD
Conceitos
840
DFS-V ISIT(u)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Vrtice u descoberto
UFMG/ICEx/DCC
MD
Aresta do tipo B
Aresta do tipo F ou C
Vrtice u finalizado
Conceitos
841
UFMG/ICEx/DCC
MD
Conceitos
842
Ordenao topolgica
A busca em profundidade pode ser usada para executar uma ordenao
topolgica em um grafo dirigido acclico (DAG Directed Acyclic Graph).
Uma ordenao topolgica de um DAG G = (V, E) uma ordenao linear
de todos os seus vrtices, tal que se G contm uma aresta (u, v), ento u
aparece antes de v na ordenao.
Se o grafo no acclico, ento no possvel nenhuma ordenao linear.
Uma ordenao topolgica de um grafo pode ser vista como uma ordenao
de seus vrtices ao longo de uma linha horizontal, de tal forma que todas as
arestas orientadas sigam da esquerda para a direita.
UFMG/ICEx/DCC
MD
Conceitos
843
Ordenao topolgica
DAGs so usados em aplicaes para indicar precedncia entre eventos.
O grafo abaixo mostra como um dado homem se veste pela manh.
Uma aresta orientada (u, v) no DAG indica que a pea de roupa u deve ser
vestida antes da pea v.
Algumas peas devem ser vestidas antes de outras (meias antes dos sapatos);
Outras, em qualquer ordem (meias e calas).
Uma ordenao topolgica desse DAG fornece uma ordem para o processo
de se vestir.
UFMG/ICEx/DCC
MD
Conceitos
844
1 DFS(G)
TOPOLOGICAL -S ORT(G)
DFS-V ISIT(u)
1
2
3
4
5
6
7
8
9
10
UFMG/ICEx/DCC
MD
Conceitos
845
UFMG/ICEx/DCC
MD
Conceitos
846
UFMG/ICEx/DCC
MD
Conceitos
847
UFMG/ICEx/DCC
MD
Conceitos
848
UFMG/ICEx/DCC
MD
Conceitos
849
GT
UFMG/ICEx/DCC
MD
Conceitos
850
UFMG/ICEx/DCC
MD
Conceitos
851
UFMG/ICEx/DCC
MD
Conceitos
852
Para a pesquisa resultante, temos os seguintes tempos de finalizao f [u] em ordem decrescente:
u
f [u]
UFMG/ICEx/DCC
b
16
e
15
a
14
MD
c
10
d
9
Conceitos
g
7
h
6
f
4
853
UFMG/ICEx/DCC
MD
Conceitos
854
UFMG/ICEx/DCC
b
16
e
15
a
14
MD
c
10
d
9
Conceitos
g
7
h
6
f
4
855
UFMG/ICEx/DCC
MD
Conceitos
856
UFMG/ICEx/DCC
MD
Conceitos
Grafo GSCC
857
UFMG/ICEx/DCC
MD
Conceitos
858