Disciplina da Secção de Ciência da Computação.
Cursos:
LEIC
(Licenciatura em Engenharia Informática e de Computadores). Ano:
3. Semestre: 1.
LMAC (Licenciatura
em Matemática e Computação). Ano: 3. Semestre: 1.
Professora Responsável: Paula Gouveia.
Semestre corrente: Avisos e outras informações.
Introdução aos fundamentos lógicos da engenharia da programação: lógica temporal para especificação e verificação de sistemas concorrentes e reactivos. Experimentação com a ferramenta STeP: descrição de sistemas concorrentes na linguagem SPL; especificação e verificação de propriedades de sistemas concorrentes.
Sistemas de transições. Linguagem SPL (Simple Programming Language): sintaxe e semântica sobre sistemas de transições justos. Exemplos incluindo diversos casos típicos no contexto dos sistemas distribuídos (eg protocolos). Lógica temporal linear: sintaxe e semântica. Especificação temporal de sistemas concorrentes e reactivos: propriedades de segurança, garantia, resposta e persistência. Verificação de programas: sistema dedutivo; verificação algorítmica em sistemas de transições finitos. Especificação e verificação de sistemas com a ferramenta STeP (Stanford Temporal Prover).
Última actualização: 28 de Setembro de 1999.