Horários sincronizados: | (quando tiver) será dentro dos 246T34 [14h55–16h35] (Turma T04) 246N12 [18h45–20h25] (Turma T03) |
Contato: | thanos@imd.ufrn.br |
Playlists: | FMC2 2019.1 e Pré-requisitos para SetFunRel/FMC2 |
Study groups, etc.: | Através de links disponívis em notícias do SIGAA |
Monitoria/TA: | fmc.imd.ufrn.br |
Turmas anteriores: | .. |
Info
Pré-requisitos
É pré-requisito ter aprendido bem o conteudo transversal de FMC1. Sem aprender esses assuntos primeiro, não faz sentido se matricular em FMC2. (Obs.: aprender ≠ passar.)
Então—ANTES de começar—é bom estudar os:
- Do fmcbook os capítulos:
- Introducções
- Linguagens
- Demonstrações
- Naturais; recusão; indução
- A Matemática do Ensino Médio, vol I de (para esta disciplina os mais relevantes pré-requisitos são os Cap. 1–4)
- Comments on style de .
- A parte “Writing mathematics” do livro The tools of mathematical reasoning, de .
(Obs.: estudar ≠ ler.)
Disclaimer. Eu suponho que os alunos desta turma verificaram os pré-requisitos da disciplina e assumam responsabilidade sobre o seu conhecimento. Lembrete:
- pré-requisito
-
substantivo masculino
- condição prévia indispensável para se alcançar algo, seguir uma formação, fazer um curso, ocupar uma função etc.
- (pedagogia) num currículo, disciplina cursada obrigatoriamente antes de outra, por envolver conhecimentos prévios necessários ao estudo da segunda.
Conteúdo
- Conteúdo transversal (durante todas as unidades)
- Lógica proposicional e de predicados. Linguagem matemática de definições, teoremas, demonstrações, etc. Definições por recursão – provas por indução. A linguagem de conjuntos, funções, e relações.
- Conjuntos, Funções, e Relações
- Conjuntos, sua notação, suas operações, e seus leis. Uniões disjuntas, famílias e partições. Tuplas ordenadas e produto cartesiano. As operações unitárias de união e interseção. As relações de subconjunto, e de pertencer. Multiconjuntos e sequências. Funções, o conceito de função e suas propriedades. Intensão x extensão. Domínio, codomínio. Imagem, pre-imagem. Funções totais e parciais, injetivas, sobrejetivas, bijetivas. Aridade. Função constante, função identidade, projeções, funções características. Funções recursivas; recursão mutual. Funções de ordem superior. A notação de λ-calculus. Funções x predicados. Relações e suas propriedades. Relações de equivalência, clásses de equivalência. Operações em relações, inversão, composição, fechos.
- Aplicações e assuntos auxiliares
- Enumerações e conceito intuitivo de cardinalidade. λ-calculus, lógica combinatória. Elementos de teoria dos tipos. Fixpoints e recursão. Programação funcional. Programação lógica. Bancos de dados.
Bibliografia
(Conhece o libgen.is?)
Principal
- Matemática fundacional para computação [fmcbook]
- U0 (Prereqs): Capítulos 1–4
- U1: Capítulos 7,8,10
- U2: Capítulos 12,13
- U3: Capítulos (14),15,16,17
:
Auxiliar
Para cada um dos assuntos que tratamos, procure a secção «Leitura complementar» no capítulo correspondente do fmcbook para mais referências.
- Software Foundations, Volume 1: Logical Foundations [SF1] :
- Programming Languagae Foundations in Agda [PLFA] :
- Concrete Semantics [ConSem] :
- A book of abstract algebra (2–5, 6, 12, 17) :
- Algebra: Chapter 0 (1, 2) :
- Introduction to lattices and order (1, 2) [DP] :
- Conceptual Mathematics: A first introduction to categories (I, II) :
- Reading, Writing, and Proving: a closer look at Mathematics :
- How to prove it (1–3) :
- Notes on set theory (1, 2, 3–5, 6–7) [NST] :
- Satan, Cantor, and Infinity :
- A beginner's guide to mathematical logic (Volume 1) :
- Topics in Algebra (2.1–2.5 [skip # and *]) :
- Introduction to topology and modern analysis (1) :
- Advanced Calculus (0) :
- Lógica Aplicada à Computação website (TdC, R&I) :
Programação
- Thinking Functionally in Haskell :
- Programming in Haskell :
- Learn you a Haskell for great good :
- The art of Prolog :
Links
Dicas
- How to write mathematics badly (video lecture) :
- How to write mathematics :
- Comments on style :
- Mathematical writing :
- Por que tantos livros? Qual é o melhor? Vale a pena ler esse excerto do livro Linear Algebra de .
Tecnologias e ferramentas necessárias
(Instalem e criem uma conta para usar onde necessário.)
- PAPEL e LAPIS/CANETA
- TeX / LaTeX / ConTeXt
- Um aparelho com câmera e ferramentas para editar fotos
- Piazza
- Meet / Zoom
- Possivelmente precisarás usar algum proof assistant para as atividades (e.g.: Coq, Edukera, Isabelle, Lean, Agda, ...)
Obs.: Já que o formato remoto é ainda em modo experimental, as tecnologías/ferramentas seguintes podem mudar durante a disciplina—exceto a primeira.
Piazza
Vamos usar principalmente o Piazza.
Mais informações no próprio Piazza.
Regras
- Nunca escreva algo que você mesmo não sabe explicar: (i) o que significa; (ii) seu papel na tua resolução. Por exemplo: um aluno escreveu a frase seguinte na sua demonstração: «Como f é cancelável pela esquerda temos que g=h». Ele deve saber o que significa ser cancelável pela esquerda é também explicar como isso foi usado e/ou o que isso tem a ver com essa parte da sua demonstração.
- Qualquer trabalho poderá ser questionado em forma de prova oral via videochamada, em modo privado ou aberto. Se um aluno não consegue explicar o que ele mesmo escreveu numa resolução, será considerado plágio e o aluno será reprovado imediatamente por nota e por faltas.
- Participando, nunca dê uma resposta que tu não pensou sozinho.
- Não tente “forçar a barra” perguntando ou respondendo coisas aleatórias com objetivo único de ganhar pontos. Os pontos de participação não correspondem em apenas perguntas ou dúvidas que mostram interesse. O interesse é implícito pelo fato que tu escolheu matricular nesta turma—não vale pontos.
- Não procurem resoluções em qualquer lugar fora dos indicados no cada homework. O único recurso aceitável para procurar ajuda é o Piazza.
- Proibido consultar o apêndice de resoluções do fmcbook durante a disciplina exceto quando for explicitamente permitido por mim. (Os apêndices de dicas são permitidos sim.)
Avaliação e faltas
Disclaimer. Eu suponho que os alunos desta turma escolheram se matricular por interesse em aprender seu conteudo. O ideal seria ignorar assuntos irrelevantes de avaliação, presenças, carga horária, etc., e se jogar nos estudos.
Avaliação
A nota final de cada aluno vai ser principalmente baseada em: (i) provas orais com videochamada em modo privado e/ou aberto; (ii) sua participação (que inclue correação de trabalhos de outros alunos); (iii) suas resoluções de homeworks (os optativos também como pontos extra); Os homeworks podem envolver simular uma prova escrita.
Presenças / Faltas
As presenças/faltas serão cadastradas baseadas na participação e na entrega dos trabalhos. Nenhuma das duas coisas é opcional, logo aluno que não participa ou não entrega os trabalhos será reprovado por faltas.
Problem Sets
Dynamic content
Pontos
Pontos de participação
Homework
No Piazza.
Histórico
No Piazza (Tanto de aulas para assistir (#aula), quanto de encontros sincronizados (#meta).)
Futuro (fluido)
Sem futuro. O semestre acabou!