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

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

CSP: Semântica e Refinamento Alexandre Mota

Apresentações semelhantes


Apresentação em tema: "CSP: Semântica e Refinamento Alexandre Mota"— 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 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 7

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 13 P Q M TFFD

14 Propriedades Importantes Relação de refinamento deve ser uma ordem parcial:  S  S S(Reflexiva) 2.  S, T  S T  T S  S = T(Anti-Simétrica) 3.  S, T, U  S T  T U  S U(Transitiva) 4.  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 15

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) 16 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) 17

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

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

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

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) 21 = |

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


Carregar ppt "CSP: Semântica e Refinamento Alexandre Mota"

Apresentações semelhantes


Anúncios Google