If playback doesn't begin shortly, try restarting your device.
•
You're signed out
Videos you watch may be added to the TV's watch history and influence TV recommendations. To avoid this, cancel and sign in to YouTube on your computer.
CancelConfirm
Share
An error occurred while retrieving sharing information. Please try again later.
87 views • Nov 18, 2022 • FEDERAL UNIVERSITY OF RIO GRANDE DO NORTE
Show less
Fundamentos matemáticos para computação 1 (FMC1)
Introdução à recursão e à indução (IRI)
Semestre 2022.2
Thanos Tsouanas
IMD, UFRN, BR
http://tsouanas.org/fmcbookhttp://tsouanas.org/teaching/fmc1/2022.2DISCLAIMER / ACKNOWLEDGEMENT
Não consegui gravar usando meu equipamento (falta de memória SD, causada por falta de memória minha). Esta gravação foi feita graças aos alunos: Pedro Paulo Lucas de Lira que se voluntariou para usar seu celular para gravar, Iasmin que segurou o celular na sua mesa para gravar, e Isaac que gravou separadamente o aúdio (que acabei usando nas partes onde o vídeo foi cortado). Agradecemos!
Recursão, Indução: List, Maybe
[00:00:00] bom dia / recap
[00:00:00] bom dia / recap
[00:03:08] como agir se precisar numa lista ter naturais e booleanos: NatOrBool
[00:09:42] polimorfismo: função id
[00:12:02] umas funções que conhecemos: takeEvens, sum, length, reverse
[00:15:58] por que não podemos tipar a sum com List α → α…...more
Fundamentos matemáticos para computação 1 (FMC1)
Introdução à recursão e à indução (IRI)
Semestre 2022.2
Thanos Tsouanas
IMD, UFRN, BR
http://tsouanas.org/fmcbookhttp://tsouanas.org/teaching/fmc1/2022.2DISCLAIMER / ACKNOWLEDGEMENT
Não consegui gravar usando meu equipamento (falta de memória SD, causada por falta de memória minha). Esta gravação foi feita graças aos alunos: Pedro Paulo Lucas de Lira que se voluntariou para usar seu celular para gravar, Iasmin que segurou o celular na sua mesa para gravar, e Isaac que gravou separadamente o aúdio (que acabei usando nas partes onde o vídeo foi cortado). Agradecemos!
Recursão, Indução: List, Maybe
[00:00:00] bom dia / recap
[00:00:00] bom dia / recap
[00:03:08] como agir se precisar numa lista ter naturais e booleanos: NatOrBool
[00:09:42] polimorfismo: função id
[00:12:02] umas funções que conhecemos: takeEvens, sum, length, reverse
[00:15:58] por que não podemos tipar a sum com List α → α
[00:20:17] mais uma função que conhecemos: addNat
[00:22:21] queremos generalizar todas essas
[00:24:34] funções de ordem superior (higher-order functions)
[00:25:40] map
[00:33:00] como definir a addNat numa maneira melhor
[00:38:32] Q: a map realmente muda os valores de uma dada lista?
[00:40:30] desafio: como generalizar as sum, product, concat
[00:42:00] filter
[00:52:59] head e tail mais seguros
[00:57:37] Q: Qual o tipo do bottom (⊥) ?
[00:59:24] um teaser sobre o propositions-as-types ("Curry--Howard")
[01:10:11] o Maybe : Type → Type
[01:17:13] Nats bottomosos (⊥, nats parciais, o nat infinito)
[01:20:25] Q: Que tal Maybe (List α) e (Maybe (Maybe α)) etc.?
[01:21:25] Q: Será que podemos usar o Unit em vez do Maybe?
[01:24:37] Q: O Maybe é gambiarra? Uma find melhor: find : α → List α → Maybe α
[01:28:45] O princípio da indução para List α
[01:33:40] Plicker bobo…...more