Saltar para:
Logótipo
Você está em: Início > EIC0026

Programação em Lógica

Código: EIC0026     Sigla: PLOG

Áreas Científicas
Classificação Área Científica
OFICIAL Programação

Ocorrência: 2007/2008 - 1S

Ativa? Sim
Página Web: http://paginas.fe.up.pt/~eol/LP/lp.html
Unidade Responsável: Secção de Informática
Curso/CE Responsável: Mestrado Integrado em Engenharia Informática e Computação

Ciclos de Estudo/Cursos

Sigla Nº de Estudantes Plano de Estudos Anos Curriculares Créditos UCN Créditos ECTS Horas de Contacto Horas Totais
LEIC 0 Plano de estudos de transição para 2006/07 3 - 5 56 135
MIEEC 0 Plano de estudos oficial a partir de 2007/08 4 - 5 56 135
MIEIC 121 Plano de estudos oficial a partir de 2006/07 3 - 5 56 135

Língua de trabalho

Português

Objetivos

Adquirir familiaridade com os paradigmas da Programação em Lógica e Programação com Restrições e com a linguagem Prolog.
Desenvolver as competências de raciocínio abstracto e de representação de problemas de forma declarativa.
Reconhecer as categorias de problemas em que a Programação em Lógica (com Restrições) é particularmente adequada.
Experimentar e praticar as técnicas de programação em Prolog e de programação com restrições.
Construir aplicações completas em Prolog com eventual ligação a outras linguagens.
Desenvolver as competências de programação requeridas nas disciplinas da área da Inteligência Artificial.

Programa

INTRODUÇÃO À PROGRAMAÇÃO EM LÓGICA. História e Fundações do Prolog. Aplicações do Prolog. Sistemas de Programação em Lógica. Fundações Teóricas da Programação em Lógica.

PROGRAMAÇÃO EM LÓGICA. Conceitos Básicos: Predicados, Claúsulas, Factos, Regras, Consultas, Variáveis Lógicas e Instanciação. Programação estilo bases de dados. Programação com recursividade. Modelo de computação dos programas em lógica. Rastreios e árvores de pesquisa. Resolução e unificação.

A LINGUAGEM PROLOG. Modelo de Execução do Prolog. Comparação com as Linguagens Convencionais. Ordem das Regras e dos Objectivos. Recursividade e Retrocesso (Backtracking). Terminação. Operadores e Aritmética. Inspecção de Estruturas. Processamento de Listas. Predicados meta lógicos. Controlo: Cuts e Negação. Predicados extra lógicos.

PROLOG AVANÇADO. Programação não determinística. Estruturas de dados incompletas. Meta-interpretadores. Técnicas de Pesquisa. Gramáticas de Claúsulas Definidas.

METODOLOGIA DE PROGRAMAÇÃO EM LÓGICA. Princípios gerais de boa programação. Como pensar em Prolog? Estilo de programação. Depuração de programas. Eficiência e optimização.

PROGRAMAÇÃO COM RESTRIÇÕES. Restrições e Satisfação de Restrições. Restrições em domínios finitos. Programação em Lógica com Restrições (PLR). Controlo da pesquisa. Ordenação de variáveis e valores. Modelização de Problemas em PLR. Sistemas de programação com restrições. Programação com restrições no Sicstus Prolog.

Métodos de ensino e atividades de aprendizagem

As aulas teóricas são usadas para exposição formal da matéria, acompanhada da apresentação de exemplos e sua discussão.
Nas aulas teórico-práticas são propostos exercícios de programação e acompanha-se o desenvolvimento dos trabalhos práticos dos alunos.

Tipo de avaliação

Avaliação distribuída com exame final

Componentes de Avaliação

Descrição Tipo Tempo (Horas) Peso (%) Data Conclusão
Aulas da disciplina (estimativa) Participação presencial 68,00
Total: - 0,00

Obtenção de frequência

Um aluno inscrito obtém frequência se não exceder o limite de faltas legalmente estabelecido e obtiver um mínimo de 30% na avaliação dos trabalhos práticos.

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

Trabalho- Nota global dos Trabalhos Práticos
Exame - Nota final do Exame
Final = 50% * Trabalho + 50% * Exame
A nota mínima exigida no Exame para a obtenção de aprovação é de 6 valores.

Provas e trabalhos especiais

Não há provas nem trabalhos especiais. A disciplina tem 50% de avaliação prática requerida a todos os inscritos e que é o resultado da realização dos trabalhos práticos nas épocas em que são propostos.

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

A avaliação prática, realizada durante o semestre de funcionamento da disciplina, é exigida a todos os alunos, independentemente do regime de inscrição e da necessidade de obter avaliação de frequência. A avaliação prática é baseada na realização de 2 trabalhos práticos durante o semestre, em períodos divulgados na página da disciplina. Os alunos inscritos ao abrigo de regimes especiais sem frequência de aulas práticas devem acordar com os docentes as sessões de avaliação prática a que irão comparecer.

Melhoria de classificação

Melhoria da componente de exame: realizada nas épocas de exame disponíveis.
Melhoria da classificação distribuída: A componente distribuída da avaliação é avaliação prática e só pode ser melhorada nas épocas de realização de trabalhos práticos da disciplina

Observações

Embora a disciplina não tenha pré-requisitos especiais, conhecimentos adquiridos nas disciplinas de Programação I e II, Algoritmos e Estruturas de Dados I e II e Lógica Computacional, são muito úteis para a disciplina de Programação em Lógica.
Recomendar Página Voltar ao Topo
Copyright 1996-2024 © Faculdade de Engenharia da Universidade do Porto  I Termos e Condições  I Acessibilidade  I Índice A-Z  I Livro de Visitas
Página gerada em: 2024-07-19 às 20:30:48 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias