| |
SumáriosAulas
T (2006.02.21): Apresentação da Disciplina. Introdução aos sistemas reactivos. Álgebras e Coalgebras.
Tipos indutivos e coindutivos. Interação e comportamento. Comportamento dos autómatos determinísticos.
-- LuisSoaresBarbosa - 21 Feb 2006
|
Métodos de Programação IV
(Modelação e Cálculo de Sistemas Reactivos)
2005-2006
Responsável pela Disciplina
Aula Extra
Em substituição das aulas da semana 22-26, será realizada uma sessão de dúvidas/exercícios no dia 13 de Junho
(terça-feira) às 14.30. Ponto de encontro na sala de atendimento do DI.
Questões a Abordar
- Como se caracteriza o paradigma de computação reactivo e qual o interesse do seu estudo?
- Como modelar sistemas reactivos e estudar a sua composicionalidade?
- Em que condições dois sistemas reactivos podem ser considerados equivalentes ou similares?
- Como captar as noções de mobilidade e reconfiguração dinâmica de sistemas reactivos?
- Como analisar e prototipar modelos de sistemas reactivos?
- Qual a relevância deste paradigma e cálculos associados para a Engenharia do Software?
Programa Resumido
- Interação e Comportamento
a. | Introdução aos sistemas reactivos. Noção de interacção e comportamento. |
b. | Caso 1: sequências infinitas (de acções) como tipo dos comportamento de autómatos determinísticos. |
c. | Noção de tipo coindutivo. Definição e prova por coindução. Cálculo de estruturas coindutivas. Comparação com os tipos indutivos. |
d. | Cálculo de sequências infinitas. Codificação em Haskell. |
e. | Caso 2: comportamento de autómatos não determinísticos e sistemas de transição de estados. |
f. | Definição de morfismo, simulação e bissimulação. Propriedades da bissimulação |
g. | Caso 3: dos autómatos aos processos. |
a. | Estado, interação e concorrência. Noção de processo, traço e comportamento. |
b. | Operadores sobre processos. O cálculo CCS: sintaxe e semântica operacional. |
c. | Equivalência estrita, equivalência observacional e igualdade de processos. Leis. |
d. | Concorrência e não determinismo: o teorema da expansão. |
e. | Discussão de exemplos. Modelação e análise de problemas no CWB |
f. | Prototipagem funcional de sistemas reactivos |
* Sistemas Reactivos com Mobilidade
a. | Noção de mobilidade e reconfiguração dinâmica de processos. Exemplos e aplicações. |
b. | Introdução ao cálculo Pi: sintaxe, semântica. |
c. | Equivalências para processos móveis. Leis. |
f. | Discussão de exemplos. Modelação e análise de problemas no MWB |
Roteiro das Lições
Sessões Laboratoriais
Bibliografia
- Communicating and Mobile Processes: the Pi-Calculus, Robin Milner, Cambridge University Press, 1999. Trata-se do livro base para a disciplina. A primeira parte introduz o cálculo base de sistemas reactivos, popularizado sob a designação de Ccs, enquanto a segunda parte aborda o problema da mobilidade e reconfiguração dinâmica de sistemas, constituindo a referência base para o Pi-calculus.
- Communication and Concurrency. Robin Milner,Prentice Hall (Hoare Series in Computer Science), 1989. Obra anterior do mesmo autor, é suficiente como introdução a Ccs, mas omissa no que concerne à mobilidade. Se consultar a primeira edição deste livro (1989), tenha à mão a seguinte errata (ps.gz)
- The Pi-calculus: A theory of mobile processes, Sangiorgi, D. and Walker, D., Cambridge University Press, 2001.
- An Introduction to the _Pi-calculus. J. Parrow, draft (ps.gz) de capítulo análogo no Handbook of Process Algebra, Elsevier, 2001.
- O Concurrency Workbench será uma das ferramentas de suporte à disciplina. Neste site pode obter executáveis para Linux e Windows. Ao utilizar o CWB-NC, poderá ainda fazer uso do ccs2dot (tar.gz) paravisualização dos grafos de transição sobre GraphViz por alunos desta disciplina (João Ferreira, Alexandra Mendes e José Proença) em 2002-03.
- Supõe-se familiaridade com a linguagem Haskell e com o cálculo de programas funcionais estudado em Métodos de Programação 1. A primeira parte do livro Algebra of Programming (R. Bird e O. de Moor, Prentice-Hall, 1997) é uma excelente introdução a esse cálculo.
Critérios de Avaliação
- Componente Teórica (Exame): 70% (nota mínima de 8 valores)
- Componente Prática: 30%
- A componente prática da nota resulta da avaliação do desempenho nas aulas TP e da realização de uma Ficha de Trabalho, de resolução individual e fora do tempo lectivo, de acordo com o calendário seguinte:
Proposta | Entrega | Enunciado | Informação Complementar |
22 Abril 2006 | 29 Maio 2006 | (pdf) | (pdf) |
Resultados da Avaliação (26 Julho 2006)
Classificações dos Exames, Prática e Nota Final (Época Normal) (pdf)
Classificações dos Exames, Prática e Nota Final (Época Recurso) (pdf)
-- LuisSoaresBarbosa - 26 Jul 2006
|
|
 Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors. Ideas, requests, problems regarding TWiki? Send feedback
|
|
| |