[INCLUDE TH/speedbar.blogme] [SETFAVICON dednat4/dednat4-icon.png] [SETFAVICON IMAGES/forthsun.png] [# (defun c () (interactive) (find-blogme3-sh0-if "2009.2-MD")) ;; http://angg.twu.net/2009.2-MD.html ;; file:///home/edrx/TH/L/2009.2-MD.html #] [lua: LR = R ] [lua: -- (find-equailfile "latin-ltx.el.gz") -- (find-equailfile "latin-ltx.el") -- (find-blogme3 "charset.lua") -- (find-eev "eev-math-glyphs.el") sgmlify_table["ý"] = "Ɐ" sgmlify_table["Î"] = "∃" sgmlify_table["Ý"] = "∈" sgmlify_table["‚"] = "∞" sgmlify_table["Ì"] = "∩" sgmlify_table["þ"] = "∪" def [[ STANDOUT 1 body BGFG("red", "yellow", body) ]] def [[ SCAN 3 cod,date,ext R("2009.1/$cod/$date.$ext", "$date") ]] def [[ \aa 1 _ "α" ]] def [[ \bb 1 _ "β" ]] def [[ \cc 1 _ "γ" ]] def [[ \fa 1 _ "Ɐ" ]] def [[ \ex 1 _ "∃" ]] def [[ \in 1 _ "∈" ]] def [[ \to 1 _ "→" ]] def [[ \neq 1 _ "≠" ]] def [[ \notin 1 _ "∉" ]] def [[ \subseteq 1 _ "⊆" ]] def [[ \subsetneq 1 _ "⊊" ]] def [[ \nsubseteq 1 _ "⊈" ]] def [[ \Pts 1 _ "℘" ]] def [[ \infty 1 _ "∞" ]] ] [htmlize [J 2009.2 - Matemática Discreta] [_TARGETS Courant => http://gigapedia.org/items/80541/introduction-to-calculus-and-analysis--vol-1---1965- Spivak => http://gigapedia.com/items/107053/calculus Schey => http://www.amazon.com/Div-Grad-Curl-All-That/dp/0393925161 Schey => http://gigapedia.com/items/116337/div--grad--curl--and-all-that--an-informal-text-on-vector-calculus--3ed Malta-G => http://books.google.com/books?id=MbxCf9v3z78C Malta-1 => http://www.livrariadafisica.com.br/detalhe_produto.aspx?id=20048 2009.1 -> (find-TH "2009.1") 2009.2 -> (find-TH "2009.2") C2-old -> (find-TH "2009.1-C2") MD-old -> (find-TH "2009.1-MD") P1.tex -> (find-angg "LATEX/2009-2-MD-prova-1.tex") P1.pdf -> (find-anggfile "LATEX/2009-2-MD-prova-1.pdf") hjb => http://www.professores.uff.br/hjbortol/ hjbc2 => http://www.professores.uff.br/hjbortol/disciplinas/2007.1/gma06074/index.html http://www.professores.uff.br/hjbortol/disciplinas/2007.1/gma06074/gma06074.cronograma.html http://www.professores.uff.br/hjbortol/disciplinas/2007.1/gma06074/gma06074.listas.html comp.tex -> (find-angg "LATEX/2009-2-MD-comparacao.tex") comp.pdf -> (find-anggfile "LATEX/2009-2-MD-comparacao.pdf") ] [P [STANDOUT Sobre as VSs extras:] a 1ª VS extra aconteceu na quarta, 6/jan/2010, e em príncipio as outras vão acontecer na quarta 13/jan/2010 e na quarta 20/jan/2010, sempre começando às 11:00 da manhã. Eu não estou conseguindo atualizar esta página com freqüência, então se você estiver interessado em fazer alguma das VSs extras por favor entre em contato comigo por e-mail: eduardoochs@gmail.com.] [RULE] [P O livro oficial do curso é o Scheinerman.] [P Horários, sala, etc: veja a [__ 2009.2 página sobre os cursos que eu estou dando].] [P Página do curso do semestre passado: [__ MD-old aqui].] [br] [P [BF Cronograma] (o que foi dado nas aulas que já aconteceram):] [br] [MES AGOSTO [AULA 1 2009-aug-24 Noção de "redução" para calcular os valores de expressões; valores podem ser números, valores de verdade ([BF F], [BF V]), conjuntos, etc; "=" como comparação; contextos, valores de variáveis, definições; as operações lógicas "e" e "ou"; como interpretar "para todo" e "existe" sobre conjuntos finitos. [BR] Exercícios pra casa: para A={1,2,3}, B={2,3,4}, C={2,3}, calcule aÝA.aÝC, ýaÝA.aÝB, ÎbÝB.3<b, ýaÝA.ÎbÝB.a<b. ] [AULA 2 2009-aug-26 Aula cancelada (por causa de um concurso). ] [AULA 3 2009-aug-31 Mais operações lógicas: implicação, biimplicação, negação. ] ] [br] [MES SETEMBRO [AULA 4 2009-sep-02 Tabelas de verdade; tautologias; contra-exemplos; seguimos a prova da p.18 do Scheinerman (a soma de dois pares é par) e fizemos uma correspondente para o exercício 3 da p.24 (o produto de dois pares é par), começando com um idéia em uma linha: "se x=2a e y=2b então xy=2(2ab)"; pedi pra todo mundo ler o capítulo 1 e descobrir o que ele diz sobre o nível de detalhe correto de provas. ] [AULA 5 2009-sep-07 Feriado. ] [AULA 6 2009-sep-09 Definições equivalentes; substituição de iguais por iguais; três definições diferentes de "divide" (chamei elas de divide, divide', divide''; só uma delas tinha expansão finita) ] [AULA 7 2009-sep-14 Começamos o capítulo 2 do Scheinerman. Introduzi algumas operações que vamos usar e que não estão definidas explicitamente no livro: comprimento de uma lista e extração de uma componente de uma lista. A definição formal de "a=b" quando a e b são listas. Os problemas de contagem do Scheinerman usam duas outras operações implicitamente que nós vimos em detalhes na aula: {(a,b) | aÝA, bÝB, P(a,b)} e contagem dos elementos de um conjunto. A correspondência entre B={(a,b) | a,bÝ{1,...,4}, b[\neq]a} e C={(a',b') | a'Ý{1,2,3,4}, b'Ý{1,2,3}} - em C o b' diz qual dos elementos que "ainda não foi escolhido" (i.e., que é diferente de a) é escolhido para ser o b. ] [AULA 8 2009-sep-16 Auto-teste: pedi pros alunos escolherem ou o problema 4 da p.43 ou o 4 da p.24 do Scheinerman, resolverem do modo mais claro possível (30 mins pra isso) e depois trocarem com um colega pra cada um "corrigir" o do outro, apontando o que estava errado ou pouco claro e indicando melhorias possíveis. Não valia nota, então todos deveriam ficar à vontade pra apontar todos os erros e melhorias possíveis. [BR] Depois os alunos que quisessem mais dicas de correções e melhorias deveriam se juntar em grupos de no mínimo 4 pessoas, preparar uma só folha com a melhor resposta que conseguissem, e me entregar pra eu "corrigir" ela fazendo comentários por escrito. ] [AULA 9 2009-sep-21 Conjuntos, A=B, [\in], [\subseteq], [\subsetneq], [\nsubseteq], [\Pts](A), A×B ] [AULA 10 2009-sep-23 Como construir [\Pts](A) por uma árvore de decisões; tipos de objetos; conjuntos e listas podem ter elementos de vários tipos; avisei que vamos ver outros tipos depois, mas que eles geralmente vão poder ser [IT representados] por conjuntos, listas, etc; definição formal de interseção; conjuntos definidos por propriedades: por enquanto vimos [\Pts](A) = {B|B[\subseteq]A}, A×B = {(a,b)|aÝA, bÝB} e AÌB = {aÝA|aÝB} - as propriedades que vão nos interessar mais retornam conjuntos finitos quando recebem conjuntos finitos. Mencionei que R = {A conjunto | A[\notin]A} contraditório - RÝR e R[\notin]R (vamos ver isto com detalhes depois). Pedi pra todo mundo tentar fazer todos os problemas das páginas 55 e 56. ] [AULA 11 2009-sep-28 Produtórios, somatórios, fatoral, (¬ÎaÝA.P(a))=(ýaÝA.¬P(a)), (¬ýaÝA.P(a))=(ÎaÝA.¬P(a)). ] [AULA 12 2009-sep-30 (Aula pra muito poucas pessoas, porque foi depois da prova de Cálculo 2, que acabou tarde). [BR] O que é uma "proposição qualquer"; como encontrar todas as proposições sobre um conjunto de 4 elementos. ] ] [br] [MES OUTUBRO [AULA 13 2009-out-05 (Revisão) ] [PROVA 14 2009-out-07 P1 ([__ P1.pdf PDF], [__ P1.tex LaTeX]; inclui uma versão preliminar do gabarito). Matéria: seções 1-6 e 9 do Scheinerman. ] [AULA 15 2009-out-12 Feriado. ] [AULA 16 2009-out-14 Poucos alunos vieram, aí a gente só discutiu as questões da prova. ] [AULA 17 2009-out-19 Semana acadêmica. ] [AULA 18 2009-out-21 Semana acadêmica. ] [AULA 19 2009-out-26 Feriado. ] [AULA 20 2009-out-28 Aula sobre definir proposições... não deu muito certo, vamos voltar a esse assunto depois. ] ] [br] [MES NOVEMBRO [AULA 21 2009-nov-02 Feriado. ] [AULA 22 2009-nov-04 Começamos o capítulo 3 do Scheinerman; vimos a seção 11 ("Relações"), e eu pedi pros alunos fazerem os problemas das págs 81 a 83. Estou tentando insistir bastante na idéia de que uma relação pode ser representada de vários modos. [BR] Estou devendo um texto comparando matematiquês, Pascal, C e linguagens como Ruby, Python e Lua. ] [AULA 23 2009-nov-09 ] [AULA 24 2009-nov-11 ] [AULA 25 2009-nov-16 Passei um exercício pra ser feito em grupos de no máximo 3 pessoas e entregue na aula seguinte, com [IT todos os detalhes], valendo nota; passamos a aula tirando dúvidas do exercício. [BR] O enunciado do exercício era: "Quantas relações de equivalência temos no conjunto {1,2,3}? Encontre todas usando uma árvore de decisão, represente todas de todos os modos que já vimos, e diga quais são funções. Além disso faça o gráfico (como em Cálculo I) dessas funções e relações, e descubra o domínio e a imagem de cada uma." ] [AULA 26 2009-nov-18 Defini (em Português) uma função "delete" que recebe uma particão de um conjunto e retorna uma partição de um conjunto menor; usei ela (e a inversa dela) pra mostrar como conseguir a árvore de decisão que resolve o problema de encontrar todas as partições no conjunto {1,2,3,4,5}. Passei um exercício pra casa pra esclarecer isto: T_3 é o conjunto de todas as partições de {1,2,3}, T_4 o das partições de {1,2,3,4}, etc; delete4 é uma função de T_4 em T_3, e pedi que as pessoas encontrassem delete3^{-1} e mostrassem como usar essa relação pra construir a "segunda escolha" da árvore de decisão que encontra todas as partições de conjuntos cada vez maiores. [BR] Exercícios pra casa, do livro: p.182, 2, 3, 4. [BR] Vimos que listas podem ser vistas como funções (o domínio é o conjunto de índices), e vimos como listas infinitas ("seqüências") costumam ser definidas ("definição indutiva"), e calculamos (a_1, a_2, a_3, a_4, ...) para um caso simples. [BR] Avisei que o [__ comp.pdf texto sobre a comparação] ([__ comp.tex src]) entre matematiquês, Pascal, C e Lua estava pronto. ] [AULA 27 2009-nov-23 ] [AULA 28 2009-nov-25 Aula sobre as Torres de Hanói; começamos a ver em sala como resolver o problema e possíveis modos de representá-lo "matematicamente", isto é, usando conjuntos, listas, etc. Voltamos à idéia de definições indutivas para seqüências infinitas: primeiro seqüências de números, por exemplo, a_0=1, a_{n+1}=2·a_n, depois seqüências de conjuntos, p.ex. A_0={0}, A_{n+1}=A_nþ{n+1}. Avisei que a solução geral das Torres de Hanói pode ser vista como uma seqüência, mas não é uma seqüência de números, então vamos deixá-la pra depois. [BR] Passei um exercício pra ser feito em grupos de no máximo 3 pessoas e entregue no dia 2/dezembro, sobre como representar matematicamente posições, movimentos e seqüências de movimentos no jogo das Torres de Hanói; começamos a discutir representações possíveis na sala, e vimos que algumas representações propostas eram ruins, e porquê. Os alunos ficaram de pensar o resto e escrever tudo em casa. [BR] Avisei [IT muito enfaticamente] que eles têm que começar a escrever direito e arriscar a escrever em português o que eles pensam, mesmo que no início fique confuso. [IT Eu não vou mais aceitar respostas que sejam só rabisquinhos sem explicação, muito menos rabisquinhos iguais aos dos outros grupos, e menos ainda rabisquinhos que não só estão iguais aos dos outros como ainda estão errados.] ] [AULA 29 2009-nov-30 Introdução a provas por indução. Definimos uma seqüência a_n por a_1=1, a_{n+1} = 2a_n + 1, uma outra, b_n, que calcula a expansão binária de n, e uma outra por c_n = 2^n-1; vimos que o conjunto A = {nÝ{1,2,...} | a_n=c_n} parece ser o próprio conjunto {1,2,...}, mas como provar isto?... Aí vimos o enunciado do princío de indução (seção 19 do Scheinerman, p.156) e vimos vários conjuntos que obedecem ou não obedecem a condição ýnÝN.nÝB[\to](n+1)ÝB. [BR] Não passei nenhum exercício pra nota - deixei pra quarta, mas pedi pros alunos lerem a seção 19 do livro. ] ] [br] [MES DEZEMBRO [AULA 30 2009-dez-02 ] [AULA 31 2009-dez-04 ] [AULA 32 2009-dez-07 ] [PROVA 33 2009-dez-09 P2. Matéria: relações (inclui partições, etc), funções, seqüências, um pouco sobre definições indutivas e indução. ] [AULA 34 2009-dez-14 VR ] [AULA 35 2009-dez-16 VS ] ] [# Idéias pro próximo curso: Winning Ways http://blog.plover.com/math/gray-codes.html http://en.wikipedia.org/wiki/Proofs_of_Fermat%27s_theorem_on_sums_of_two_squares Trabalhos: ??? (? pontos): trabalho em que as pessoas tiraram uma pontuação ínfima TFAB (? pontos): todas as funções de A em B 2009-nov-16 (? pontos): quantas rels de equivalência em {1,2,3}; árvore de decisão 2009-nov-25 (? pontos): torres de Hanói 2009-dez-02 (? pontos): Indução 2009-dez-09 (? pontos): Jogo da Velha (complemento da prova)  (eepitch-lua51)  (eepitch-kill)  (eepitch-lua51) -- P1 TFAB nov16 nov25 dez02 P2 VRG VR NF1 VSG VS bigstr = [[ Alice Maria Silva Cirufo Vieira Costa 2.5 - G11 - - 2.5 G1 1.0 2.3 - - (5.8) Alvaro Cesar de Andrade Netto 5.5 - - - - 0.5 G6 1.0 2.4 G4 2.0 Arthur Emilio Soares Argemil 2.6 - - - - - - - 0.9 - - Bruno Masiero Cesar de Oliveira 5.0 - - - - 4.0 G4 3.0 3.2 G3 2.0 (5.8) Bruno da Rosa Casado Lima 7.8 - - G3 - 6.0 - - 5.2 - - (6.0) Caio Coelho Schueng 2.7 - G4 - - - G3 2.0 2.5 G5 0.5 Caio Felipe Chames 7.7 - - G3 G1 - G7 7.0 7.2 - - Cicero Marques de Almeida 1.3 - G6 - - 3.0 G5 1.0 2.0 - - Daniel Avelino Manhaes 6.8 - G5 G1 G3 - G8 4.0 6.0 - - (6.5) Dayana Goncalves Barbosa 1.4 - G12 - - 2.0 G5 1.0 1.7 G2 1.0 Fernanda Gaglianone de Paiva - - - - - - - - 0.0 - - Fernando Elias Lima Pichone - - - - - - - - 0.0 - - Fernando Teixeira Magalhaes 1.9 - G4 - - - - - 3.6 - - Frederico Casteloes Nery de Sa 8.1 - G9 G5 G2 7.5 G7 7.0 7.9 - - Frederico Mendonca Almeida Portilho - - - - - - - - 0.0 - - Gabriel Aleixo Moreno 5.7 - - - - 2.0 G4 3.0 3.4 G3 2.0 Gabriel Jacques Soares 1.4 - G6 - - - G6 1.0 1.6 - - Gabriel de Souza Rangel dos Santos 2.9 - G5 G5 G2 6.0 G8 4.0 5.1 - - (6.0) Gideon de Oliveira Soares 2.7 - G4 - - 0.0 G2 2.5 2.8 G1 1.5 Hugo Cesar Baur Salgado 3.5 - - - - 3.0 - - 2.2 - - Igor Tauan Dos Santos Castro 0.4 - G11 - - - G8 4.0 2.7 - - Igor da Cunha Souza 4.5 - - - - - - - 1.5 - - Jonothas Dos Santos Reis - - - - - - G6 1.0 0.4 G4 2.0 Juliana Sales Martins 2.5 - G2 G2 G4 2.0 G1 1.0 3.2 - - (5.8) Julio Cesar de Oliveira Freitas 1.1 G1 G8 - - - - - 1.5 - - Lucas Alves Alonso 3.3 - G10 - - - - - 1.7 - - Marcello Duarte Crescencio 3.9 - - - - - - - 1.3 - - Marcelo Costa de Oliveira Junior 5.4 - G11 - - 6.0 G1 1.0 4.4 - - (6.5) Marco Vinicius da Costa Alves 3.8 - - - G3 1.5 G8 4.0 3.9 - - Marcos Aurelio Jose Ramos Junior 2.1 - G7 - - 4.0 G3 2.0 2.6 G5 0.5 Matheus Lily Serrao Dilon 6.0 - G9 G3 G1 6.0 G7 7.0 7.2 - - Matheus Miranda Adams 1.9 - G7 - - 1.5 G3 2.0 2.2 G5 0.5 Matheus Santos de Oliveira - - - - - - - - 0.0 - - Matheus de Lima Mendonca - - - - - 3.5 G4 3.0 2.2 G3 2.0 Nathan Araujo Freitas - - - - - - - - 0.0 - - Pedro Cavalcanti Trindade Marins 1.6 - - - - - - - 0.6 - - Peterson Tiago de Jesus Andrade 9.0 - G8 G1 G3 9.0 - - 7.7 - - Raphael Barbosa da Silva Morato 0.6 G1 G2 G4 G5 2.0 G5 1.0 3.0 G2 1.0 (5.8) Renan de Oliveira Mozer 2.3 - G6 - - - G2 2.5 2.6 G1 1.5 Renan do Carmo de Souza 1.3 - G10 - - - - - 1.0 - - Rodrigo Cruz da Silva 6.8 - - - - 3.5 G6 1.0 3.5 G4 2.0 Tairine Pravadelli Cunha 5.2 - G9 G5 G2 2.0 G7 7.0 7.0 - - Vitor Henrique Costa Mendes Praun 5.1 - - - - 0.0 G2 2.5 3.0 G1 1.5 Wallace Cabral da Silva - - G10 - - 2.0 - - 1.2 - - Welington da Costa Ximenes 5.1 - G12 G2 - 5.0 G1 1.0 4.5 - - (6.0) Wilder Nico Barcelos 4.4 G1 G2 G4 G5 2.0 G5 1.0 4.1 G2 1.0 (5.8) ]] alunos = {} for _,li in ipairs(splitlines(bigstr)) do li = untabify(li) local w = " *(%S*)" local pat = "^(.-) +"..w:rep(10).."(.*)" local nome, p1, t1,t2,t3,t4, p2, vrg,vr,vsg,vs, rest = li:match(pat) if nome then aluno = {nome=nome, p1=p1, t1=t1, t2=t2, t3=t3, t4=t4, p2=p2, vrg=vrg, vr=vr, vsg=vsg, vs=vs, rest=rest} tinsert(alunos, aluno) -- PP(aluno) else PP("???", li) end end PP(alunos[1]) n = function (str, dft) if str:match("^G") then return dft end if str == "-" then return 0 end return str+0 end trabs_ = function (a) return n(a.t1, 1.7), n(a.t2, 1.7), n(a.t3, 1.7), n(a.t4, 1.7) end trabs = function (a) return min(n(a.t1, 1.7) + n(a.t2, 1.7) + n(a.t3, 1.7) + n(a.t4, 1.7), 6.0) end pral = function (a, what) local N, S = "%4.1f", " %-3s" local N21, S21 = "%5.1f", " %-4s" local N12, S12 = "%5.2f", " %-4s" local N22, S22 = "%6.2f", " %-5s" local t1, t2, t3, t4 = trabs_(a) local nome, p1, trabs, p2, vr, vs = a.nome, n(a.p1), trabs(a), n(a.p2), n(a.vr), n(a.vs) local p1r, p2r = p1, p2 -- PP(a) -- PP(p1, p2, vr, vs) if p1*1.5 <= p2*1 then if vr >= p1*1 then p1r = vr end else if vr*1.5 >= p2*1 then p2r = vr*1.5 end end local tot30 = p1 + trabs + p2 local tot30r = p1r + trabs + p2r local tot10 = tot30/3 local tot10r = tot30r/3 what = what or "short" LONG = format("%-38s".."P1 P1R T1 T2 T3 T4 P2 VR P2R Nt*3 Nota", "Nome") long = format("%-37s" ..N ..N ..N ..N ..N ..N ..N21 ..N ..N22 ..N22 ..N12, nome, p1, p1r, t1, t2, t3, t4, p2, vr, p2r, tot30r, tot10r) SHORT = format("%-38s".."P1 P1R TRS P2 P2R VR Nt*3 Nota", "Nome") short = format("%-37s" ..N ..N ..N ..N21 ..N22 ..N ..N22 ..N12, nome, p1, p1r, trabs, p2, p2r, vr, tot30r, tot10r) -- REST = "cola sit vr1 vrvs vs" -- rest = format(S22 ..S ..S ..S ..S, -- a.colou, a.sit, a.vr1, a.vrvs, a.vs) if what:find"LONG" then print(LONG) end if what:find"long" then print(long) end if what:find"SHORT" then print(SHORT) end if what:find"short" then print(short) end -- if what:find"REST" then print(REST) end -- if what:find"rest" then print(rest) end end pral(alunos[8], "SHORT") pral(alunos[8], "short") pral(alunos[8], "LONG") pral(alunos[8], "long") pral(alunos[1], "LONG"); for _,a in ipairs(alunos) do pral(a, "long") end pral(alunos[1], "SHORT"); for _,a in ipairs(alunos) do pral(a, "short") end #] [# # (find-angg "LUA/puro-calendario.lua") # (find-sh "lua51 ~/LUA/puro-calendario.lua") #] [# http://groups.google.com/group/engenharia-de-producao-uff-puro-22008/browse_thread/thread/c2956bcd27f6509f #] ] [# # Local Variables: # coding: raw-text-unix # modes: (fundamental-mode blogme-mode) # End: #]