Saltar para:
Logótipo
Você está em: Início > CC3012
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

Programação em Lógica

Código: CC3012     Sigla: CC3012     Nível: 300

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

Ocorrência: 2023/2024 - 2S Ícone do Moodle

Ativa? Sim
Página Web: http://www.dcc.fc.up.pt/~vsc/PL24
Unidade Responsável: Departamento de Ciência de Computadores
Curso/CE Responsável: Licenciatura em Ciência de Computadores

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:B 0 Plano de Estudos Oficial 3 - 6 48 162
L:CC 23 Plano estudos a partir do ano letivo 2021/22 2 - 6 48 162
3
L:F 1 Plano de Estudos Oficial 3 - 6 48 162
L:G 0 Plano estudos a partir do ano letivo 2017/18 2 - 6 48 162
3
L:IACD 1 Plano Oficial a partir do ano letivo 2021/22 3 - 6 48 162
L:M 0 Plano de Estudos Oficial 2 - 6 48 162
3
L:Q 0 Plano estudos a partir do ano letivo 2016/17 3 - 6 48 162

Língua de trabalho

Português - Suitable for English-speaking students

Objetivos

- Transmitir aos estudantes conceitos fundamentais de programação em lógica
- Desenvolver nos estudantes competências de programação em Prolog
- Expor a relação entre programação em lógica e lógica matemática
- Despertar nos estudantes a motivação para a programação em lógica
- Apresentar aos estudantes aplicações práticas de programação em lógica
- Envolver os estudantes em projetos práticos de programação em lógica
- Relacionar a disciplina com outras do curso

Resultados de aprendizagem e competências

Ao concluir a disciplina, os estudantes devem ser capazes de:
- Identificar em que tipos de problemas a  programação lógica deve ou pode ser aplicada
- Compreender as limitações das linguagens lógicas e das suas implementações
- Saber desenvolver programas de relativa complexidade
- Saber resolver problemas com relativa complexidade usando programação em lógica
- Conhecer bem a sintaxe e semântica da linguagem Prolog
- Relacionar o conhecimento adquirido com outras unidades curriculares do curso

Modo de trabalho

Presencial

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

Lógica computacional.

Programa

Introdução à programação em lógica e à linguagem Prolog
- O poder expressivo do Prolog. Representação de conhecimento.

Como funciona a programação em lógica
- Unificação, Substituição, Prova, Resolução SLD, Backtracking. Nagação por falha.

Programação em Prolog
- Aritmética com inteiros em Prolog usando termos. Listas em Prolog. Cut, negação por falha, cut-fail.


Prolog avançado
- Diferença de listas e estruturas incompletas. Predicados de segunda ordem. Programação de segunda ordem. Implementação. Programação lógica com restrições.

Bibliografia Obrigatória

Sterling Leon; The art of prolog. ISBN: 0-262-19250-0
C. J. Hogger; Essentials of logic programming. ISBN: 0-19-853832-4

Bibliografia Complementar

Ivan Bratko; Prolog programming for artificial intelligence. ISBN: 978-0-201-14224-2 pbk
John Wylie Lloyd; Foundations of logic programming. ISBN: 978-3-540-18199-6

Métodos de ensino e atividades de aprendizagem

- aulas teóricas expositivas e com discussões de grupo.
- aulas práticas com tarefas teóricas e de programação realizadas em laboratório e onde os estudantes têm oportunidade de discutir problemas e soluções em grupo e com o professor.
- trabalhos em grupo realizados nas aulas práticas e fora delas.

Software

SWI Prolog

Palavras Chave

Ciências Físicas > Ciência de computadores > Cibernética > Inteligência artificial
Ciências Físicas > Ciência de computadores > Programação
Ciências Físicas > Matemática > Lógica matemática

Tipo de avaliação

Avaliação distribuída sem exame final

Componentes de Avaliação

Designação Peso (%)
Trabalho prático ou de projeto 20,00
Teste 80,00
Total: 100,00

Componentes de Ocupação

Designação Tempo (Horas)
Estudo autónomo 80,00
Frequência das aulas 48,00
Elaboração de projeto 34,00
Total: 162,00

Obtenção de frequência

Nota maior do que zero na componente de avaliação contínua.

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

Nota Final = 0.4*T1 + 0.4*T2 + 0.2*TR

T1= Teste 1
T2 = Teste 2
TR = Trabalho prático

Trabalho de estágio/projeto

Consiste de atividade teórico-prática. Estudantes devem entregar a implementação e um relatório explicativo. Se houver tempo, farão apresentação do seu projeto.

Avaliação especial (TE, DA, ...)

A avaliação na época especial consiste na realização de uma prova em sala de aula ou laboratório.

Melhoria de classificação

Exame de recurso para melhorar apenas a nota dos dois testes.
Recomendar Página Voltar ao Topo
Copyright 1996-2024 © 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: 2024-11-09 às 09:57:29 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias