SlideShare uma empresa Scribd logo
1 de 113
Baixar para ler offline
Aula 02 – T´ecnicas de Desenvolvimento
de Algoritmos: Indu¸c˜ao Fraca e Forte
Norton Trevisan Roman
norton@usp.br
8 de agosto de 2018
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 1 / 39
Indu¸c˜ao
T´ecnica importante para projeto de algoritmos
Ferramenta ´util para provar afirma¸c˜oes quanto `a
eficiˆencia e corre¸c˜ao de algoritmos
Defini¸c˜ao
Consistem em inferir uma regra geral a partir de
instˆancias particulares, indo ent˜ao do efeito `as causas,
das consequˆencias ao princ´ıpio, da experiˆencia `a teoria.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 2 / 39
Formas de Inferˆencia
Dedutiva
Consiste em chegar a uma conclus˜ao a partir de
premissas (regras e fatos)
A conclus˜ao deve necessariamente ser verdadeira,
caso todas as premissas sejam verdadeiras
Ex:
Premissa: se chover, a estrada estar´a molhada
Premissa: choveu
Dedu¸c˜ao: a estrada est´a molhada
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 3 / 39
Formas de Inferˆencia
Indutiva
Consiste de, ap´os considerar um n´umero suficiente
de exemplos, concluir uma regra geral
Constr´oi uma conclus˜ao baseada em experiˆencia
Ex:
Premissas: todas as vezes em que vi chover, a estrada
estava molhada
Indu¸c˜ao: se chover, a estrada estar´a molhada
Naturalmente, a conclus˜ao n˜ao ´e definitiva, pois cont´em
informa¸c˜ao (de que n˜ao h´a chuva sem estrada molhada) n˜ao
dada pelas premissas
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 4 / 39
Formas de Inferˆencia
Abdutiva
Consiste de encontrar a hip´otese mais prov´avel para
uma determinada premissa observada
Ex:
Premissa: se chover, a estrada estar´a molhada
Premissa: a estrada est´a molhada
Abdu¸c˜ao: (provavelmente) choveu
Trata-se da inferˆencia a favor da melhor explica¸c˜ao
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 5 / 39
Formas de Inferˆencia
Dedu¸c˜ao
→A B
Conhe¸co a regra
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 6 / 39
Formas de Inferˆencia
Dedu¸c˜ao
→A B
Sei que A ´e verdade
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 6 / 39
Formas de Inferˆencia
Dedu¸c˜ao
→A B
Ent˜ao infiro que B ´e verdade
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 6 / 39
Formas de Inferˆencia
Indu¸c˜ao
B
Por v´arias vezes, vi B
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 7 / 39
Formas de Inferˆencia
Indu¸c˜ao
A B
em decorrˆencia de A
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 7 / 39
Formas de Inferˆencia
Indu¸c˜ao
→A B
Infiro ent˜ao que provavelmente A → B
(incerteza)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 7 / 39
Formas de Inferˆencia
Abdu¸c˜ao
→A B
Conhe¸co a regra
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 8 / 39
Formas de Inferˆencia
Abdu¸c˜ao
→A B
Sei que B ´e verdade
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 8 / 39
Formas de Inferˆencia
Abdu¸c˜ao
→A B
Ent˜ao infiro que A ´e provavelmente verdade
(incerteza)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 8 / 39
Inferˆencia e Algoritmos
E o que isso tudo tem a ver com algoritmos?
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 9 / 39
Inferˆencia e Algoritmos
E o que isso tudo tem a ver com algoritmos?
Vejamos como geralmente criamos algoritmos para
um determinado problema:
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 9 / 39
Inferˆencia e Algoritmos
E o que isso tudo tem a ver com algoritmos?
Vejamos como geralmente criamos algoritmos para
um determinado problema:
Olhamos alguns exemplos de entrada + sa´ıda esperada
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 9 / 39
Inferˆencia e Algoritmos
E o que isso tudo tem a ver com algoritmos?
Vejamos como geralmente criamos algoritmos para
um determinado problema:
Olhamos alguns exemplos de entrada + sa´ıda esperada
Criamos um procedimento que, para esses casos, fa¸ca com
que a entrada leve `a sa´ıda
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 9 / 39
Inferˆencia e Algoritmos
E o que isso tudo tem a ver com algoritmos?
Vejamos como geralmente criamos algoritmos para
um determinado problema:
Olhamos alguns exemplos de entrada + sa´ıda esperada
Criamos um procedimento que, para esses casos, fa¸ca com
que a entrada leve `a sa´ıda
Naturalmente, isso ocorre para problemas ainda n˜ao
especificados matematicamente
Do contr´ario, basta seguirmos a especifica¸c˜ao (f´ormula)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 9 / 39
Inferˆencia e Algoritmos
Mais de perto...
Olhamos alguns exemplos de entrada + sa´ıda
esperada
Criamos um procedimento que, para esses casos,
fa¸ca com que a entrada leve `a sa´ıda
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 10 / 39
Inferˆencia e Algoritmos
Mais de perto...
Olhamos alguns exemplos de entrada + sa´ıda
esperada
Criamos um procedimento que, para esses casos,
fa¸ca com que a entrada leve `a sa´ıda
Ou seja...
A partir de N pares {[Ei, Si], 1 ≤ i ≤ N}
Inferimos que, via nosso procedimento P,
{Ei
P
−→ Si, ∀[Ei, Si]}
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 10 / 39
Inferˆencia e Algoritmos
Nossa inferˆencia:
A partir de N pares {[Ei, Si], 1 ≤ i ≤ N}
Inferimos que, via nosso procedimento P,
{Ei
P
−→ Si, ∀[Ei, Si]}
Que tipo de racioc´ınio ´e esse?
( ) Dedutivo
( ) Indutivo
( ) Abdutivo
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 11 / 39
Inferˆencia e Algoritmos
Nossa inferˆencia:
A partir de N pares {[Ei, Si], 1 ≤ i ≤ N}
Inferimos que, via nosso procedimento P,
{Ei
P
−→ Si, ∀[Ei, Si]}
Que tipo de racioc´ınio ´e esse?
( ) Dedutivo
(×) Indutivo
( ) Abdutivo
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 11 / 39
Inferˆencia e Algoritmos
S´o que o racioc´ınio indutivo ´e incerto. N˜ao
podemos confiar plenamente nele.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 12 / 39
Inferˆencia e Algoritmos
S´o que o racioc´ınio indutivo ´e incerto. N˜ao
podemos confiar plenamente nele.
Temos ent˜ao que achar uma forma de aplicar o
racioc´ınio dedutivo
Provando assim que a conjectura Ei
P
−→ Si ´e verdadeira para
todo [Ei , Si ]
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 12 / 39
Inferˆencia e Algoritmos
S´o que o racioc´ınio indutivo ´e incerto. N˜ao
podemos confiar plenamente nele.
Temos ent˜ao que achar uma forma de aplicar o
racioc´ınio dedutivo
Provando assim que a conjectura Ei
P
−→ Si ´e verdadeira para
todo [Ei , Si ]
Embora possamos buscar um contra-exemplo para a
conjectura, provando sua falsidade, provar sua
veracidade ´e mais dif´ıcil
Pois, a menos que possamos testar todos os exemplos
poss´ıveis, ainda restar´a d´uvida
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 12 / 39
Indu¸c˜ao Finita
Nesse sentido, uma t´ecnica que nos permite provar
nossa conjectura ´e a Indu¸c˜ao Finita.
Princ´ıpio da Indu¸c˜ao Finita (Fraca)
Sejam Pn afirma¸c˜oes associadas a cada inteiro positivo
n ≥ k. Se Pk for verdadeira e, para cada inteiro positivo
j ≥ k pudermos mostrar que, se Pj for verdadeira ent˜ao
Pj+1 tamb´em o ser´a, ent˜ao Pn ser´a verdadeira para todo
inteiro n ≥ k.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 13 / 39
Indu¸c˜ao Finita
E, formalmente...
Princ´ıpio da Indu¸c˜ao Finita (Fraca)
Para provarmos que Pn ´e verdadeira para todo n ≥ k,
teremos que provar que:
1 P ´e verdadeira para algum k ≥ 1 (Pk ´e verdadeira)
2 Para todo j ≥ k, se P for verdadeira para j ent˜ao
tamb´em o ser´a para j + 1 (Pj ⇒ Pj+1)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 14 / 39
Indu¸c˜ao Finita (Fraca)
Em outras palavras...
1 Mostramos que P ´e verdadeira para um
determinado k ≥ 1 (normalmente, k = 1)
2 Assumimos que P ´e verdadeira para um inteiro
arbitr´ario j ≥ k (j = k j´a provamos)
3 Baseados nessa hip´otese, mostramos que Pj+1 ´e
verdadeira, ou seja, provamos que P ´e verdadeira
para j + 1
E assim conseguimos mostrar que P ´e verdadeira
para qualquer inteiro ≥ k
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 15 / 39
Indu¸c˜ao Finita (Fraca)
Partes do Processo de Indu¸c˜ao Finita
Base: demonstrar que P1 (ou Pk, para um
determinado k ≥ 1) ´e verdadeira (passo 1 no slide
anterior)
Hip´otese de indu¸c˜ao: assumir que Pj ´e verdadeira
Passo indutivo: estabelecer que Pj → Pj+1 ´e
verdadeira (passo 3)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 16 / 39
Indu¸c˜ao Finita (Fraca)
E por que isso funciona?
Demonstramos que P vale para um determinado k
Demonstramos que o fato de P valer para algum
j ≥ k arbitr´ario implica valer para j + 1
Ent˜ao segue que P valendo para k faz com que ela
valha para k + 1 tamb´em (Pk+1 ´e verdadeiro)
P valer para k + 1, por sua vez, implica valer para
k + 2, e assim por diante...
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 17 / 39
Indu¸c˜ao Finita (Fraca)
E por que isso funciona?
Temos ent˜ao um efeito domin´o:
Pk Pk+1 Pk+2
. . . Pj Pj+1 . . .
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
Indu¸c˜ao Finita (Fraca)
E por que isso funciona?
Temos ent˜ao um efeito domin´o:
Pk Pk+1 Pk+2
. . . Pj Pj+1 . . .
Provamos a base
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
Indu¸c˜ao Finita (Fraca)
E por que isso funciona?
Temos ent˜ao um efeito domin´o:
Pk Pk+1 Pk+2
. . . Pj Pj+1 . . .
A partir da base, e de que Pj ⇒ Pj+1, temos o segundo
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
Indu¸c˜ao Finita (Fraca)
E por que isso funciona?
Temos ent˜ao um efeito domin´o:
Pk Pk+1 Pk+2
. . . Pj Pj+1 . . .
A partir do segundo, e de que Pj ⇒ Pj+1, temos o terceiro
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
Indu¸c˜ao Finita (Fraca)
E por que isso funciona?
Temos ent˜ao um efeito domin´o:
Pk Pk+1 Pk+2
. . . Pj Pj+1 . . .
E assim por diante...
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
Indu¸c˜ao Finita (Fraca)
E por que isso funciona?
Temos ent˜ao um efeito domin´o:
Pk Pk+1 Pk+2
. . . Pj Pj+1 . . .
E assim por diante...
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
Indu¸c˜ao Finita (Fraca)
E por que isso funciona?
Temos ent˜ao um efeito domin´o:
Pk Pk+1 Pk+2
. . . Pj Pj+1 . . .
E assim por diante...
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
Indu¸c˜ao Finita (Fraca)
E por que isso funciona?
Temos ent˜ao um efeito domin´o:
Pk Pk+1 Pk+2
. . . Pj Pj+1 . . .
E assim por diante...
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
Indu¸c˜ao Finita (Fraca)
E por que indu¸c˜ao fraca?
Essa formula¸c˜ao ´e denominada princ´ıpio da indu¸c˜ao
(finita) fraca, porque apenas Pj ´e assumida como
verdadeiro para se provar a veracidade de Pj+1
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 19 / 39
Indu¸c˜ao Finita (Fraca)
E por que indu¸c˜ao fraca?
Essa formula¸c˜ao ´e denominada princ´ıpio da indu¸c˜ao
(finita) fraca, porque apenas Pj ´e assumida como
verdadeiro para se provar a veracidade de Pj+1
Mas isso ´e realmente indu¸c˜ao?
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 19 / 39
Indu¸c˜ao Finita (Fraca)
E por que indu¸c˜ao fraca?
Essa formula¸c˜ao ´e denominada princ´ıpio da indu¸c˜ao
(finita) fraca, porque apenas Pj ´e assumida como
verdadeiro para se provar a veracidade de Pj+1
Mas isso ´e realmente indu¸c˜ao?
N˜ao. O processo ´e, de fato, dedutivo
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 19 / 39
Indu¸c˜ao Finita (Fraca)
E por que indu¸c˜ao fraca?
Essa formula¸c˜ao ´e denominada princ´ıpio da indu¸c˜ao
(finita) fraca, porque apenas Pj ´e assumida como
verdadeiro para se provar a veracidade de Pj+1
Mas isso ´e realmente indu¸c˜ao?
N˜ao. O processo ´e, de fato, dedutivo
Mas ent˜ao, por que indu¸c˜ao finita?
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 19 / 39
Indu¸c˜ao Finita (Fraca)
E por que indu¸c˜ao fraca?
Essa formula¸c˜ao ´e denominada princ´ıpio da indu¸c˜ao
(finita) fraca, porque apenas Pj ´e assumida como
verdadeiro para se provar a veracidade de Pj+1
Mas isso ´e realmente indu¸c˜ao?
N˜ao. O processo ´e, de fato, dedutivo
Mas ent˜ao, por que indu¸c˜ao finita?
Porque tentamos demonstrar uma conjectura que
possivelmente foi formulada por um racioc´ınio indutivo
(como nosso algoritmo {Ei
P
−→ Si , ∀[Ei , Si ]})
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 19 / 39
Indu¸c˜ao Finita (Fraca)
E qual a utilidade disso?
O princ´ıpio da Indu¸c˜ao Finita ´e uma implica¸c˜ao,
cuja conjectura ´e da forma:
“a afirma¸c˜ao P ´e verdadeira para todos os inteiros
positivos”
Assim, ´e uma t´ecnica ´util quando queremos
demonstrar que alguma propriedade ´e v´alida para
qualquer inteiro positivo
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 20 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Base: P1 : S(1) = 1 = 12
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Base: P1 : S(1) = 1 = 12
(ok)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Base: P1 : S(1) = 1 = 12
(ok)
Hip´otese: Pj : S(j) = j2
(assumo verdadeira)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Base: P1 : S(1) = 1 = 12
(ok)
Hip´otese: Pj : S(j) = j2
(assumo verdadeira)
Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Inclu´ımos o
pen´ultimo
elemento de Pj+1
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Base: P1 : S(1) = 1 = 12
(ok)
Hip´otese: Pj : S(j) = j2
(assumo verdadeira)
Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1)
= 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Usamos que
isso tudo ´e S(j)
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Base: P1 : S(1) = 1 = 12
(ok)
Hip´otese: Pj : S(j) = j2
(assumo verdadeira)
Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1)
= 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1)
= S(j) + (2(j + 1) − 1)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
E assumimos
Pj : S(j) = j2
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Base: P1 : S(1) = 1 = 12
(ok)
Hip´otese: Pj : S(j) = j2
(assumo verdadeira)
Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1)
= 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1)
= S(j) + (2(j + 1) − 1)
= j2
+ (2(j + 1) − 1)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Base: P1 : S(1) = 1 = 12
(ok)
Hip´otese: Pj : S(j) = j2
(assumo verdadeira)
Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1)
= 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1)
= S(j) + (2(j + 1) − 1)
= j2
+ (2(j + 1) − 1)
= j2
+ 2j + 1
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Base: P1 : S(1) = 1 = 12
(ok)
Hip´otese: Pj : S(j) = j2
(assumo verdadeira)
Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1)
= 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1)
= S(j) + (2(j + 1) − 1)
= j2
+ (2(j + 1) − 1)
= j2
+ 2j + 1
= (j + 1)2
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Base: P1 : S(1) = 1 = 12
(ok)
Hip´otese: Pj : S(j) = j2
(assumo verdadeira)
Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1)
= 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1)
= S(j) + (2(j + 1) − 1)
= j2
+ (2(j + 1) − 1)
= j2
+ 2j + 1
= (j + 1)2
⇒ S(j + 1) = (j + 1)2
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Base: P1 : S(1) = 1 = 12
(ok)
Hip´otese: Pj : S(j) = j2
(assumo verdadeira)
Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1)
= 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1)
= S(j) + (2(j + 1) − 1)
= j2
+ (2(j + 1) − 1)
= j2
+ 2j + 1
= (j + 1)2
⇒ S(j + 1) = (j + 1)2
⇒ Pj+1 ´e verdadeira
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Note que, para
provarmos Pj+1
usamos Pj : S(j) = j2
Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2
, para
n ≥ 1
Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos
mostrar Pn: S(n) = n2
Base: P1 : S(1) = 1 = 12
(ok)
Hip´otese: Pj : S(j) = j2
(assumo verdadeira)
Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1)
= 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1)
= S(j) + (2(j + 1) − 1)
= j2
+ (2(j + 1) − 1)
= j2
+ 2j + 1
= (j + 1)2
⇒ S(j + 1) = (j + 1)2
⇒ Pj+1 ´e verdadeira
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Seja S(n) = 1 + 2 + . . . + n. Prove
Pn : S(n) =
n(n + 1)
2
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Seja S(n) = 1 + 2 + . . . + n. Prove
Pn : S(n) =
n(n + 1)
2
Base: P1 : S(1) = 1 = 1(1+1)
2
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Seja S(n) = 1 + 2 + . . . + n. Prove
Pn : S(n) =
n(n + 1)
2
Base: P1 : S(1) = 1 = 1(1+1)
2
(ok)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Seja S(n) = 1 + 2 + . . . + n. Prove
Pn : S(n) =
n(n + 1)
2
Base: P1 : S(1) = 1 = 1(1+1)
2
(ok)
Hip´otese: Pj : S(j) =
j(j + 1)
2
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Seja S(n) = 1 + 2 + . . . + n. Prove
Pn : S(n) =
n(n + 1)
2
Base: P1 : S(1) = 1 = 1(1+1)
2
(ok)
Hip´otese: Pj : S(j) =
j(j + 1)
2
Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Seja S(n) = 1 + 2 + . . . + n. Prove
Pn : S(n) =
n(n + 1)
2
Base: P1 : S(1) = 1 = 1(1+1)
2
(ok)
Hip´otese: Pj : S(j) =
j(j + 1)
2
Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1)
= S(j) + (j + 1)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Seja S(n) = 1 + 2 + . . . + n. Prove
Pn : S(n) =
n(n + 1)
2
Base: P1 : S(1) = 1 = 1(1+1)
2
(ok)
Hip´otese: Pj : S(j) =
j(j + 1)
2
Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1)
= S(j) + (j + 1) =
j(j + 1)
2
+ (j + 1)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Seja S(n) = 1 + 2 + . . . + n. Prove
Pn : S(n) =
n(n + 1)
2
Base: P1 : S(1) = 1 = 1(1+1)
2
(ok)
Hip´otese: Pj : S(j) =
j(j + 1)
2
Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1)
= S(j) + (j + 1) =
j(j + 1)
2
+ (j + 1)
=
j(j + 1) + 2(j + 1)
2
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Seja S(n) = 1 + 2 + . . . + n. Prove
Pn : S(n) =
n(n + 1)
2
Base: P1 : S(1) = 1 = 1(1+1)
2
(ok)
Hip´otese: Pj : S(j) =
j(j + 1)
2
Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1)
= S(j) + (j + 1) =
j(j + 1)
2
+ (j + 1)
=
j(j + 1) + 2(j + 1)
2
=
(j + 1)(j + 2)
2
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Seja S(n) = 1 + 2 + . . . + n. Prove
Pn : S(n) =
n(n + 1)
2
Base: P1 : S(1) = 1 = 1(1+1)
2
(ok)
Hip´otese: Pj : S(j) =
j(j + 1)
2
Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1)
= S(j) + (j + 1) =
j(j + 1)
2
+ (j + 1)
=
j(j + 1) + 2(j + 1)
2
=
(j + 1)(j + 2)
2
=
(j + 1)((j + 1) + 1)
2
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
Indu¸c˜ao Finita (Fraca) – Exemplo
Seja S(n) = 1 + 2 + . . . + n. Prove
Pn : S(n) =
n(n + 1)
2
Base: P1 : S(1) = 1 = 1(1+1)
2
(ok)
Hip´otese: Pj : S(j) =
j(j + 1)
2
Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1)
= S(j) + (j + 1) =
j(j + 1)
2
+ (j + 1)
=
j(j + 1) + 2(j + 1)
2
=
(j + 1)(j + 2)
2
=
(j + 1)((j + 1) + 1)
2
⇒ S(j + 1) =
(j + 1)((j + 1) + 1)
2
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
Indu¸c˜ao Finita (Fraca)
Muito cuidado!
´E f´acil se enganar ao construir uma prova por
indu¸c˜ao
Quando demonstramos que Pj+1 ´e verdadeira, sem
usarmos a hip´otese Pj, n˜ao estamos fazendo uma
prova por indu¸c˜ao finita
Nesse caso, estamos fazendo uma prova direta de
Pj+1, onde j + 1 ´e arbitr´ario
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 23 / 39
Indu¸c˜ao Finita
Em alguns problemas, contudo, para se provar que
Pj+1 ´e verdadeira, temos que assumir a veracidade
de todas as Pi, para k ≤ i ≤ j
Princ´ıpio da Indu¸c˜ao Finita (Forte)
Sejam Pn afirma¸c˜oes associadas a cada inteiro positivo
n ≥ k. Se Pk for verdadeira e, para cada inteiro positivo
j ≥ k pudermos mostrar que, se Pk, Pk+1, . . . , Pj forem
verdadeiras ent˜ao Pj+1 tamb´em o ser´a, ent˜ao Pn ser´a
verdadeira para todo inteiro n ≥ k.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 24 / 39
Indu¸c˜ao Finita
E, formalmente...
Princ´ıpio da Indu¸c˜ao Finita (Forte)
Para provarmos que Pn ´e verdadeira para todo n ≥ k,
teremos que provar que:
1 P ´e verdadeira para algum k ≥ 1 (Pk ´e verdadeira)
2 Para todo j ≥ k, se Pk, Pk+1, . . . , Pj forem
verdadeiras, ent˜ao P tamb´em o ser´a para j + 1
(Pk, Pk+1, . . . , Pj ⇒ Pj+1)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 25 / 39
Indu¸c˜ao Finita (Forte)
Em outras palavras...
1 Mostramos que P ´e verdadeira para um
determinado k ≥ 1 (normalmente, k = 1)
2 Dado um inteiro arbitr´ario j, assumimos que P ´e
verdadeira para todo i, k ≤ i ≤ j
3 Baseados nessa hip´otese, mostramos que Pj+1 ´e
verdadeira, ou seja, provamos que P ´e verdadeira
para j + 1
E assim conseguimos mostrar que P ´e verdadeira
para qualquer inteiro n ≥ k
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 26 / 39
Indu¸c˜ao Finita (Forte)
Partes do Processo de Indu¸c˜ao Finita
Base: demonstrar que P1 (ou Pk, para um
determinado k ≥ 1) ´e verdadeira (passo 1 no slide
anterior)
Hip´otese de indu¸c˜ao: assumir que
Pk, Pk+1, . . . , Pj s˜ao verdadeiras
Passo indutivo: estabelecer que
Pk, Pk+1, . . . , Pj → Pj+1 ´e verdadeira (passo 3)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 27 / 39
Indu¸c˜ao Finita Fraca × Forte
Afinal, qual a diferen¸ca entre elas?
Na fraca, devemos provar, para um inteiro arbitr´ario
j, que Pj+1 ´e verdadeira, com base somente na
premissa de que Pj ´e verdadeira
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 28 / 39
Indu¸c˜ao Finita Fraca × Forte
Afinal, qual a diferen¸ca entre elas?
Na fraca, devemos provar, para um inteiro arbitr´ario
j, que Pj+1 ´e verdadeira, com base somente na
premissa de que Pj ´e verdadeira
Na forte, devemos assumir que Pi ´e verdadeira para
todo inteiro i entre r e um inteiro positivo arbitr´ario
j, para ent˜ao provar que Pj+1 ´e verdadeira.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 28 / 39
Indu¸c˜ao Finita Fraca × Forte
A forte recebe esse nome por nos dar mais base,
para os casos em que n˜ao conseguimos provar com
a fraca.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 29 / 39
Indu¸c˜ao Finita Fraca × Forte
A forte recebe esse nome por nos dar mais base,
para os casos em que n˜ao conseguimos provar com
a fraca.
Ent˜ao a forte ´e melhor?
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 29 / 39
Indu¸c˜ao Finita Fraca × Forte
A forte recebe esse nome por nos dar mais base,
para os casos em que n˜ao conseguimos provar com
a fraca.
Ent˜ao a forte ´e melhor?
N˜ao. Elas s˜ao totalmente equivalentes
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 29 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Prove que para todo n ≥ 2, n ou ´e um n´umero
primo ou ´e o produto de n´umeros primos.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 30 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Prove que para todo n ≥ 2, n ou ´e um n´umero
primo ou ´e o produto de n´umeros primos.
Nesse caso, Pi ´e a afirma¸c˜ao de que i ou ´e um n´umero primo
ou o produto de primos
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 30 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Prove que para todo n ≥ 2, n ou ´e um n´umero
primo ou ´e o produto de n´umeros primos.
Nesse caso, Pi ´e a afirma¸c˜ao de que i ou ´e um n´umero primo
ou o produto de primos
Base: P2 ´e verdadeira (2 ´e primo)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 30 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Prove que para todo n ≥ 2, n ou ´e um n´umero
primo ou ´e o produto de n´umeros primos.
Nesse caso, Pi ´e a afirma¸c˜ao de que i ou ´e um n´umero primo
ou o produto de primos
Base: P2 ´e verdadeira (2 ´e primo)
Hip´otese: Dado um inteiro arbitr´ario j, suponho que, para
todo inteiro 2 ≤ i ≤ j, Pi ´e verdadeira, ou seja, i ´e primo ou
o produto de primos
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 30 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Prove que para todo n ≥ 2, n ou ´e um n´umero
primo ou ´e o produto de n´umeros primos.
Nesse caso, Pi ´e a afirma¸c˜ao de que i ou ´e um n´umero primo
ou o produto de primos
Base: P2 ´e verdadeira (2 ´e primo)
Hip´otese: Dado um inteiro arbitr´ario j, suponho que, para
todo inteiro 2 ≤ i ≤ j, Pi ´e verdadeira, ou seja, i ´e primo ou
o produto de primos
Em outras palavras, assumo que todo inteiro entre 2 e j ou ´e primo
ou ´e o produto de primos
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 30 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Passo: Vejamos agora j + 1.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Passo: Vejamos agora j + 1.
Se j + 1 for primo, o resultado est´a correto.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Passo: Vejamos agora j + 1.
Se j + 1 for primo, o resultado est´a correto.
Se n˜ao for primo, ent˜ao podemos escrevˆe-lo como
j + 1 = ab (pois, do contr´ario, j + 1 seria primo)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Passo: Vejamos agora j + 1.
Se j + 1 for primo, o resultado est´a correto.
Se n˜ao for primo, ent˜ao podemos escrevˆe-lo como
j + 1 = ab (pois, do contr´ario, j + 1 seria primo)
Nesse caso, 1 < a < j + 1 e 1 < b < j + 1, pois sua
multiplica¸c˜ao n˜ao pode passar de j + 1, e se um deles for 1
estaremos dizendo que j + 1 = j + 1, o que ´e ´obvio.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Passo: Vejamos agora j + 1.
Se j + 1 for primo, o resultado est´a correto.
Se n˜ao for primo, ent˜ao podemos escrevˆe-lo como
j + 1 = ab (pois, do contr´ario, j + 1 seria primo)
Nesse caso, 1 < a < j + 1 e 1 < b < j + 1, pois sua
multiplica¸c˜ao n˜ao pode passar de j + 1, e se um deles for 1
estaremos dizendo que j + 1 = j + 1, o que ´e ´obvio.
Isso equivale a dizer que 2 ≤ a ≤ j e 2 ≤ b ≤ j, pois a e b
s˜ao inteiros
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Passo: Vejamos agora j + 1.
Se j + 1 for primo, o resultado est´a correto.
Se n˜ao for primo, ent˜ao podemos escrevˆe-lo como
j + 1 = ab (pois, do contr´ario, j + 1 seria primo)
Nesse caso, 1 < a < j + 1 e 1 < b < j + 1, pois sua
multiplica¸c˜ao n˜ao pode passar de j + 1, e se um deles for 1
estaremos dizendo que j + 1 = j + 1, o que ´e ´obvio.
Isso equivale a dizer que 2 ≤ a ≤ j e 2 ≤ b ≤ j, pois a e b
s˜ao inteiros
Aplicando-se a hip´otese de indu¸c˜ao em a, temos que ele ´e
primo ou o produto de primos. O mesmo vale para b.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Passo: Vejamos agora j + 1.
Se j + 1 for primo, o resultado est´a correto.
Se n˜ao for primo, ent˜ao podemos escrevˆe-lo como
j + 1 = ab (pois, do contr´ario, j + 1 seria primo)
Nesse caso, 1 < a < j + 1 e 1 < b < j + 1, pois sua
multiplica¸c˜ao n˜ao pode passar de j + 1, e se um deles for 1
estaremos dizendo que j + 1 = j + 1, o que ´e ´obvio.
Isso equivale a dizer que 2 ≤ a ≤ j e 2 ≤ b ≤ j, pois a e b
s˜ao inteiros
Aplicando-se a hip´otese de indu¸c˜ao em a, temos que ele ´e
primo ou o produto de primos. O mesmo vale para b.
Assim, ab ´e o produto de primos (2 ou mais, nesse caso), e
a demonstra¸c˜ao se completa
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Note que, nesse exemplo, n˜ao conseguimos provar P
usando apenas j
Precisamos apelar a dois inteiros arbitr´arios a e b, entre 2 e j
Como n˜ao sabemos quais usaremos, tivemos que assumir
que a hip´otese valia para todos os inteiros entre 2 e j
´E ent˜ao nisso que reside a for¸ca dessa indu¸c˜ao
N˜ao ficamos presos a j, mas sim a um intervalo de valores,
nos dando mais possibilidades para a demonstra¸c˜ao
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 32 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Prove que qualquer valor postal maior ou igual a
oito unidades monet´arias pode ser obtido usando-se
apenas selos com valores de 3 e 5
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Prove que qualquer valor postal maior ou igual a
oito unidades monet´arias pode ser obtido usando-se
apenas selos com valores de 3 e 5
Base: P8 = 8 = 3 + 5
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Prove que qualquer valor postal maior ou igual a
oito unidades monet´arias pode ser obtido usando-se
apenas selos com valores de 3 e 5
Base: P8 = 8 = 3 + 5 (ok)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Prove que qualquer valor postal maior ou igual a
oito unidades monet´arias pode ser obtido usando-se
apenas selos com valores de 3 e 5
Base: P8 = 8 = 3 + 5 (ok)
Hip´otese: Dado um inteiro arbitr´ario j, Pi ´e verdadeira para
todo 8 ≤ i ≤ j
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Prove que qualquer valor postal maior ou igual a
oito unidades monet´arias pode ser obtido usando-se
apenas selos com valores de 3 e 5
Base: P8 = 8 = 3 + 5 (ok)
Hip´otese: Dado um inteiro arbitr´ario j, Pi ´e verdadeira para
todo 8 ≤ i ≤ j
Passo: Por conveniˆencia, vamos demonstrar outros 2
resultados:
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Prove que qualquer valor postal maior ou igual a
oito unidades monet´arias pode ser obtido usando-se
apenas selos com valores de 3 e 5
Base: P8 = 8 = 3 + 5 (ok)
Hip´otese: Dado um inteiro arbitr´ario j, Pi ´e verdadeira para
todo 8 ≤ i ≤ j
Passo: Por conveniˆencia, vamos demonstrar outros 2
resultados:
P9 = 3 + 3 + 3 (ok)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Prove que qualquer valor postal maior ou igual a
oito unidades monet´arias pode ser obtido usando-se
apenas selos com valores de 3 e 5
Base: P8 = 8 = 3 + 5 (ok)
Hip´otese: Dado um inteiro arbitr´ario j, Pi ´e verdadeira para
todo 8 ≤ i ≤ j
Passo: Por conveniˆencia, vamos demonstrar outros 2
resultados:
P9 = 3 + 3 + 3 (ok)
P10 = 5 + 5 (ok)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Passo (cont.): Podemos ent˜ao assumir que j + 1 ≥ 11
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 34 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Precisamos escrever
isso em termos de
algo no intervalo
8 ≤ i ≤ j
Passo (cont.): Podemos ent˜ao assumir que j + 1 ≥ 11
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 34 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Precisamos escrever
isso em termos de
algo no intervalo
8 ≤ i ≤ j
Passo (cont.): Podemos ent˜ao assumir que j + 1 ≥ 11
Temos ent˜ao que (j + 1) − 3 ≥ 11 − 3
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 34 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Precisamos escrever
isso em termos de
algo no intervalo
8 ≤ i ≤ j
Passo (cont.): Podemos ent˜ao assumir que j + 1 ≥ 11
Temos ent˜ao que (j + 1) − 3 ≥ 11 − 3
⇒ j − 2 ≥ 8
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 34 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Passo (cont.): Podemos ent˜ao assumir que j + 1 ≥ 11
Temos ent˜ao que (j + 1) − 3 ≥ 11 − 3
⇒ j − 2 ≥ 8
Como 8 ≤ j − 2 < j ent˜ao, pela hip´otese de indu¸c˜ao, Pj−2 ´e
verdadeira, e posso escrever j − 2 como uma combina¸c˜ao de
3 e 5
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 34 / 39
Indu¸c˜ao Finita (Forte) – Exemplo
Passo (cont.): Podemos ent˜ao assumir que j + 1 ≥ 11
Temos ent˜ao que (j + 1) − 3 ≥ 11 − 3
⇒ j − 2 ≥ 8
Como 8 ≤ j − 2 < j ent˜ao, pela hip´otese de indu¸c˜ao, Pj−2 ´e
verdadeira, e posso escrever j − 2 como uma combina¸c˜ao de
3 e 5
Como j + 1 = (j − 2) + 3, ent˜ao Pj+1 = Pj−2 + 3, e como
Pj−2 ´e uma combina¸c˜ao de 3 e 5, adicionar 3 faz com que
Pj+1 tamb´em o seja.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 34 / 39
Indu¸c˜ao Finita
Varia¸c˜oes
Inicialmente, vimos casos em que:
Mostramos Pk, assumimos Pj , j ≥ k e mostramos que
Pj → Pj+1 (fraca)
Mostramos Pk, assumimos Pk, Pk+1, . . . , Pj , j ≥ k e
mostramos que Pj → Pj+1 (forte)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 35 / 39
Indu¸c˜ao Finita
Varia¸c˜oes
Inicialmente, vimos casos em que:
Mostramos Pk, assumimos Pj , j ≥ k e mostramos que
Pj → Pj+1 (fraca)
Mostramos Pk, assumimos Pk, Pk+1, . . . , Pj , j ≥ k e
mostramos que Pj → Pj+1 (forte)
Caso cl´assico
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 35 / 39
Indu¸c˜ao Finita
Varia¸c˜oes
Contudo, podemos ampliar a base, por exemplo:
Mostramos Pk, Pk+1, Pk+2, assumimos Pj , j ≥ k + 2 e
mostramos que Pj → Pj+1 (fraca)
Mostramos Pk, Pk+1, Pk+2, assumimos
Pk+2, Pk+3, . . . , Pj , j ≥ k + 2 e mostramos que Pj → Pj+1
(forte)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 36 / 39
Indu¸c˜ao Finita
Varia¸c˜oes
Contudo, podemos ampliar a base, por exemplo:
Mostramos Pk, Pk+1, Pk+2, assumimos Pj , j ≥ k + 2 e
mostramos que Pj → Pj+1 (fraca)
Mostramos Pk, Pk+1, Pk+2, assumimos
Pk+2, Pk+3, . . . , Pj , j ≥ k + 2 e mostramos que Pj → Pj+1
(forte)
Ou seja, “esticamos” a base at´e um valor que nos
ajude na prova, como no ´ultimo exemplo visto
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 36 / 39
Indu¸c˜ao Finita
Varia¸c˜oes
E nada nos impede de fazer:
Mostramos Pk, assumimos Pj−1, j − 1 ≥ k e mostramos que
Pj−1 → Pj (fraca)
Mostramos Pk, assumimos Pk, Pk+1, . . . , Pj−1, j − 1 ≥ k e
mostramos que Pj−1 → Pj (forte)
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 37 / 39
Indu¸c˜ao Finita
Varia¸c˜oes
E nada nos impede de fazer:
Mostramos Pk, assumimos Pj−1, j − 1 ≥ k e mostramos que
Pj−1 → Pj (fraca)
Mostramos Pk, assumimos Pk, Pk+1, . . . , Pj−1, j − 1 ≥ k e
mostramos que Pj−1 → Pj (forte)
Nesse caso, apenas fizemos uma mudan¸ca de
vari´avel, que pode vir a facilitar a prova matem´atica.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 37 / 39
Referˆencias
Gersting, Judith L. Fundamentos Matem´aticos para a Ciˆencia
da Computa¸c˜ao. 3a ed. LTC. 1993.
Manber, Udi. Introduction to Algorithms: A Creative
Approach. Addison-Wesley. 1989.
Ziviani, Nivio. Projeto de Algoritmos: com implementa¸c˜oes
em Java e C++. Cengage. 2007.
Manber, Udi. Using Induction to Design Algorithms.
Communications of the ACM, 31(11). 1988.
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 38 / 39
Referˆencias
https://pt.wikipedia.org/wiki/Abdu¸c˜ao (l´ogica filos´ofica)
https://pt.wikipedia.org/wiki/M´etodo dedutivo
https://pt.wikipedia.org/wiki/M´etodo indutivo
Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 39 / 39

Mais conteúdo relacionado

Mais procurados

(ACH2002) Introdução à Análise de Algoritmos - Aula 13
(ACH2002) Introdução à Análise de Algoritmos - Aula 13(ACH2002) Introdução à Análise de Algoritmos - Aula 13
(ACH2002) Introdução à Análise de Algoritmos - Aula 13Norton Trevisan Roman
 
(ACH2002) Introdução à Análise de Algoritmos - Aula 08
(ACH2002) Introdução à Análise de Algoritmos - Aula 08(ACH2002) Introdução à Análise de Algoritmos - Aula 08
(ACH2002) Introdução à Análise de Algoritmos - Aula 08Norton Trevisan Roman
 
(ACH2002) Introdução à Análise de Algoritmos - Aula 18
(ACH2002) Introdução à Análise de Algoritmos - Aula 18(ACH2002) Introdução à Análise de Algoritmos - Aula 18
(ACH2002) Introdução à Análise de Algoritmos - Aula 18Norton Trevisan Roman
 
Apresentacao N P Completude Loiane
Apresentacao  N P Completude  LoianeApresentacao  N P Completude  Loiane
Apresentacao N P Completude LoianeLoiane Groner
 
Matemática Computacional
Matemática ComputacionalMatemática Computacional
Matemática ComputacionalRicardo Terra
 
Lógica e algoritmos
Lógica e algoritmosLógica e algoritmos
Lógica e algoritmosJocelma Rios
 

Mais procurados (7)

(ACH2002) Introdução à Análise de Algoritmos - Aula 13
(ACH2002) Introdução à Análise de Algoritmos - Aula 13(ACH2002) Introdução à Análise de Algoritmos - Aula 13
(ACH2002) Introdução à Análise de Algoritmos - Aula 13
 
(ACH2002) Introdução à Análise de Algoritmos - Aula 08
(ACH2002) Introdução à Análise de Algoritmos - Aula 08(ACH2002) Introdução à Análise de Algoritmos - Aula 08
(ACH2002) Introdução à Análise de Algoritmos - Aula 08
 
(ACH2002) Introdução à Análise de Algoritmos - Aula 18
(ACH2002) Introdução à Análise de Algoritmos - Aula 18(ACH2002) Introdução à Análise de Algoritmos - Aula 18
(ACH2002) Introdução à Análise de Algoritmos - Aula 18
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Apresentacao N P Completude Loiane
Apresentacao  N P Completude  LoianeApresentacao  N P Completude  Loiane
Apresentacao N P Completude Loiane
 
Matemática Computacional
Matemática ComputacionalMatemática Computacional
Matemática Computacional
 
Lógica e algoritmos
Lógica e algoritmosLógica e algoritmos
Lógica e algoritmos
 

Semelhante a Algoritmos Indução Forte Fraca

(ACH2044) Inteligência Artificial - Aula 09
(ACH2044) Inteligência Artificial - Aula 09(ACH2044) Inteligência Artificial - Aula 09
(ACH2044) Inteligência Artificial - Aula 09Norton Trevisan Roman
 
[Pt br] - 36751 - mitre att&amp;ck - azure
[Pt br] - 36751 - mitre att&amp;ck - azure[Pt br] - 36751 - mitre att&amp;ck - azure
[Pt br] - 36751 - mitre att&amp;ck - azureEnrique Gustavo Dutra
 
Machine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ceMachine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ceLuca Bastos
 
(ACH2001) Introdução à Programação - Aula 13
(ACH2001) Introdução à Programação - Aula 13(ACH2001) Introdução à Programação - Aula 13
(ACH2001) Introdução à Programação - Aula 13Norton Trevisan Roman
 
TDC2016SP - Trilha Data Science
TDC2016SP - Trilha Data ScienceTDC2016SP - Trilha Data Science
TDC2016SP - Trilha Data Sciencetdc-globalcode
 
TDC2018FLN | Trilha Data Science - Explainable Machine Learning
TDC2018FLN | Trilha Data Science - Explainable Machine LearningTDC2018FLN | Trilha Data Science - Explainable Machine Learning
TDC2018FLN | Trilha Data Science - Explainable Machine Learningtdc-globalcode
 
Algoritmos e Programação_01
Algoritmos e Programação_01Algoritmos e Programação_01
Algoritmos e Programação_01Gabriel Demétrio
 
Logica programacao estruturadados-INFORMATICA PARA CONCURSO
Logica programacao estruturadados-INFORMATICA PARA CONCURSOLogica programacao estruturadados-INFORMATICA PARA CONCURSO
Logica programacao estruturadados-INFORMATICA PARA CONCURSOEDILENE CABRAL
 
(ACH2002) Introdução à Análise de Algoritmos - Aula 12
(ACH2002) Introdução à Análise de Algoritmos - Aula 12(ACH2002) Introdução à Análise de Algoritmos - Aula 12
(ACH2002) Introdução à Análise de Algoritmos - Aula 12Norton Trevisan Roman
 
TDC2018SP | Trilha Arduino, Makers e Impressao 3D - Math Blaster: Um artefato...
TDC2018SP | Trilha Arduino, Makers e Impressao 3D - Math Blaster: Um artefato...TDC2018SP | Trilha Arduino, Makers e Impressao 3D - Math Blaster: Um artefato...
TDC2018SP | Trilha Arduino, Makers e Impressao 3D - Math Blaster: Um artefato...tdc-globalcode
 
Conceitos básicos de AEDS
Conceitos básicos de AEDSConceitos básicos de AEDS
Conceitos básicos de AEDSPablo Silva
 
(ACH2044) Inteligência Artificial - Aula 24
(ACH2044) Inteligência Artificial - Aula 24(ACH2044) Inteligência Artificial - Aula 24
(ACH2044) Inteligência Artificial - Aula 24Norton Trevisan Roman
 
Contexto e Aplicações Dante - vol 3.pdf
Contexto e Aplicações Dante - vol 3.pdfContexto e Aplicações Dante - vol 3.pdf
Contexto e Aplicações Dante - vol 3.pdfCristiane Silva
 
Primeira aula sp1
Primeira aula sp1Primeira aula sp1
Primeira aula sp1gastaovalle
 
python-agil-IVEnGitec
python-agil-IVEnGitecpython-agil-IVEnGitec
python-agil-IVEnGitecRamiro Luz
 

Semelhante a Algoritmos Indução Forte Fraca (17)

(ACH2044) Inteligência Artificial - Aula 09
(ACH2044) Inteligência Artificial - Aula 09(ACH2044) Inteligência Artificial - Aula 09
(ACH2044) Inteligência Artificial - Aula 09
 
[Pt br] - 36751 - mitre att&amp;ck - azure
[Pt br] - 36751 - mitre att&amp;ck - azure[Pt br] - 36751 - mitre att&amp;ck - azure
[Pt br] - 36751 - mitre att&amp;ck - azure
 
Lógica de Programação
Lógica de ProgramaçãoLógica de Programação
Lógica de Programação
 
Machine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ceMachine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ce
 
(ACH2001) Introdução à Programação - Aula 13
(ACH2001) Introdução à Programação - Aula 13(ACH2001) Introdução à Programação - Aula 13
(ACH2001) Introdução à Programação - Aula 13
 
TDC2016SP - Trilha Data Science
TDC2016SP - Trilha Data ScienceTDC2016SP - Trilha Data Science
TDC2016SP - Trilha Data Science
 
TDC2018FLN | Trilha Data Science - Explainable Machine Learning
TDC2018FLN | Trilha Data Science - Explainable Machine LearningTDC2018FLN | Trilha Data Science - Explainable Machine Learning
TDC2018FLN | Trilha Data Science - Explainable Machine Learning
 
Algoritmos e Programação_01
Algoritmos e Programação_01Algoritmos e Programação_01
Algoritmos e Programação_01
 
Fórum respostas
Fórum  respostasFórum  respostas
Fórum respostas
 
Logica programacao estruturadados-INFORMATICA PARA CONCURSO
Logica programacao estruturadados-INFORMATICA PARA CONCURSOLogica programacao estruturadados-INFORMATICA PARA CONCURSO
Logica programacao estruturadados-INFORMATICA PARA CONCURSO
 
(ACH2002) Introdução à Análise de Algoritmos - Aula 12
(ACH2002) Introdução à Análise de Algoritmos - Aula 12(ACH2002) Introdução à Análise de Algoritmos - Aula 12
(ACH2002) Introdução à Análise de Algoritmos - Aula 12
 
TDC2018SP | Trilha Arduino, Makers e Impressao 3D - Math Blaster: Um artefato...
TDC2018SP | Trilha Arduino, Makers e Impressao 3D - Math Blaster: Um artefato...TDC2018SP | Trilha Arduino, Makers e Impressao 3D - Math Blaster: Um artefato...
TDC2018SP | Trilha Arduino, Makers e Impressao 3D - Math Blaster: Um artefato...
 
Conceitos básicos de AEDS
Conceitos básicos de AEDSConceitos básicos de AEDS
Conceitos básicos de AEDS
 
(ACH2044) Inteligência Artificial - Aula 24
(ACH2044) Inteligência Artificial - Aula 24(ACH2044) Inteligência Artificial - Aula 24
(ACH2044) Inteligência Artificial - Aula 24
 
Contexto e Aplicações Dante - vol 3.pdf
Contexto e Aplicações Dante - vol 3.pdfContexto e Aplicações Dante - vol 3.pdf
Contexto e Aplicações Dante - vol 3.pdf
 
Primeira aula sp1
Primeira aula sp1Primeira aula sp1
Primeira aula sp1
 
python-agil-IVEnGitec
python-agil-IVEnGitecpython-agil-IVEnGitec
python-agil-IVEnGitec
 

Mais de Norton Trevisan Roman

(ACH2044) Inteligência Artificial - Aula 23
(ACH2044) Inteligência Artificial - Aula 23(ACH2044) Inteligência Artificial - Aula 23
(ACH2044) Inteligência Artificial - Aula 23Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 22
(ACH2044) Inteligência Artificial - Aula 22(ACH2044) Inteligência Artificial - Aula 22
(ACH2044) Inteligência Artificial - Aula 22Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 21
(ACH2044) Inteligência Artificial - Aula 21(ACH2044) Inteligência Artificial - Aula 21
(ACH2044) Inteligência Artificial - Aula 21Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 20
(ACH2044) Inteligência Artificial - Aula 20(ACH2044) Inteligência Artificial - Aula 20
(ACH2044) Inteligência Artificial - Aula 20Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 19
(ACH2044) Inteligência Artificial - Aula 19(ACH2044) Inteligência Artificial - Aula 19
(ACH2044) Inteligência Artificial - Aula 19Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 18
(ACH2044) Inteligência Artificial - Aula 18(ACH2044) Inteligência Artificial - Aula 18
(ACH2044) Inteligência Artificial - Aula 18Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 17
(ACH2044) Inteligência Artificial - Aula 17(ACH2044) Inteligência Artificial - Aula 17
(ACH2044) Inteligência Artificial - Aula 17Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 16
(ACH2044) Inteligência Artificial - Aula 16(ACH2044) Inteligência Artificial - Aula 16
(ACH2044) Inteligência Artificial - Aula 16Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 15
(ACH2044) Inteligência Artificial - Aula 15(ACH2044) Inteligência Artificial - Aula 15
(ACH2044) Inteligência Artificial - Aula 15Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 14
(ACH2044) Inteligência Artificial - Aula 14(ACH2044) Inteligência Artificial - Aula 14
(ACH2044) Inteligência Artificial - Aula 14Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 13
(ACH2044) Inteligência Artificial - Aula 13(ACH2044) Inteligência Artificial - Aula 13
(ACH2044) Inteligência Artificial - Aula 13Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 12
(ACH2044) Inteligência Artificial - Aula 12(ACH2044) Inteligência Artificial - Aula 12
(ACH2044) Inteligência Artificial - Aula 12Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 11
(ACH2044) Inteligência Artificial - Aula 11(ACH2044) Inteligência Artificial - Aula 11
(ACH2044) Inteligência Artificial - Aula 11Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 10
(ACH2044) Inteligência Artificial - Aula 10(ACH2044) Inteligência Artificial - Aula 10
(ACH2044) Inteligência Artificial - Aula 10Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 08
(ACH2044) Inteligência Artificial - Aula 08(ACH2044) Inteligência Artificial - Aula 08
(ACH2044) Inteligência Artificial - Aula 08Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 07
(ACH2044) Inteligência Artificial - Aula 07(ACH2044) Inteligência Artificial - Aula 07
(ACH2044) Inteligência Artificial - Aula 07Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 06
(ACH2044) Inteligência Artificial - Aula 06(ACH2044) Inteligência Artificial - Aula 06
(ACH2044) Inteligência Artificial - Aula 06Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 05
(ACH2044) Inteligência Artificial - Aula 05(ACH2044) Inteligência Artificial - Aula 05
(ACH2044) Inteligência Artificial - Aula 05Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 04
(ACH2044) Inteligência Artificial - Aula 04(ACH2044) Inteligência Artificial - Aula 04
(ACH2044) Inteligência Artificial - Aula 04Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 03
(ACH2044) Inteligência Artificial - Aula 03(ACH2044) Inteligência Artificial - Aula 03
(ACH2044) Inteligência Artificial - Aula 03Norton Trevisan Roman
 

Mais de Norton Trevisan Roman (20)

(ACH2044) Inteligência Artificial - Aula 23
(ACH2044) Inteligência Artificial - Aula 23(ACH2044) Inteligência Artificial - Aula 23
(ACH2044) Inteligência Artificial - Aula 23
 
(ACH2044) Inteligência Artificial - Aula 22
(ACH2044) Inteligência Artificial - Aula 22(ACH2044) Inteligência Artificial - Aula 22
(ACH2044) Inteligência Artificial - Aula 22
 
(ACH2044) Inteligência Artificial - Aula 21
(ACH2044) Inteligência Artificial - Aula 21(ACH2044) Inteligência Artificial - Aula 21
(ACH2044) Inteligência Artificial - Aula 21
 
(ACH2044) Inteligência Artificial - Aula 20
(ACH2044) Inteligência Artificial - Aula 20(ACH2044) Inteligência Artificial - Aula 20
(ACH2044) Inteligência Artificial - Aula 20
 
(ACH2044) Inteligência Artificial - Aula 19
(ACH2044) Inteligência Artificial - Aula 19(ACH2044) Inteligência Artificial - Aula 19
(ACH2044) Inteligência Artificial - Aula 19
 
(ACH2044) Inteligência Artificial - Aula 18
(ACH2044) Inteligência Artificial - Aula 18(ACH2044) Inteligência Artificial - Aula 18
(ACH2044) Inteligência Artificial - Aula 18
 
(ACH2044) Inteligência Artificial - Aula 17
(ACH2044) Inteligência Artificial - Aula 17(ACH2044) Inteligência Artificial - Aula 17
(ACH2044) Inteligência Artificial - Aula 17
 
(ACH2044) Inteligência Artificial - Aula 16
(ACH2044) Inteligência Artificial - Aula 16(ACH2044) Inteligência Artificial - Aula 16
(ACH2044) Inteligência Artificial - Aula 16
 
(ACH2044) Inteligência Artificial - Aula 15
(ACH2044) Inteligência Artificial - Aula 15(ACH2044) Inteligência Artificial - Aula 15
(ACH2044) Inteligência Artificial - Aula 15
 
(ACH2044) Inteligência Artificial - Aula 14
(ACH2044) Inteligência Artificial - Aula 14(ACH2044) Inteligência Artificial - Aula 14
(ACH2044) Inteligência Artificial - Aula 14
 
(ACH2044) Inteligência Artificial - Aula 13
(ACH2044) Inteligência Artificial - Aula 13(ACH2044) Inteligência Artificial - Aula 13
(ACH2044) Inteligência Artificial - Aula 13
 
(ACH2044) Inteligência Artificial - Aula 12
(ACH2044) Inteligência Artificial - Aula 12(ACH2044) Inteligência Artificial - Aula 12
(ACH2044) Inteligência Artificial - Aula 12
 
(ACH2044) Inteligência Artificial - Aula 11
(ACH2044) Inteligência Artificial - Aula 11(ACH2044) Inteligência Artificial - Aula 11
(ACH2044) Inteligência Artificial - Aula 11
 
(ACH2044) Inteligência Artificial - Aula 10
(ACH2044) Inteligência Artificial - Aula 10(ACH2044) Inteligência Artificial - Aula 10
(ACH2044) Inteligência Artificial - Aula 10
 
(ACH2044) Inteligência Artificial - Aula 08
(ACH2044) Inteligência Artificial - Aula 08(ACH2044) Inteligência Artificial - Aula 08
(ACH2044) Inteligência Artificial - Aula 08
 
(ACH2044) Inteligência Artificial - Aula 07
(ACH2044) Inteligência Artificial - Aula 07(ACH2044) Inteligência Artificial - Aula 07
(ACH2044) Inteligência Artificial - Aula 07
 
(ACH2044) Inteligência Artificial - Aula 06
(ACH2044) Inteligência Artificial - Aula 06(ACH2044) Inteligência Artificial - Aula 06
(ACH2044) Inteligência Artificial - Aula 06
 
(ACH2044) Inteligência Artificial - Aula 05
(ACH2044) Inteligência Artificial - Aula 05(ACH2044) Inteligência Artificial - Aula 05
(ACH2044) Inteligência Artificial - Aula 05
 
(ACH2044) Inteligência Artificial - Aula 04
(ACH2044) Inteligência Artificial - Aula 04(ACH2044) Inteligência Artificial - Aula 04
(ACH2044) Inteligência Artificial - Aula 04
 
(ACH2044) Inteligência Artificial - Aula 03
(ACH2044) Inteligência Artificial - Aula 03(ACH2044) Inteligência Artificial - Aula 03
(ACH2044) Inteligência Artificial - Aula 03
 

Último

Bullying - Texto e cruzadinha
Bullying        -     Texto e cruzadinhaBullying        -     Texto e cruzadinha
Bullying - Texto e cruzadinhaMary Alvarenga
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfFernandaMota99
 
VARIEDADES LINGUÍSTICAS - 1. pptx
VARIEDADES        LINGUÍSTICAS - 1. pptxVARIEDADES        LINGUÍSTICAS - 1. pptx
VARIEDADES LINGUÍSTICAS - 1. pptxMarlene Cunhada
 
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdfPortfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdfjanainadfsilva
 
A poesia - Definições e Característicass
A poesia - Definições e CaracterísticassA poesia - Definições e Característicass
A poesia - Definições e CaracterísticassAugusto Costa
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - DissertaçãoMaiteFerreira4
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfPROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfMarianaMoraesMathias
 
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumGÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumAugusto Costa
 
Libras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS MemoriaLibras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS Memorialgrecchi
 
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptxPLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptxSamiraMiresVieiradeM
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxferreirapriscilla84
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxTainTorres4
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 

Último (20)

Bullying - Texto e cruzadinha
Bullying        -     Texto e cruzadinhaBullying        -     Texto e cruzadinha
Bullying - Texto e cruzadinha
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdf
 
VARIEDADES LINGUÍSTICAS - 1. pptx
VARIEDADES        LINGUÍSTICAS - 1. pptxVARIEDADES        LINGUÍSTICAS - 1. pptx
VARIEDADES LINGUÍSTICAS - 1. pptx
 
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdfPortfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
 
A poesia - Definições e Característicass
A poesia - Definições e CaracterísticassA poesia - Definições e Característicass
A poesia - Definições e Característicass
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - Dissertação
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfPROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
 
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumGÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
 
Libras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS MemoriaLibras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS Memoria
 
CINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULACINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULA
 
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptxPLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptx
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 

Algoritmos Indução Forte Fraca

  • 1. Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte Norton Trevisan Roman norton@usp.br 8 de agosto de 2018 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 1 / 39
  • 2. Indu¸c˜ao T´ecnica importante para projeto de algoritmos Ferramenta ´util para provar afirma¸c˜oes quanto `a eficiˆencia e corre¸c˜ao de algoritmos Defini¸c˜ao Consistem em inferir uma regra geral a partir de instˆancias particulares, indo ent˜ao do efeito `as causas, das consequˆencias ao princ´ıpio, da experiˆencia `a teoria. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 2 / 39
  • 3. Formas de Inferˆencia Dedutiva Consiste em chegar a uma conclus˜ao a partir de premissas (regras e fatos) A conclus˜ao deve necessariamente ser verdadeira, caso todas as premissas sejam verdadeiras Ex: Premissa: se chover, a estrada estar´a molhada Premissa: choveu Dedu¸c˜ao: a estrada est´a molhada Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 3 / 39
  • 4. Formas de Inferˆencia Indutiva Consiste de, ap´os considerar um n´umero suficiente de exemplos, concluir uma regra geral Constr´oi uma conclus˜ao baseada em experiˆencia Ex: Premissas: todas as vezes em que vi chover, a estrada estava molhada Indu¸c˜ao: se chover, a estrada estar´a molhada Naturalmente, a conclus˜ao n˜ao ´e definitiva, pois cont´em informa¸c˜ao (de que n˜ao h´a chuva sem estrada molhada) n˜ao dada pelas premissas Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 4 / 39
  • 5. Formas de Inferˆencia Abdutiva Consiste de encontrar a hip´otese mais prov´avel para uma determinada premissa observada Ex: Premissa: se chover, a estrada estar´a molhada Premissa: a estrada est´a molhada Abdu¸c˜ao: (provavelmente) choveu Trata-se da inferˆencia a favor da melhor explica¸c˜ao Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 5 / 39
  • 6. Formas de Inferˆencia Dedu¸c˜ao →A B Conhe¸co a regra Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 6 / 39
  • 7. Formas de Inferˆencia Dedu¸c˜ao →A B Sei que A ´e verdade Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 6 / 39
  • 8. Formas de Inferˆencia Dedu¸c˜ao →A B Ent˜ao infiro que B ´e verdade Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 6 / 39
  • 9. Formas de Inferˆencia Indu¸c˜ao B Por v´arias vezes, vi B Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 7 / 39
  • 10. Formas de Inferˆencia Indu¸c˜ao A B em decorrˆencia de A Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 7 / 39
  • 11. Formas de Inferˆencia Indu¸c˜ao →A B Infiro ent˜ao que provavelmente A → B (incerteza) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 7 / 39
  • 12. Formas de Inferˆencia Abdu¸c˜ao →A B Conhe¸co a regra Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 8 / 39
  • 13. Formas de Inferˆencia Abdu¸c˜ao →A B Sei que B ´e verdade Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 8 / 39
  • 14. Formas de Inferˆencia Abdu¸c˜ao →A B Ent˜ao infiro que A ´e provavelmente verdade (incerteza) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 8 / 39
  • 15. Inferˆencia e Algoritmos E o que isso tudo tem a ver com algoritmos? Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 9 / 39
  • 16. Inferˆencia e Algoritmos E o que isso tudo tem a ver com algoritmos? Vejamos como geralmente criamos algoritmos para um determinado problema: Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 9 / 39
  • 17. Inferˆencia e Algoritmos E o que isso tudo tem a ver com algoritmos? Vejamos como geralmente criamos algoritmos para um determinado problema: Olhamos alguns exemplos de entrada + sa´ıda esperada Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 9 / 39
  • 18. Inferˆencia e Algoritmos E o que isso tudo tem a ver com algoritmos? Vejamos como geralmente criamos algoritmos para um determinado problema: Olhamos alguns exemplos de entrada + sa´ıda esperada Criamos um procedimento que, para esses casos, fa¸ca com que a entrada leve `a sa´ıda Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 9 / 39
  • 19. Inferˆencia e Algoritmos E o que isso tudo tem a ver com algoritmos? Vejamos como geralmente criamos algoritmos para um determinado problema: Olhamos alguns exemplos de entrada + sa´ıda esperada Criamos um procedimento que, para esses casos, fa¸ca com que a entrada leve `a sa´ıda Naturalmente, isso ocorre para problemas ainda n˜ao especificados matematicamente Do contr´ario, basta seguirmos a especifica¸c˜ao (f´ormula) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 9 / 39
  • 20. Inferˆencia e Algoritmos Mais de perto... Olhamos alguns exemplos de entrada + sa´ıda esperada Criamos um procedimento que, para esses casos, fa¸ca com que a entrada leve `a sa´ıda Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 10 / 39
  • 21. Inferˆencia e Algoritmos Mais de perto... Olhamos alguns exemplos de entrada + sa´ıda esperada Criamos um procedimento que, para esses casos, fa¸ca com que a entrada leve `a sa´ıda Ou seja... A partir de N pares {[Ei, Si], 1 ≤ i ≤ N} Inferimos que, via nosso procedimento P, {Ei P −→ Si, ∀[Ei, Si]} Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 10 / 39
  • 22. Inferˆencia e Algoritmos Nossa inferˆencia: A partir de N pares {[Ei, Si], 1 ≤ i ≤ N} Inferimos que, via nosso procedimento P, {Ei P −→ Si, ∀[Ei, Si]} Que tipo de racioc´ınio ´e esse? ( ) Dedutivo ( ) Indutivo ( ) Abdutivo Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 11 / 39
  • 23. Inferˆencia e Algoritmos Nossa inferˆencia: A partir de N pares {[Ei, Si], 1 ≤ i ≤ N} Inferimos que, via nosso procedimento P, {Ei P −→ Si, ∀[Ei, Si]} Que tipo de racioc´ınio ´e esse? ( ) Dedutivo (×) Indutivo ( ) Abdutivo Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 11 / 39
  • 24. Inferˆencia e Algoritmos S´o que o racioc´ınio indutivo ´e incerto. N˜ao podemos confiar plenamente nele. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 12 / 39
  • 25. Inferˆencia e Algoritmos S´o que o racioc´ınio indutivo ´e incerto. N˜ao podemos confiar plenamente nele. Temos ent˜ao que achar uma forma de aplicar o racioc´ınio dedutivo Provando assim que a conjectura Ei P −→ Si ´e verdadeira para todo [Ei , Si ] Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 12 / 39
  • 26. Inferˆencia e Algoritmos S´o que o racioc´ınio indutivo ´e incerto. N˜ao podemos confiar plenamente nele. Temos ent˜ao que achar uma forma de aplicar o racioc´ınio dedutivo Provando assim que a conjectura Ei P −→ Si ´e verdadeira para todo [Ei , Si ] Embora possamos buscar um contra-exemplo para a conjectura, provando sua falsidade, provar sua veracidade ´e mais dif´ıcil Pois, a menos que possamos testar todos os exemplos poss´ıveis, ainda restar´a d´uvida Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 12 / 39
  • 27. Indu¸c˜ao Finita Nesse sentido, uma t´ecnica que nos permite provar nossa conjectura ´e a Indu¸c˜ao Finita. Princ´ıpio da Indu¸c˜ao Finita (Fraca) Sejam Pn afirma¸c˜oes associadas a cada inteiro positivo n ≥ k. Se Pk for verdadeira e, para cada inteiro positivo j ≥ k pudermos mostrar que, se Pj for verdadeira ent˜ao Pj+1 tamb´em o ser´a, ent˜ao Pn ser´a verdadeira para todo inteiro n ≥ k. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 13 / 39
  • 28. Indu¸c˜ao Finita E, formalmente... Princ´ıpio da Indu¸c˜ao Finita (Fraca) Para provarmos que Pn ´e verdadeira para todo n ≥ k, teremos que provar que: 1 P ´e verdadeira para algum k ≥ 1 (Pk ´e verdadeira) 2 Para todo j ≥ k, se P for verdadeira para j ent˜ao tamb´em o ser´a para j + 1 (Pj ⇒ Pj+1) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 14 / 39
  • 29. Indu¸c˜ao Finita (Fraca) Em outras palavras... 1 Mostramos que P ´e verdadeira para um determinado k ≥ 1 (normalmente, k = 1) 2 Assumimos que P ´e verdadeira para um inteiro arbitr´ario j ≥ k (j = k j´a provamos) 3 Baseados nessa hip´otese, mostramos que Pj+1 ´e verdadeira, ou seja, provamos que P ´e verdadeira para j + 1 E assim conseguimos mostrar que P ´e verdadeira para qualquer inteiro ≥ k Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 15 / 39
  • 30. Indu¸c˜ao Finita (Fraca) Partes do Processo de Indu¸c˜ao Finita Base: demonstrar que P1 (ou Pk, para um determinado k ≥ 1) ´e verdadeira (passo 1 no slide anterior) Hip´otese de indu¸c˜ao: assumir que Pj ´e verdadeira Passo indutivo: estabelecer que Pj → Pj+1 ´e verdadeira (passo 3) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 16 / 39
  • 31. Indu¸c˜ao Finita (Fraca) E por que isso funciona? Demonstramos que P vale para um determinado k Demonstramos que o fato de P valer para algum j ≥ k arbitr´ario implica valer para j + 1 Ent˜ao segue que P valendo para k faz com que ela valha para k + 1 tamb´em (Pk+1 ´e verdadeiro) P valer para k + 1, por sua vez, implica valer para k + 2, e assim por diante... Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 17 / 39
  • 32. Indu¸c˜ao Finita (Fraca) E por que isso funciona? Temos ent˜ao um efeito domin´o: Pk Pk+1 Pk+2 . . . Pj Pj+1 . . . Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
  • 33. Indu¸c˜ao Finita (Fraca) E por que isso funciona? Temos ent˜ao um efeito domin´o: Pk Pk+1 Pk+2 . . . Pj Pj+1 . . . Provamos a base Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
  • 34. Indu¸c˜ao Finita (Fraca) E por que isso funciona? Temos ent˜ao um efeito domin´o: Pk Pk+1 Pk+2 . . . Pj Pj+1 . . . A partir da base, e de que Pj ⇒ Pj+1, temos o segundo Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
  • 35. Indu¸c˜ao Finita (Fraca) E por que isso funciona? Temos ent˜ao um efeito domin´o: Pk Pk+1 Pk+2 . . . Pj Pj+1 . . . A partir do segundo, e de que Pj ⇒ Pj+1, temos o terceiro Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
  • 36. Indu¸c˜ao Finita (Fraca) E por que isso funciona? Temos ent˜ao um efeito domin´o: Pk Pk+1 Pk+2 . . . Pj Pj+1 . . . E assim por diante... Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
  • 37. Indu¸c˜ao Finita (Fraca) E por que isso funciona? Temos ent˜ao um efeito domin´o: Pk Pk+1 Pk+2 . . . Pj Pj+1 . . . E assim por diante... Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
  • 38. Indu¸c˜ao Finita (Fraca) E por que isso funciona? Temos ent˜ao um efeito domin´o: Pk Pk+1 Pk+2 . . . Pj Pj+1 . . . E assim por diante... Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
  • 39. Indu¸c˜ao Finita (Fraca) E por que isso funciona? Temos ent˜ao um efeito domin´o: Pk Pk+1 Pk+2 . . . Pj Pj+1 . . . E assim por diante... Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 18 / 39
  • 40. Indu¸c˜ao Finita (Fraca) E por que indu¸c˜ao fraca? Essa formula¸c˜ao ´e denominada princ´ıpio da indu¸c˜ao (finita) fraca, porque apenas Pj ´e assumida como verdadeiro para se provar a veracidade de Pj+1 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 19 / 39
  • 41. Indu¸c˜ao Finita (Fraca) E por que indu¸c˜ao fraca? Essa formula¸c˜ao ´e denominada princ´ıpio da indu¸c˜ao (finita) fraca, porque apenas Pj ´e assumida como verdadeiro para se provar a veracidade de Pj+1 Mas isso ´e realmente indu¸c˜ao? Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 19 / 39
  • 42. Indu¸c˜ao Finita (Fraca) E por que indu¸c˜ao fraca? Essa formula¸c˜ao ´e denominada princ´ıpio da indu¸c˜ao (finita) fraca, porque apenas Pj ´e assumida como verdadeiro para se provar a veracidade de Pj+1 Mas isso ´e realmente indu¸c˜ao? N˜ao. O processo ´e, de fato, dedutivo Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 19 / 39
  • 43. Indu¸c˜ao Finita (Fraca) E por que indu¸c˜ao fraca? Essa formula¸c˜ao ´e denominada princ´ıpio da indu¸c˜ao (finita) fraca, porque apenas Pj ´e assumida como verdadeiro para se provar a veracidade de Pj+1 Mas isso ´e realmente indu¸c˜ao? N˜ao. O processo ´e, de fato, dedutivo Mas ent˜ao, por que indu¸c˜ao finita? Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 19 / 39
  • 44. Indu¸c˜ao Finita (Fraca) E por que indu¸c˜ao fraca? Essa formula¸c˜ao ´e denominada princ´ıpio da indu¸c˜ao (finita) fraca, porque apenas Pj ´e assumida como verdadeiro para se provar a veracidade de Pj+1 Mas isso ´e realmente indu¸c˜ao? N˜ao. O processo ´e, de fato, dedutivo Mas ent˜ao, por que indu¸c˜ao finita? Porque tentamos demonstrar uma conjectura que possivelmente foi formulada por um racioc´ınio indutivo (como nosso algoritmo {Ei P −→ Si , ∀[Ei , Si ]}) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 19 / 39
  • 45. Indu¸c˜ao Finita (Fraca) E qual a utilidade disso? O princ´ıpio da Indu¸c˜ao Finita ´e uma implica¸c˜ao, cuja conjectura ´e da forma: “a afirma¸c˜ao P ´e verdadeira para todos os inteiros positivos” Assim, ´e uma t´ecnica ´util quando queremos demonstrar que alguma propriedade ´e v´alida para qualquer inteiro positivo Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 20 / 39
  • 46. Indu¸c˜ao Finita (Fraca) – Exemplo Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 47. Indu¸c˜ao Finita (Fraca) – Exemplo Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Base: P1 : S(1) = 1 = 12 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 48. Indu¸c˜ao Finita (Fraca) – Exemplo Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Base: P1 : S(1) = 1 = 12 (ok) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 49. Indu¸c˜ao Finita (Fraca) – Exemplo Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Base: P1 : S(1) = 1 = 12 (ok) Hip´otese: Pj : S(j) = j2 (assumo verdadeira) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 50. Indu¸c˜ao Finita (Fraca) – Exemplo Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Base: P1 : S(1) = 1 = 12 (ok) Hip´otese: Pj : S(j) = j2 (assumo verdadeira) Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 51. Indu¸c˜ao Finita (Fraca) – Exemplo Inclu´ımos o pen´ultimo elemento de Pj+1 Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Base: P1 : S(1) = 1 = 12 (ok) Hip´otese: Pj : S(j) = j2 (assumo verdadeira) Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1) = 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 52. Indu¸c˜ao Finita (Fraca) – Exemplo Usamos que isso tudo ´e S(j) Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Base: P1 : S(1) = 1 = 12 (ok) Hip´otese: Pj : S(j) = j2 (assumo verdadeira) Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1) = 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1) = S(j) + (2(j + 1) − 1) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 53. Indu¸c˜ao Finita (Fraca) – Exemplo E assumimos Pj : S(j) = j2 Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Base: P1 : S(1) = 1 = 12 (ok) Hip´otese: Pj : S(j) = j2 (assumo verdadeira) Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1) = 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1) = S(j) + (2(j + 1) − 1) = j2 + (2(j + 1) − 1) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 54. Indu¸c˜ao Finita (Fraca) – Exemplo Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Base: P1 : S(1) = 1 = 12 (ok) Hip´otese: Pj : S(j) = j2 (assumo verdadeira) Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1) = 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1) = S(j) + (2(j + 1) − 1) = j2 + (2(j + 1) − 1) = j2 + 2j + 1 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 55. Indu¸c˜ao Finita (Fraca) – Exemplo Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Base: P1 : S(1) = 1 = 12 (ok) Hip´otese: Pj : S(j) = j2 (assumo verdadeira) Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1) = 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1) = S(j) + (2(j + 1) − 1) = j2 + (2(j + 1) − 1) = j2 + 2j + 1 = (j + 1)2 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 56. Indu¸c˜ao Finita (Fraca) – Exemplo Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Base: P1 : S(1) = 1 = 12 (ok) Hip´otese: Pj : S(j) = j2 (assumo verdadeira) Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1) = 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1) = S(j) + (2(j + 1) − 1) = j2 + (2(j + 1) − 1) = j2 + 2j + 1 = (j + 1)2 ⇒ S(j + 1) = (j + 1)2 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 57. Indu¸c˜ao Finita (Fraca) – Exemplo Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Base: P1 : S(1) = 1 = 12 (ok) Hip´otese: Pj : S(j) = j2 (assumo verdadeira) Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1) = 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1) = S(j) + (2(j + 1) − 1) = j2 + (2(j + 1) − 1) = j2 + 2j + 1 = (j + 1)2 ⇒ S(j + 1) = (j + 1)2 ⇒ Pj+1 ´e verdadeira Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 58. Indu¸c˜ao Finita (Fraca) – Exemplo Note que, para provarmos Pj+1 usamos Pj : S(j) = j2 Prove que 1 + 3 + 5 + . . . + (2n − 1) = n2 , para n ≥ 1 Nesse caso, S(n) = 1 + 3 + 5 + . . . + (2n − 1), e queremos mostrar Pn: S(n) = n2 Base: P1 : S(1) = 1 = 12 (ok) Hip´otese: Pj : S(j) = j2 (assumo verdadeira) Passo: S(j + 1) = 1 + 3 + 5 + . . . + (2(j + 1) − 1) = 1 + 3 + 5 + . . . + (2j − 1) + (2(j + 1) − 1) = S(j) + (2(j + 1) − 1) = j2 + (2(j + 1) − 1) = j2 + 2j + 1 = (j + 1)2 ⇒ S(j + 1) = (j + 1)2 ⇒ Pj+1 ´e verdadeira Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 21 / 39
  • 59. Indu¸c˜ao Finita (Fraca) – Exemplo Seja S(n) = 1 + 2 + . . . + n. Prove Pn : S(n) = n(n + 1) 2 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
  • 60. Indu¸c˜ao Finita (Fraca) – Exemplo Seja S(n) = 1 + 2 + . . . + n. Prove Pn : S(n) = n(n + 1) 2 Base: P1 : S(1) = 1 = 1(1+1) 2 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
  • 61. Indu¸c˜ao Finita (Fraca) – Exemplo Seja S(n) = 1 + 2 + . . . + n. Prove Pn : S(n) = n(n + 1) 2 Base: P1 : S(1) = 1 = 1(1+1) 2 (ok) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
  • 62. Indu¸c˜ao Finita (Fraca) – Exemplo Seja S(n) = 1 + 2 + . . . + n. Prove Pn : S(n) = n(n + 1) 2 Base: P1 : S(1) = 1 = 1(1+1) 2 (ok) Hip´otese: Pj : S(j) = j(j + 1) 2 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
  • 63. Indu¸c˜ao Finita (Fraca) – Exemplo Seja S(n) = 1 + 2 + . . . + n. Prove Pn : S(n) = n(n + 1) 2 Base: P1 : S(1) = 1 = 1(1+1) 2 (ok) Hip´otese: Pj : S(j) = j(j + 1) 2 Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
  • 64. Indu¸c˜ao Finita (Fraca) – Exemplo Seja S(n) = 1 + 2 + . . . + n. Prove Pn : S(n) = n(n + 1) 2 Base: P1 : S(1) = 1 = 1(1+1) 2 (ok) Hip´otese: Pj : S(j) = j(j + 1) 2 Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1) = S(j) + (j + 1) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
  • 65. Indu¸c˜ao Finita (Fraca) – Exemplo Seja S(n) = 1 + 2 + . . . + n. Prove Pn : S(n) = n(n + 1) 2 Base: P1 : S(1) = 1 = 1(1+1) 2 (ok) Hip´otese: Pj : S(j) = j(j + 1) 2 Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1) = S(j) + (j + 1) = j(j + 1) 2 + (j + 1) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
  • 66. Indu¸c˜ao Finita (Fraca) – Exemplo Seja S(n) = 1 + 2 + . . . + n. Prove Pn : S(n) = n(n + 1) 2 Base: P1 : S(1) = 1 = 1(1+1) 2 (ok) Hip´otese: Pj : S(j) = j(j + 1) 2 Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1) = S(j) + (j + 1) = j(j + 1) 2 + (j + 1) = j(j + 1) + 2(j + 1) 2 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
  • 67. Indu¸c˜ao Finita (Fraca) – Exemplo Seja S(n) = 1 + 2 + . . . + n. Prove Pn : S(n) = n(n + 1) 2 Base: P1 : S(1) = 1 = 1(1+1) 2 (ok) Hip´otese: Pj : S(j) = j(j + 1) 2 Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1) = S(j) + (j + 1) = j(j + 1) 2 + (j + 1) = j(j + 1) + 2(j + 1) 2 = (j + 1)(j + 2) 2 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
  • 68. Indu¸c˜ao Finita (Fraca) – Exemplo Seja S(n) = 1 + 2 + . . . + n. Prove Pn : S(n) = n(n + 1) 2 Base: P1 : S(1) = 1 = 1(1+1) 2 (ok) Hip´otese: Pj : S(j) = j(j + 1) 2 Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1) = S(j) + (j + 1) = j(j + 1) 2 + (j + 1) = j(j + 1) + 2(j + 1) 2 = (j + 1)(j + 2) 2 = (j + 1)((j + 1) + 1) 2 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
  • 69. Indu¸c˜ao Finita (Fraca) – Exemplo Seja S(n) = 1 + 2 + . . . + n. Prove Pn : S(n) = n(n + 1) 2 Base: P1 : S(1) = 1 = 1(1+1) 2 (ok) Hip´otese: Pj : S(j) = j(j + 1) 2 Passo: S(j + 1) = 1 + 2 + . . . + j + (j + 1) = S(j) + (j + 1) = j(j + 1) 2 + (j + 1) = j(j + 1) + 2(j + 1) 2 = (j + 1)(j + 2) 2 = (j + 1)((j + 1) + 1) 2 ⇒ S(j + 1) = (j + 1)((j + 1) + 1) 2 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 22 / 39
  • 70. Indu¸c˜ao Finita (Fraca) Muito cuidado! ´E f´acil se enganar ao construir uma prova por indu¸c˜ao Quando demonstramos que Pj+1 ´e verdadeira, sem usarmos a hip´otese Pj, n˜ao estamos fazendo uma prova por indu¸c˜ao finita Nesse caso, estamos fazendo uma prova direta de Pj+1, onde j + 1 ´e arbitr´ario Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 23 / 39
  • 71. Indu¸c˜ao Finita Em alguns problemas, contudo, para se provar que Pj+1 ´e verdadeira, temos que assumir a veracidade de todas as Pi, para k ≤ i ≤ j Princ´ıpio da Indu¸c˜ao Finita (Forte) Sejam Pn afirma¸c˜oes associadas a cada inteiro positivo n ≥ k. Se Pk for verdadeira e, para cada inteiro positivo j ≥ k pudermos mostrar que, se Pk, Pk+1, . . . , Pj forem verdadeiras ent˜ao Pj+1 tamb´em o ser´a, ent˜ao Pn ser´a verdadeira para todo inteiro n ≥ k. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 24 / 39
  • 72. Indu¸c˜ao Finita E, formalmente... Princ´ıpio da Indu¸c˜ao Finita (Forte) Para provarmos que Pn ´e verdadeira para todo n ≥ k, teremos que provar que: 1 P ´e verdadeira para algum k ≥ 1 (Pk ´e verdadeira) 2 Para todo j ≥ k, se Pk, Pk+1, . . . , Pj forem verdadeiras, ent˜ao P tamb´em o ser´a para j + 1 (Pk, Pk+1, . . . , Pj ⇒ Pj+1) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 25 / 39
  • 73. Indu¸c˜ao Finita (Forte) Em outras palavras... 1 Mostramos que P ´e verdadeira para um determinado k ≥ 1 (normalmente, k = 1) 2 Dado um inteiro arbitr´ario j, assumimos que P ´e verdadeira para todo i, k ≤ i ≤ j 3 Baseados nessa hip´otese, mostramos que Pj+1 ´e verdadeira, ou seja, provamos que P ´e verdadeira para j + 1 E assim conseguimos mostrar que P ´e verdadeira para qualquer inteiro n ≥ k Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 26 / 39
  • 74. Indu¸c˜ao Finita (Forte) Partes do Processo de Indu¸c˜ao Finita Base: demonstrar que P1 (ou Pk, para um determinado k ≥ 1) ´e verdadeira (passo 1 no slide anterior) Hip´otese de indu¸c˜ao: assumir que Pk, Pk+1, . . . , Pj s˜ao verdadeiras Passo indutivo: estabelecer que Pk, Pk+1, . . . , Pj → Pj+1 ´e verdadeira (passo 3) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 27 / 39
  • 75. Indu¸c˜ao Finita Fraca × Forte Afinal, qual a diferen¸ca entre elas? Na fraca, devemos provar, para um inteiro arbitr´ario j, que Pj+1 ´e verdadeira, com base somente na premissa de que Pj ´e verdadeira Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 28 / 39
  • 76. Indu¸c˜ao Finita Fraca × Forte Afinal, qual a diferen¸ca entre elas? Na fraca, devemos provar, para um inteiro arbitr´ario j, que Pj+1 ´e verdadeira, com base somente na premissa de que Pj ´e verdadeira Na forte, devemos assumir que Pi ´e verdadeira para todo inteiro i entre r e um inteiro positivo arbitr´ario j, para ent˜ao provar que Pj+1 ´e verdadeira. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 28 / 39
  • 77. Indu¸c˜ao Finita Fraca × Forte A forte recebe esse nome por nos dar mais base, para os casos em que n˜ao conseguimos provar com a fraca. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 29 / 39
  • 78. Indu¸c˜ao Finita Fraca × Forte A forte recebe esse nome por nos dar mais base, para os casos em que n˜ao conseguimos provar com a fraca. Ent˜ao a forte ´e melhor? Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 29 / 39
  • 79. Indu¸c˜ao Finita Fraca × Forte A forte recebe esse nome por nos dar mais base, para os casos em que n˜ao conseguimos provar com a fraca. Ent˜ao a forte ´e melhor? N˜ao. Elas s˜ao totalmente equivalentes Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 29 / 39
  • 80. Indu¸c˜ao Finita (Forte) – Exemplo Prove que para todo n ≥ 2, n ou ´e um n´umero primo ou ´e o produto de n´umeros primos. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 30 / 39
  • 81. Indu¸c˜ao Finita (Forte) – Exemplo Prove que para todo n ≥ 2, n ou ´e um n´umero primo ou ´e o produto de n´umeros primos. Nesse caso, Pi ´e a afirma¸c˜ao de que i ou ´e um n´umero primo ou o produto de primos Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 30 / 39
  • 82. Indu¸c˜ao Finita (Forte) – Exemplo Prove que para todo n ≥ 2, n ou ´e um n´umero primo ou ´e o produto de n´umeros primos. Nesse caso, Pi ´e a afirma¸c˜ao de que i ou ´e um n´umero primo ou o produto de primos Base: P2 ´e verdadeira (2 ´e primo) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 30 / 39
  • 83. Indu¸c˜ao Finita (Forte) – Exemplo Prove que para todo n ≥ 2, n ou ´e um n´umero primo ou ´e o produto de n´umeros primos. Nesse caso, Pi ´e a afirma¸c˜ao de que i ou ´e um n´umero primo ou o produto de primos Base: P2 ´e verdadeira (2 ´e primo) Hip´otese: Dado um inteiro arbitr´ario j, suponho que, para todo inteiro 2 ≤ i ≤ j, Pi ´e verdadeira, ou seja, i ´e primo ou o produto de primos Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 30 / 39
  • 84. Indu¸c˜ao Finita (Forte) – Exemplo Prove que para todo n ≥ 2, n ou ´e um n´umero primo ou ´e o produto de n´umeros primos. Nesse caso, Pi ´e a afirma¸c˜ao de que i ou ´e um n´umero primo ou o produto de primos Base: P2 ´e verdadeira (2 ´e primo) Hip´otese: Dado um inteiro arbitr´ario j, suponho que, para todo inteiro 2 ≤ i ≤ j, Pi ´e verdadeira, ou seja, i ´e primo ou o produto de primos Em outras palavras, assumo que todo inteiro entre 2 e j ou ´e primo ou ´e o produto de primos Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 30 / 39
  • 85. Indu¸c˜ao Finita (Forte) – Exemplo Passo: Vejamos agora j + 1. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
  • 86. Indu¸c˜ao Finita (Forte) – Exemplo Passo: Vejamos agora j + 1. Se j + 1 for primo, o resultado est´a correto. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
  • 87. Indu¸c˜ao Finita (Forte) – Exemplo Passo: Vejamos agora j + 1. Se j + 1 for primo, o resultado est´a correto. Se n˜ao for primo, ent˜ao podemos escrevˆe-lo como j + 1 = ab (pois, do contr´ario, j + 1 seria primo) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
  • 88. Indu¸c˜ao Finita (Forte) – Exemplo Passo: Vejamos agora j + 1. Se j + 1 for primo, o resultado est´a correto. Se n˜ao for primo, ent˜ao podemos escrevˆe-lo como j + 1 = ab (pois, do contr´ario, j + 1 seria primo) Nesse caso, 1 < a < j + 1 e 1 < b < j + 1, pois sua multiplica¸c˜ao n˜ao pode passar de j + 1, e se um deles for 1 estaremos dizendo que j + 1 = j + 1, o que ´e ´obvio. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
  • 89. Indu¸c˜ao Finita (Forte) – Exemplo Passo: Vejamos agora j + 1. Se j + 1 for primo, o resultado est´a correto. Se n˜ao for primo, ent˜ao podemos escrevˆe-lo como j + 1 = ab (pois, do contr´ario, j + 1 seria primo) Nesse caso, 1 < a < j + 1 e 1 < b < j + 1, pois sua multiplica¸c˜ao n˜ao pode passar de j + 1, e se um deles for 1 estaremos dizendo que j + 1 = j + 1, o que ´e ´obvio. Isso equivale a dizer que 2 ≤ a ≤ j e 2 ≤ b ≤ j, pois a e b s˜ao inteiros Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
  • 90. Indu¸c˜ao Finita (Forte) – Exemplo Passo: Vejamos agora j + 1. Se j + 1 for primo, o resultado est´a correto. Se n˜ao for primo, ent˜ao podemos escrevˆe-lo como j + 1 = ab (pois, do contr´ario, j + 1 seria primo) Nesse caso, 1 < a < j + 1 e 1 < b < j + 1, pois sua multiplica¸c˜ao n˜ao pode passar de j + 1, e se um deles for 1 estaremos dizendo que j + 1 = j + 1, o que ´e ´obvio. Isso equivale a dizer que 2 ≤ a ≤ j e 2 ≤ b ≤ j, pois a e b s˜ao inteiros Aplicando-se a hip´otese de indu¸c˜ao em a, temos que ele ´e primo ou o produto de primos. O mesmo vale para b. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
  • 91. Indu¸c˜ao Finita (Forte) – Exemplo Passo: Vejamos agora j + 1. Se j + 1 for primo, o resultado est´a correto. Se n˜ao for primo, ent˜ao podemos escrevˆe-lo como j + 1 = ab (pois, do contr´ario, j + 1 seria primo) Nesse caso, 1 < a < j + 1 e 1 < b < j + 1, pois sua multiplica¸c˜ao n˜ao pode passar de j + 1, e se um deles for 1 estaremos dizendo que j + 1 = j + 1, o que ´e ´obvio. Isso equivale a dizer que 2 ≤ a ≤ j e 2 ≤ b ≤ j, pois a e b s˜ao inteiros Aplicando-se a hip´otese de indu¸c˜ao em a, temos que ele ´e primo ou o produto de primos. O mesmo vale para b. Assim, ab ´e o produto de primos (2 ou mais, nesse caso), e a demonstra¸c˜ao se completa Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 31 / 39
  • 92. Indu¸c˜ao Finita (Forte) – Exemplo Note que, nesse exemplo, n˜ao conseguimos provar P usando apenas j Precisamos apelar a dois inteiros arbitr´arios a e b, entre 2 e j Como n˜ao sabemos quais usaremos, tivemos que assumir que a hip´otese valia para todos os inteiros entre 2 e j ´E ent˜ao nisso que reside a for¸ca dessa indu¸c˜ao N˜ao ficamos presos a j, mas sim a um intervalo de valores, nos dando mais possibilidades para a demonstra¸c˜ao Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 32 / 39
  • 93. Indu¸c˜ao Finita (Forte) – Exemplo Prove que qualquer valor postal maior ou igual a oito unidades monet´arias pode ser obtido usando-se apenas selos com valores de 3 e 5 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
  • 94. Indu¸c˜ao Finita (Forte) – Exemplo Prove que qualquer valor postal maior ou igual a oito unidades monet´arias pode ser obtido usando-se apenas selos com valores de 3 e 5 Base: P8 = 8 = 3 + 5 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
  • 95. Indu¸c˜ao Finita (Forte) – Exemplo Prove que qualquer valor postal maior ou igual a oito unidades monet´arias pode ser obtido usando-se apenas selos com valores de 3 e 5 Base: P8 = 8 = 3 + 5 (ok) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
  • 96. Indu¸c˜ao Finita (Forte) – Exemplo Prove que qualquer valor postal maior ou igual a oito unidades monet´arias pode ser obtido usando-se apenas selos com valores de 3 e 5 Base: P8 = 8 = 3 + 5 (ok) Hip´otese: Dado um inteiro arbitr´ario j, Pi ´e verdadeira para todo 8 ≤ i ≤ j Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
  • 97. Indu¸c˜ao Finita (Forte) – Exemplo Prove que qualquer valor postal maior ou igual a oito unidades monet´arias pode ser obtido usando-se apenas selos com valores de 3 e 5 Base: P8 = 8 = 3 + 5 (ok) Hip´otese: Dado um inteiro arbitr´ario j, Pi ´e verdadeira para todo 8 ≤ i ≤ j Passo: Por conveniˆencia, vamos demonstrar outros 2 resultados: Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
  • 98. Indu¸c˜ao Finita (Forte) – Exemplo Prove que qualquer valor postal maior ou igual a oito unidades monet´arias pode ser obtido usando-se apenas selos com valores de 3 e 5 Base: P8 = 8 = 3 + 5 (ok) Hip´otese: Dado um inteiro arbitr´ario j, Pi ´e verdadeira para todo 8 ≤ i ≤ j Passo: Por conveniˆencia, vamos demonstrar outros 2 resultados: P9 = 3 + 3 + 3 (ok) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
  • 99. Indu¸c˜ao Finita (Forte) – Exemplo Prove que qualquer valor postal maior ou igual a oito unidades monet´arias pode ser obtido usando-se apenas selos com valores de 3 e 5 Base: P8 = 8 = 3 + 5 (ok) Hip´otese: Dado um inteiro arbitr´ario j, Pi ´e verdadeira para todo 8 ≤ i ≤ j Passo: Por conveniˆencia, vamos demonstrar outros 2 resultados: P9 = 3 + 3 + 3 (ok) P10 = 5 + 5 (ok) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 33 / 39
  • 100. Indu¸c˜ao Finita (Forte) – Exemplo Passo (cont.): Podemos ent˜ao assumir que j + 1 ≥ 11 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 34 / 39
  • 101. Indu¸c˜ao Finita (Forte) – Exemplo Precisamos escrever isso em termos de algo no intervalo 8 ≤ i ≤ j Passo (cont.): Podemos ent˜ao assumir que j + 1 ≥ 11 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 34 / 39
  • 102. Indu¸c˜ao Finita (Forte) – Exemplo Precisamos escrever isso em termos de algo no intervalo 8 ≤ i ≤ j Passo (cont.): Podemos ent˜ao assumir que j + 1 ≥ 11 Temos ent˜ao que (j + 1) − 3 ≥ 11 − 3 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 34 / 39
  • 103. Indu¸c˜ao Finita (Forte) – Exemplo Precisamos escrever isso em termos de algo no intervalo 8 ≤ i ≤ j Passo (cont.): Podemos ent˜ao assumir que j + 1 ≥ 11 Temos ent˜ao que (j + 1) − 3 ≥ 11 − 3 ⇒ j − 2 ≥ 8 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 34 / 39
  • 104. Indu¸c˜ao Finita (Forte) – Exemplo Passo (cont.): Podemos ent˜ao assumir que j + 1 ≥ 11 Temos ent˜ao que (j + 1) − 3 ≥ 11 − 3 ⇒ j − 2 ≥ 8 Como 8 ≤ j − 2 < j ent˜ao, pela hip´otese de indu¸c˜ao, Pj−2 ´e verdadeira, e posso escrever j − 2 como uma combina¸c˜ao de 3 e 5 Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 34 / 39
  • 105. Indu¸c˜ao Finita (Forte) – Exemplo Passo (cont.): Podemos ent˜ao assumir que j + 1 ≥ 11 Temos ent˜ao que (j + 1) − 3 ≥ 11 − 3 ⇒ j − 2 ≥ 8 Como 8 ≤ j − 2 < j ent˜ao, pela hip´otese de indu¸c˜ao, Pj−2 ´e verdadeira, e posso escrever j − 2 como uma combina¸c˜ao de 3 e 5 Como j + 1 = (j − 2) + 3, ent˜ao Pj+1 = Pj−2 + 3, e como Pj−2 ´e uma combina¸c˜ao de 3 e 5, adicionar 3 faz com que Pj+1 tamb´em o seja. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 34 / 39
  • 106. Indu¸c˜ao Finita Varia¸c˜oes Inicialmente, vimos casos em que: Mostramos Pk, assumimos Pj , j ≥ k e mostramos que Pj → Pj+1 (fraca) Mostramos Pk, assumimos Pk, Pk+1, . . . , Pj , j ≥ k e mostramos que Pj → Pj+1 (forte) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 35 / 39
  • 107. Indu¸c˜ao Finita Varia¸c˜oes Inicialmente, vimos casos em que: Mostramos Pk, assumimos Pj , j ≥ k e mostramos que Pj → Pj+1 (fraca) Mostramos Pk, assumimos Pk, Pk+1, . . . , Pj , j ≥ k e mostramos que Pj → Pj+1 (forte) Caso cl´assico Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 35 / 39
  • 108. Indu¸c˜ao Finita Varia¸c˜oes Contudo, podemos ampliar a base, por exemplo: Mostramos Pk, Pk+1, Pk+2, assumimos Pj , j ≥ k + 2 e mostramos que Pj → Pj+1 (fraca) Mostramos Pk, Pk+1, Pk+2, assumimos Pk+2, Pk+3, . . . , Pj , j ≥ k + 2 e mostramos que Pj → Pj+1 (forte) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 36 / 39
  • 109. Indu¸c˜ao Finita Varia¸c˜oes Contudo, podemos ampliar a base, por exemplo: Mostramos Pk, Pk+1, Pk+2, assumimos Pj , j ≥ k + 2 e mostramos que Pj → Pj+1 (fraca) Mostramos Pk, Pk+1, Pk+2, assumimos Pk+2, Pk+3, . . . , Pj , j ≥ k + 2 e mostramos que Pj → Pj+1 (forte) Ou seja, “esticamos” a base at´e um valor que nos ajude na prova, como no ´ultimo exemplo visto Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 36 / 39
  • 110. Indu¸c˜ao Finita Varia¸c˜oes E nada nos impede de fazer: Mostramos Pk, assumimos Pj−1, j − 1 ≥ k e mostramos que Pj−1 → Pj (fraca) Mostramos Pk, assumimos Pk, Pk+1, . . . , Pj−1, j − 1 ≥ k e mostramos que Pj−1 → Pj (forte) Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 37 / 39
  • 111. Indu¸c˜ao Finita Varia¸c˜oes E nada nos impede de fazer: Mostramos Pk, assumimos Pj−1, j − 1 ≥ k e mostramos que Pj−1 → Pj (fraca) Mostramos Pk, assumimos Pk, Pk+1, . . . , Pj−1, j − 1 ≥ k e mostramos que Pj−1 → Pj (forte) Nesse caso, apenas fizemos uma mudan¸ca de vari´avel, que pode vir a facilitar a prova matem´atica. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 37 / 39
  • 112. Referˆencias Gersting, Judith L. Fundamentos Matem´aticos para a Ciˆencia da Computa¸c˜ao. 3a ed. LTC. 1993. Manber, Udi. Introduction to Algorithms: A Creative Approach. Addison-Wesley. 1989. Ziviani, Nivio. Projeto de Algoritmos: com implementa¸c˜oes em Java e C++. Cengage. 2007. Manber, Udi. Using Induction to Design Algorithms. Communications of the ACM, 31(11). 1988. Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 38 / 39
  • 113. Referˆencias https://pt.wikipedia.org/wiki/Abdu¸c˜ao (l´ogica filos´ofica) https://pt.wikipedia.org/wiki/M´etodo dedutivo https://pt.wikipedia.org/wiki/M´etodo indutivo Norton Trevisan Romannorton@usp.br Aula 02 – T´ecnicas de Desenvolvimento de Algoritmos: Indu¸c˜ao Fraca e Forte8 de agosto de 2018 39 / 39