Saltar para:
Logótipo
Você está em: Início > CC333
Mapa das Instalações
FC6 - Departamento de Ciência de Computadores FC5 - Edifício Central FC4 - Departamento de Biologia FC3 - Departamento de Física e Astronomia e Departamento GAOT FC2 - Departamento de Química e Bioquímica FC1 - Departamento de Matemática

Computabilidade

Código: CC333     Sigla: CC333

Áreas Científicas
Classificação Área Científica
OFICIAL Ciência de Computadores

Ocorrência: 2014/2015 - 2S

Ativa? Sim
Unidade Responsável: Departamento de Ciência de Computadores
Curso/CE Responsável: Licenciatura em Geologia

Ciclos de Estudo/Cursos

Sigla Nº de Estudantes Plano de Estudos Anos Curriculares Créditos UCN Créditos ECTS Horas de Contacto Horas Totais
L:AST 0 Plano de Estudos a partir de 2008 3 - 7,5 -
L:B 0 Plano de estudos a partir de 2008 3 - 7,5 -
L:F 1 Plano de estudos a partir de 2008 3 - 7,5 -
L:G 0 P.E - estudantes com 1ª matricula anterior a 09/10 3 - 7,5 -
P.E - estudantes com 1ª matricula em 09/10 3 - 7,5 -
L:M 1 Plano de estudos a partir de 2009 3 - 7,5 -
L:Q 0 Plano de estudos Oficial 3 - 7,5 -

Língua de trabalho

Português

Objetivos

Estudo e comparação de vários modelos de computação
(Turing-completos), do seu poder computacional e das suas limitações.

Ao completar este curso espera-se que os alunos
- conheçam os modelos de computação clássicos utilizados no estudo da
computabilidade de diversos problemas;
- saibam provar a equivalência de vários modelos Turing-completos;
- conheçam os resultados e métodos mais importantes no estudo da
computabilidade e complexidade;
- saibam classificar exemplos concretos de problemas e provar a sua
(in)decidibilidade dentro das diversas classes de computabilidade.

Resultados de aprendizagem e competências

Os alunos são expostos a vários dos modelos de computação Turing-completos standard, como as máquinas de registo, máquinas de Turing e as funções recursivas. Para além da prova da equivalência dos diferentes modelos, estes são também utilizados para identificar diferentes problemas indecidíveis. São usadas diferentes técnicas, como o método da diagonalização e da redução entre linguagens. Para adquirirem experiência em identificar a complexidade computacional de problemas concretos, faz-se uma introdução às classes P e NP, completude NP e o teorema de Cook, voltando também à técnica da redução.

Modo de trabalho

Presencial

Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)

Conhecimentos de alguns modelos de computação como Autómatos finitos, Expressões regulares e Gramáticas independentes. Conhecimentos básicos de Lógica.

Programa

Noção de linguagem/problema (semi-)decidível. Revisão de alguns
modelos de computação (DFA's, NFA's, CFG's e PDA's) e do seu poder
computacional. Máquinas de registo. Tese de Church-Turing. Hierarquia
de Chomsky. Estudo de outros modelos de computação Turing-completos e
sua equivalência (máquinas de Turing, funções recursivas). Enumerabilidade efetiva das instâncias de um modelo
de computação. Método da diagonalização e indecidibilidade do problema
da paragem. Redução "muitos para um" entre linguagens. Introdução à teoria de complexidade: classes P e NP; completude NP; teorema de Cook e outros problemas NP-completos.

Bibliografia Obrigatória

Introduction to Automata Theory, Languages and Computation, Hopcroft, Motwani and Ullmann.
Recursion theory, Phillips, in Handbook of logic in computer science (vol. 1), Oxford University Press.
Computabilidade e Decidibilidade, Sabine Broda.

Bibliografia Complementar

Introduction to the Theory of Computation, Michael Sipser.
Models of Computation - An Introduction to Computability Theory, Maribel Fernández.
Oded Goldreich; P, NP, and NP-Completeness - The Basics of Computational Complexity, Cambridge University Press, 2010

Métodos de ensino e atividades de aprendizagem

Aulas teóricas de exposição dos conteúdos programáticos.
Aulas práticas de resolução de exercícios propostos semanalmente.

Tipo de avaliação

Avaliação distribuída com exame final

Componentes de Avaliação

Designação Peso (%)
Exame 100,00
Total: 100,00

Obtenção de frequência

N/a

Fórmula de cálculo da classificação final

Classificação final corresponde à classificação obtida
- como média aritmética dos dois testes a realizar durante o semestre (cada um com nota mínima de 7 valores);
- ou no exame final.

No caso do aluno ter aprovação por testes e mesmo assim optar por fazer exame final, ficará com a melhor das duas classificações.

Provas e trabalhos especiais

Haverá dois testes não obrigatórios com a valorização de 20 valores cada, a realizar durante o semestre. 

Melhoria de classificação

No caso do aluno ter aprovação por testes e mesmo assim optar por fazer exame final, ficará com a melhor das duas classificações.

Recomendar Página Voltar ao Topo
Copyright 1996-2025 © Faculdade de Ciências da Universidade do Porto  I Termos e Condições  I Acessibilidade  I Índice A-Z  I Livro de Visitas
Página gerada em: 2025-06-15 às 19:56:01 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias