Two tracks, one graph

Computer Science holds the order; Complementary Studies keeps its own

Computer Science is the recommended path — modules in order, then specialization, then research. Everything you already study lives in Complementary Studies, with its own order and its own XP, linked to the path instead of duplicated into it.

Ver como grafo →
Stage · Your StateKnowledge
Module

Fundamentos da Ciência da Computação

480h plannedNot started

Programação e Pensamento Computacional

  • programação
  • abstração
  • funções
  • recursão
  • decomposição

Matemática Discreta e Lógica

  • lógica proposicional
  • lógica de predicados
  • conjuntos
  • indução
  • provas
  • combinatória

Estruturas de Dados I

  • arrays
  • listas encadeadas
  • pilhas
  • filas
  • tabelas hash
  • árvores

Probabilidade e Estatística

  • base para algoritmos, IA, ML e pesquisa

Cálculo

  • limites
  • derivadas
  • integrais
  • sequências e séries
  • cálculo de várias variáveis
  • equações diferenciais

Perguntas e Pensamento Científico

  • transformar curiosidade em uma pergunta computacional
Module

Algoritmos e Software

532h plannedNot started

Estruturas de Dados II

  • árvores balanceadas
  • heaps
  • grafos
  • tries
  • union-find

Algoritmos

  • ordenação
  • busca
  • divisão e conquista
  • guloso
  • programação dinâmica
  • algoritmos em grafos
  • caminhos mínimos
  • MST

Construção de Software

  • modularidade
  • testes
  • depuração
  • controle de versão
  • design de API
  • arquitetura de software

Paradigmas de Programação

  • imperativa
  • orientada a objetos
  • funcional
  • lógica
  • concorrente
  • declarativa

Computabilidade e Complexidade

  • máquinas de Turing
  • decidibilidade
  • reduções
  • P/NP
  • classes de complexidade

Laboratório de Algoritmos

  • Dijkstra
  • A*
  • PageRank
  • tabelas hash
  • B-trees
  • algoritmos de ordenação

Programação Linear e Otimização

  • método simplex
  • dualidade
  • preços-sombra
  • programação inteira
  • branch and bound
  • fluxo máximo/corte mínimo

Métodos Numéricos

  • erro numérico
  • busca de raízes
  • sistemas lineares
  • interpolação
  • integração numérica
  • resolução numérica de equações diferenciais

Linguagens Formais e Autômatos

  • autômatos finitos
  • expressões regulares
  • provas de não regularidade
  • gramáticas livres de contexto
  • autômatos com pilha
Module

Como os Computadores Realmente Funcionam

400h plannedNot started

Lógica Digital e Organização de Computadores

  • portas lógicas
  • ULA
  • CPU
  • memória
  • conjunto de instruções
  • computador

C e Assembly

  • ponteiros
  • memória
  • pilha
  • heap
  • assembly
  • ABI
  • convenções de chamada

Arquitetura de Computadores

  • pipelines
  • cache
  • previsão de desvio
  • hierarquia de memória
  • multicore
  • SIMD
  • GPUs

Sistemas Operacionais I

  • processos
  • threads
  • escalonamento
  • memória virtual
  • sistema de arquivos
  • concorrência

Laboratório de Sistemas

  • construir uma CPU
  • assembly
  • C
  • gerenciador de memória
  • escalonador
  • sistema de arquivos
Module

Sistemas

314h plannedNot started

Sistemas Operacionais II

  • kernel
  • chamadas de sistema
  • IPC
  • sincronização
  • virtualização
  • fronteiras de segurança

Redes de Computadores

  • física
  • enlace
  • IP
  • roteamento
  • TCP
  • HTTP
  • aplicações distribuídas

Sistemas de Banco de Dados

  • modelo relacional
  • SQL
  • motores de armazenamento
  • índices
  • otimizador de consultas
  • transações
  • recuperação

Sistemas Distribuídos I

  • relógios
  • RPC
  • replicação
  • consistência
  • consenso
  • tolerância a falhas

Computação Paralela

  • arquiteturas paralelas
  • decomposição
  • speedup e escalabilidade
  • OpenMP
  • MPI
