Antecedentes :
Estou chegando ao final do meu mestrado em matemática e vou começar um doutorado em lógica em agosto. Quanto mais lógica eu estudo, mais teórica a ciência da computação me expõe, por exemplo, teoria da recursão, cálculo lambda, mas o CS subjacente é escovado sob o tapete. Minhas principais áreas de interesse - teoria dos conjuntos e teoria das categorias - também têm aplicações em ciência da computação, mas até agora só as estudei do ponto de vista da matemática pura.
Problema:
Às vezes, minha falta de formação em ciência da computação dificulta a motivação ou a intuição por trás do que está acontecendo ou de como poderia ser aplicada. Eu supero, mas acho que seria mais saudável se ramificar um pouco ... me ocorre que, para o benefício de minhas pesquisas futuras, eu deveria aprender um pouco de ciência da computação.
A maioria dos livros de CS que eu olhei não foi muito adequada para meus propósitos, sendo muito básicos e não técnicos ou pressupondo o tipo de histórico de CS que eu não tenho. Eles parecem ser voltados para pessoas que possuem bastante conhecimento em informática, mas que têm pouco em termos matemáticos - minha situação é o oposto.
Questão:
Que livros ou outros recursos existem que poderiam ajudar um matemático que se tornou lógico em seu objetivo de obter um conhecimento prático da ciência da computação (teórica)?
Estou procurando algo mais saudável do que algumas palestras em seminários e mais aprofundado que o The New Turing Omnibus , mas não tenho tempo nem recursos para fazer outro curso de graduação. (Pode ser que eu esteja pedindo algo que não existe.)
Desculpe se a pergunta é muito vaga ou incorreta. Eu senti que era mais adequado aqui do que no MSE, mas ficarei feliz em migrá-lo, se necessário.
fonte
Respostas:
Você está essencialmente pedindo recursos que permitam transformar seu conhecimento existente de lógica, teoria da recursão e teoria das categorias em conhecimento sobre ciência da computação teórica. .
Aqui estão algumas sugestões; meu conselho é escolher um e aprofundar-se. Com exceção do livro de Taylor (que explica isso), minhas sugestões pressupõem que você tenha sido exposto a um cálculo lambda suficiente e a uma teoria de categorias para ter visto interpretações categóricas do cálculo lambda de tipo simples.
Livro de Paul Taylor Fundamentos práticos da matemática
Na IMO, esta é provavelmente a melhor introdução técnica à relação entre lógica, teoria de categorias e computação. Ele pressupõe quase nenhum pré-requisito, mas entra em águas muito profundas muito rapidamente e certamente tributará (e melhorará muito) sua maturidade matemática.
Notas de Wesley Phoa: Introdução às fibrações, teoria de Topos, topos eficazes e conjuntos modestos
Estas são algumas notas de palestras que Wesley Phoa escreveu. Se você é categoricamente fluente, essas notas oferecem um caminho muito rápido para entender algumas das construções mais importantes na teoria da realizabilidade e dos topos (a saber, a construção dos topos efetivos).
Livro de Bart Jacobs - Lógica Categórica e Teoria dos Tipos
Essa é uma das referências definitivas sobre a semântica categórica da teoria dos tipos. Também é muito grande.
Ao mesmo tempo em que você estiver lendo um desses livros, aconselho fazer o download e aprender como usar a linguagem de programação Agda . Essa linguagem implementa as sofisticadas teorias de tipos descritas acima e, na IMO, é incrivelmente útil ver como as construções semânticas geralmente bastante sutis se destacam na teoria dos tipos.
Andrej Bauer provavelmente pode lhe dar conselhos ainda melhores. Talvez ele possa ser persuadido a postar. :)
fonte
Os dois livros que vêm à mente são
Introdução à Teoria da Computação por Sipser
e
Introdução aos Algoritmos por Cormen et al.
Concordo com usul, que disse que a ciência da computação teórica é uma área ampla e que poderíamos dar melhores referências se você fosse mais específico sobre o que deseja aprender.
fonte