BCC 101 – Matemática Discreta I

Slides:



Advertisements
Apresentações semelhantes
Contadores e Registradores
Advertisements

AULA 02 PROGRAMAÇÃO LINEAR INTEIRA
DESENHO INDUSTRIAL ASSISTIDO POR COMPUTADOR
Amintas engenharia.
Matrizes especiais Matriz linha Matriz do tipo 1 x n, ou seja, com uma única linha. Por exemplo, a matriz A =[ ], do tipo 1 x 4. Matriz coluna.
MÁQUINAS UNIVERSAIS Fabrício Dias
Celso C. Ribeiro Caroline T. Rocha
UNIVERSIDADE LUTERANA DO BRASIL COMUNIDADE EVANGÉLICA LUTERANA SÃO PAULO Reconhecida pela Portaria Ministerial nº 681 de 07/12/89 – DOU de 11/12/89 Campus.
Múltiplos Os múltiplos de um número inteiro obtêm-se multiplicando esse número por 0, 1, 2, 3, 4, 5, 6, ... Exemplos: M5= {0, 5, 10, 15, 20,
Universidade Bandeirante de São Paulo Fundamentos da Álgebra
Determinantes Determinante é um número real associado a uma matriz quadrada. Notação: det A ou |A|. Determinante de uma Matriz Quadrada de 1ª Ordem. Seja.
SISTEMAS DE EQUAÇÕES.
Modelos no Domínio do Tempo de Sistemas LTI Contínuos
Análise de regressão linear simples: abordagem matricial
Relações Adriano Joaquim de O Cruz ©2002 NCE/UFRJ
1 Complexidade de Algoritmos Complexidade de pior caso Complexidade de melhor caso de uso bem menos freqüente em algumas situações específicas Complexidade.
Árvores.
1 MergeSort Seja uma lista A de n elementos. O algoritmo consiste das seguintes fases Dividir A em 2 sub-listas de tamanho n/2 Conquistar: ordenar cada.
David Menotti Algoritmos e Estruturas de Dados I DECOM – UFOP
BCC101 – Matemática Discreta
BCC101 – Matemática Discreta
BCC 101– Matemática Discreta
BCC 101 – Matemática Discreta I
BCC 101 –Matemática Discreta
Recursividade Conceitos e Aplicações.
Projeto e Análise de Algoritmos
Polinômios Prof. Marlon.
EQUAÇÕES POLINOMIAIS Prof. Marlon.
FUNÇÃO MODULAR.
A Lógica das Sentenças Abertas Profa. Ana Florencia Aula 9
Matemática I Prof. Gerson Lachtermacher, Ph.D.
Revisão do conceito de matrizes
Campus de Caraguatatuba
Como aplicar leis da lógica
Momentos de Inércia Cap. 10
Cinemática Plana de um Corpo Rígido Cap. 16
MECÂNICA - DINÂMICA Cinemática de uma Partícula Cap Exercícios.
Momentos de Inércia Cap. 10
TRABALHO MATEMÁTICA DISCRETA
SISTEMAS LINEARES.
BCC 101 –Matemática Discreta
Princípio de Prova por Indução
Aula 02 Variáveis, Matrizes, Gráficos
Salas de Matemática.
Noções de trigonometria e funções trigonométricas
Progressão Geométrica Matrizes Questão nº01  Na P.G., a posição do termo é...
Cinemática de uma Partícula Cap. 12
Instituto de Aplicação Fernando Rodrigues da Silveira (CAp/UERJ)
Recursão.
Indução Matemática Recursão
ÁLGEBRA – AULA 2 Equações.
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Campus de Caraguatatuba Aula 12: Sistemas de Equações Lineares (2)
Conceitos básicos em grafos
CALENDÁRIO SEXY Ele & Ela. CALENDÁRIO SEXY Ele & Ela.
BCC 101 – Matemática Discreta I
Campus de Caraguatatuba Aula 2: Somatório e Produtório
Diagramas de Venn e de Carroll Não se chamam propriamente ferramentas/instrumentos estatísticos mas ajudam a organizar de uma forma simples alguns tipos.
Rio Verde - Goiás - Brasil
Recursão Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:
Cinemática Plana de um Corpo Rígido Cap. 16
Universidade do Vale do Rio dos Sinos - São Leopoldo -
Campus de Caraguatatuba
Construção e Análise de Algoritmos
Campus de Caraguatatuba Matemática Discreta 1 – MD 1
Campus de Caraguatatuba Aula 9: Noções Básicas sobre Erros (3)
Fontes de Erros Aula 1 Introdução; Erros em processos numéricos;
BCC 101 – Matemática Discreta I
Recursividade Profs. De Prog2 e Lab2.
Aulão de Matemática Análise Combinatória Professor: Mundico
Transcrição da apresentação:

BCC 101 – Matemática Discreta I 11/28/06 BCC 101 – Matemática Discreta I Recursão / Indução BCC101 - Matemática Discreta - DECOM/UFOP

BCC101 - Matemática Discreta - DECOM/UFOP 11/28/06 Recursão/Indução Método usada para resolver uma classe de problemas, em que cada instância tem um tamanho (n ∈ N) Construa a solução para instâncias do problema de tamanho 0 Supondo conhecida a solução do problema para instâncias de tamanho n, sendo n arbitrário, construa a solução para instâncias de tamanho (n+1) base da recursão Indução é uma importante técnica de solução de problemas, baseada em dividir repetidamente um problema em subproblemas. A idéia é generalizar o problema para uma classe de problemas, tal que cada instância do problema têm um determinado tamanho (um no. natural). O tamanho é um parâmetro do problema. Por exemplo, um problema relativo a um jogo com uma pilha de palitos de fósforo, onde o número de palitos é um parâmetro; o problema de calcular um somatório, onde o range do somatório é um parâmetro, o problema de ordenar uma lista, onde o tamanho da lista é um parâmmetro. Uma vez decidida a generalização apropriada, a solução tem 2 passos. Primeiro, considera-se problemas de tamanho 0 – base da indução. Em geral, tais problemas são triviais. Segundo, considera-se como resolver um problema de tamanho (n+1), para n arbitrário, dada a solução do problema de tamanho n – passo indutivo. Por esse processo, podemos resolver problemas de tamnho 0 (base). Podemos resolver problemas de tamnho 1 (aplica-se o passo indutivo para construir a solução do problema de tamnho 1, a partir da solução do problema de tamanho 0. Então, podemos resolver problemas de tamanho 2 (aplica-se o passo indutivo para obter a solução do problema de tamanho 2, a partir da solução do problema de tamanho 1). E assim por diante. Isto é, por indução, podemos resolver prolemas de tamanho arbitrário. Um requerimento é que O tamanho do problema seja um no. natural (incluindo 0). Em alguns casos, problemas de tamanho 0 não fazem sentido (por exemplo, determinar o menor elemento de uma lista com 0 elementos) e o passo base considera, portanto, problemas de tamanho 1. passo recursivo BCC101 - Matemática Discreta - DECOM/UFOP

BCC101 - Matemática Discreta - DECOM/UFOP Números Naturais Conjunto dos números naturais N = {0,1,2,3, …} pode ser definido recursivamente como 0 ∈ N n ∈ N → (n+1) ∈ N Gramática: N -> 0 | suc N Tipo de dado (em Haskell) data Nat = Zero | Suc Nat BCC101 - Matemática Discreta - DECOM/UFOP

Fatorial Fatorial: n! = 1x2x…x(n-1)xn 0!= 1 (base) n!= n · (n -1)! (recursão) EX: 5! recursão = 5 · 4 · 3 · 2! = 5 · 4 · 3 · 2 · 1! = 5 · 4 · 3 · 2 · 1 · 0! = 5 · 4 · 3! = 5 · 4! base = 5 · 4 · 3 · 2 · 1 · 1

BCC101 - Matemática Discreta - DECOM/UFOP Exercícios Defina recursivamente os conjuntos: Pares = {0,2,4,…} O conjunto potência de A : P (A ). O conjunto de todos os bitstrings Bs O conjunto de bitstrings palindromos Pal O conjunto de todas as listas de valores de um dado tipo A BCC101 - Matemática Discreta - DECOM/UFOP

BCC101 - Matemática Discreta - DECOM/UFOP Sequências Sequência de potências de 2: an = 2n, n≥0 pode ser definida recursivamente como: a0 = 1 an = 2 an-1 n>0 Sequência: 3 0 3 0 3 0 … a0 = 3 a1 = 0 an = an-2 n>1 BCC101 - Matemática Discreta - DECOM/UFOP

Fibonacci Fibonacci fib 0 = 0 fib 1 = 1 fib n = fib (n -1) + fib (n -2) Esse algoritmo é O(2n ) porque ao passar de n para n-1 efetuamos 2 chamadas recursivas da função, e cada uma usa, por sua vez, duas outras chamadas recursivas, e assim por diante.

BCC101 - Matemática Discreta - DECOM/UFOP Exercícios Considere a definição recursiva: f(0) = 1 f(n+1) = 3 f(n) Determine f(1), f(2), f(3), f(4) Encontre uma fórmula direta para f(n) Defina recursivamente as sequências: an = 3n+2 n≥0 1 -1 1 -1 1 … an = n2 BCC101 - Matemática Discreta - DECOM/UFOP

Coeficientes Binomiais (n,k) Coeficientes binomiais ocorrem em diversas aplicações: Combinatória/Probabilidade C (n,k) = número de maneiras de escolher k elementos de um conjunto com n elementos Algebra: C (n,k) = coeficiente do k esimo termo na expansão binômio de grau n: (x + y )n Notação usada comumente:

Coeficientes Binomiais (n,k) A maneira mais eficiente de computar todos os C (n,k) até um determinado n é via o triângulo de Pascal. O triângulo de Pascal é construído colocando 1 no topo (inicialização) e todo elemento seguinte é definido recursivamente como a soma dos números à direita e à esquerda desse número, na linha anterior. Se tal número não existe, é considerado 0.

combinação n k e Triângulo Pascal 1

combinação n k e Triângulo Pascal 1 1 1

combinação n k e Triângulo Pascal 1 1 1 1 2 1

combinação n k e Triângulo Pascal 1 1 1 1 2 1 1 3 3 1

combinação n k e Triângulo Pascal 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1

combinação n k e Triângulo Pascal 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1

combinação n k e Triângulo Pascal 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1

combinação n k e Triângulo Pascal n = linha 1 2 3 4 5 6 0 k = coluna diagonal 1 2 3 4 5 6 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 Q: Fórmula recursiva para C (n,k)?

Coeficientes Binomiais (n,k) Resposta: Use o triângulo de Pascal. Base: O topo do triângulo é 1. Portanto, C (0,0) = 1. Se falta um número, ele é considerado 0. Isso dá origem a C (n,k) = 0 se k < 0, ou k > n. Recursão: Cada valor é a soma dos números à direita e à esquerda na linha anterior: C (n,k) = C (n -1,k-1) + C (n -1,k )

Coeficientes Binomiais (n,k) Resumindo:

Máximo Divisor Comum - mdc O algoritmo de Euclides usa o fato: mdc(x,y) = mdc(y, x mod y) supomos aqui que x > 0

BCC101 - Matemática Discreta - DECOM/UFOP Exercícios Defina recursivamente: an , a ∈ R, n ∈ N BCC101 - Matemática Discreta - DECOM/UFOP

BCC101 - Matemática Discreta - DECOM/UFOP 11/28/06 Tamanho do problema A generalização apropriada nem sempre é óbvia. Exemplo: problema relativo a um tabuleiro de xadrez com 64 quadrados. Como esse problema pode ser generalizado? Uma classe de problemas com instâncias de tamanho n, tal que uma instância é n = 64 Uma classe de problemas em que uma instância é um tabuleiro de tamanho n×n. O tamanho da instância é n; o problema original é uma instância de tamanho n = 8 Restringir a classe a problemas as casos em que o tamanho do tabuleiro é 2n. O problema original é uma instância de tamanho n = 3 A primeira generalização não considera a estrutura do tabuleiro BCC101 - Matemática Discreta - DECOM/UFOP

BCC101 - Matemática Discreta - DECOM/UFOP 11/28/06 Triominós Considere um tabuleiro com tamanho 2n x 2n no qual exatamente um quadrado está coberto. um triominó de formato L é feito de 3 quadrados: Quantos triominós de formato L são necessários para cobrir os quadrados restantes, sem que triominós se sobreponham. BCC101 - Matemática Discreta - DECOM/UFOP

Triominós - solução para 23 x 23 BCC101 - Matemática Discreta - DECOM/UFOP

BCC101 - Matemática Discreta - DECOM/UFOP Triominós Caso base (n=0): O tabuleiro tem dimensão 20x20 = 1x1, isto é, exatamente 1 quadrado, que já está coberto. Portanto, são necessários 0 triominós para cobrir os quadrados restantes: trio(0) = 0 Passo indutivo: Considere um tabuleiro de dimensões 2n+1x2n+1 Suponha que é possível cobrir qq tabuleiro de dimensões 2nx2n com trio(n) triominós Devemos mostrar como explorar essa hipótese para obter a solução para o caso 2n+1x2n+1 BCC101 - Matemática Discreta - DECOM/UFOP

BCC101 - Matemática Discreta - DECOM/UFOP Triominós Um tabuleiro 2n+1x2n+1 pode ser subdividido em 4 tabuleiros 2nx2n, traçando-se uma linha horizontal e uma vertical que se cruzam no meio. Em uma desses 4 tabuleiros, há um quadrado que já está coberto. Pela nossa hipótese, os demais quadrados desse tabuleiro podem ser cobertos com k triominós. Nenhum dos 3 outros tabuleiros 2nx2n tem um quadrado coberto. Como aplicar a hipótese aos 3 outros tabuleiros? A idéia é colocar um triominó na junção desses 3 BCC101 - Matemática Discreta - DECOM/UFOP

BCC101 - Matemática Discreta - DECOM/UFOP Triominós trio(0) = 0 trio(n+1) = 4 trio(n) +1 Agora a hipótese pode ser aplicada para cobrir os quadrados restantes de cada uma dos 3 outros subtabuleiros. Então trio(n+1) = 4 trio(n) +1 (n>0). BCC101 - Matemática Discreta - DECOM/UFOP

Exercício Torres de Hanoi (Edouard Lucas - 1883) Lecture 15 - CS 1813 Discrete Math, University of Oklahoma 4/9/2017 Exercício Torres de Hanoi (Edouard Lucas - 1883) Um templo da cidade de Hanoi tem 3 torres de diamante, em uma das quais foram empilhados n discos de ouro, de maneira que os discos diminuem de tamanho da base para o topo da torre. Os monges do templo trabalham sem cessar para transferir os discos da torre em que foram inicialmente colocados para uma das outras duas torres --- mas nunca um disco de maior raio pode ser colocado sobre outro de raio menor. Encontre uma definição recursiva para o número de movimentos de discos que são necessários para transferir n discos da torre A para a torre C, usando a torre B.