Module

Software + Computação Distribuída

500h plannedNot started

Engenharia de Software

  • requisitos
  • arquitetura
  • testes
  • CI/CD
  • observabilidade
  • dívida técnica

Sistemas Distribuídos II

  • Raft
  • Paxos
  • tolerância a falhas bizantinas
  • bancos de dados distribuídos
  • consistência eventual
  • CRDTs

Sistemas Distribuídos III

  • variantes de consenso
  • gerenciamento de grupo
  • consistência causal
  • replicação de banco de dados
  • sistemas peer-to-peer
  • shared logs
  • ordenação na rede

Linguagens de Programação

  • interpretadores
  • sistemas de tipos
  • semântica
  • programação funcional
  • sistemas de runtime

Compiladores

  • lexer
  • parser
  • AST
  • análise semântica
  • IR
  • otimização
  • código de máquina

Segurança e Criptografia

  • criptografia
  • autenticação
  • autorização
  • sistemas seguros
  • segurança de redes
  • modelagem de ameaças

Laboratório de Sistemas Distribuídos

  • construir um banco de dados replicado e depois quebrá-lo: partição de rede, falha de nó, desvio de relógio, perda de pacotes
Module

Inteligência + Teoria

500h plannedNot started

Inteligência Artificial

  • busca
  • planejamento
  • representação de conhecimento
  • raciocínio
  • tomada de decisão
  • IA probabilística

Aprendizado de Máquina

  • probabilidade
  • álgebra linear
  • otimização
  • aprendizado de máquina
  • deep learning

Mineração de Dados

  • processo KDD
  • data warehouses e OLAP
  • padrões frequentes
  • agrupamento
  • detecção de outliers
  • mineração de texto

Deep Learning

  • redes neurais
  • CNNs
  • RNNs
  • transformers
  • aprendizado de representação
  • modelos generativos

Teoria da Informação

  • entropia
  • informação
  • compressão
  • comunicação
  • codificação
  • limites de informação

Métodos Formais

  • especificação formal
  • verificação
  • model checking
  • prova de teoremas
  • corretude de programas

Laboratório de IA / ML

  • pergunta
  • hipótese
  • dataset
  • modelo
  • experimento
  • avaliação
  • reproduzir
  • desafio
Module

Pós-Graduação

180h plannedNot started

Escrita Acadêmica

  • artigos
  • LaTeX
  • resumos
  • estrutura de dissertação
  • publicação

Estatística e Experimentos de Pesquisa

  • teste de hipóteses
  • desenho experimental
  • significância
  • tamanho de efeito
  • reprodutibilidade

Cultura Acadêmica de Pós-Graduação

  • revisão por pares
  • ética em pesquisa
  • orientação
  • conferências
  • defesa de tese

Especialização

Choose one track of depth after the modules above.

Trilha A — Sistemas

  • SO avançado
  • sistemas distribuídos
  • bancos de dados
  • computação em nuvem
  • computação de alto desempenho
  • arquitetura de computadores
Not started

Trilha B — IA

  • aprendizado de máquina avançado
  • deep learning
  • visão computacional
  • PLN
  • aprendizado por reforço
  • IA generativa
Not started

Trilha C — Teoria

  • algoritmos avançados
  • complexidade
  • criptografia
  • teoria da informação
  • métodos formais
  • geometria computacional
Not started

Trilha D — Software

  • linguagens de programação
  • compiladores
  • sistemas de tipos
  • análise de programas
  • verificação de software
  • ferramentas para desenvolvedores
Not started

Computação Gráfica

  • pipeline de renderização
  • transformações geométricas
  • rasterização
  • sombreamento e iluminação
  • ray tracing
Not started

Processamento de Imagens

  • representação de imagens
  • filtragem espacial
  • detecção de bordas
  • segmentação
  • domínio da frequência
  • compressão
Not started

Pesquisa e Computação Independente

No final subject. One question of your own.

  • pergunta
  • literatura
  • artigos
  • hipótese
  • implementação
  • experimento
  • resultado
  • reflexão
  • nova pergunta
Enter →