A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

CSP: Semântica e Refinamento

Apresentações semelhantes


Apresentação em tema: "CSP: Semântica e Refinamento"— Transcrição da apresentação:

1 CSP: Semântica e Refinamento
Alexandre Mota

2 Semântica Como qualquer linguagem formal, CSP pode ser entendida usando-se uma das seguintes semânticas Operacional Denotacional Algébrica

3 Semântica Operacional
Interpreta CSP através de diagramas de transições (LTS) LTS (ou Labelled Transition Systems) são grafos Usam-se firing rules sobre cada operador de CSP para criar LTS

4 Firing Rules STOP SKIP e -> P Onde
Não há, pois não se criam transições SKIP e -> P Onde comms( ) =

5 Firing Rules P |~| Q P [] Q

6 Semântica Denotacional
Interpreta linguagem usando modelos matemáticos tradicionais Conjuntos, seqüências, funções, etc. É mais abstrato que a semântica operacional, porém mais concreto que a algébrica

7 Modelos Denotacionais
Modelos: Traces (T), Failures (F), Failures-Divergences (FD) Poder de descrição aumenta de T para FD Capturam-se mais aspectos (comportamento): Não-determinismo (safety ou segurança) Deadlock Livelock

8 Modelo de Traces

9 Modelo de Falhas

10 Modelo de Divergências
E algumas falhas são incrementadas … (slide anterior)

11 Semântica Algébrica Significado da linguagem é dado em termos de leis algébricas P [] Q = Q [] P (Comutatividade – []) Para confirmação da validade, requer prova usando semântica denotacional em falhas-divergências

12 Algumas leis

13 Refinamento Trata-se de uma relação de satisfação P Q M T F FD

14 Propriedades Importantes
Relação de refinamento deve ser uma ordem parcial:  S  S S (Reflexiva)  S, T  S T  T S  S = T (Anti-Simétrica)  S, T, U  S T  T U  S U (Transitiva)  S, T  S T  C[S] C[T] (Monotônica)

15 Igualdade e Refinamento
Várias noções de refinamento: P [ T = Q P [ F = Q P [ FD = Q e várias de igualdade: P =T Q P =F Q P =FD Q

16 Definição Refinamento em CSP é definido a partir da relação  da Teoria dos Conjuntos Assim P [ T = Q  T(Q)  T(P) P [ F = Q  T(Q)  T(P) e F(Q)  F(P) P [ FD = Q  F(Q)  F(P) e D(Q)  D(P) Obs.: F(P) = F(P)  { (s, X) | s  D(P) }

17 Exercício 1 Mostre que os seguintes refinamentos são válidos:
P [ ] Q = P |~| Q P [ ] Q P, ou Q (a  b  STOP) (a  STOP)

18 Exercício 2 Mostre a validade dos seguintes refinamentos:
P |~| Q P, ou Q (a  b  STOP) (a  STOP)

19 Exercício 3 Mostre a validade dos seguintes refinamentos:
P |~| Q P, ou Q

20 Propriedades Clássicas
Determinismo Algoritmo próprio… Ausência de Deadlock RUN(sigma) P Ausência de Livelock CHAOS(sigma) P

21 Verificação de Modelo vs Refinamento
Verificação de modelo consiste em: M f Enquanto que verificação de refinamento consiste no que já vimos anteriormente Coincidem quando pode-se encontrar processo CSP P que foi construído para ter a propriedade f (Ex.: ausência de deadlock e livelock) = |

22 Referências Roscoe, A.W. The Theory and Practice of Concurrency. Prentice-Hall, 1998. Hoare, C.A.R. Communicating Sequential Processes. Prentice-Hall, 1985.


Carregar ppt "CSP: Semântica e Refinamento"

Apresentações semelhantes


Anúncios Google