Sem - PowerPoint PPT Presentation

About This Presentation
Title:

Sem

Description:

Title: Sem ntica Operacional Author: Ana Cavalcanti Last modified by: Ana L cia C. Cavalcanti Created Date: 10/24/1996 5:38:04 PM Document presentation format – PowerPoint PPT presentation

Number of Views:134
Avg rating:3.0/5.0
Slides: 36
Provided by: AnaCava
Category:
Tags: ppe | sem

less

Transcript and Presenter's Notes

Title: Sem


1
Semântica Operacional
  • Semantics with Applications - A Formal
    Introduction
  • H. R. Nielson and F. Nielson
  • Wiley Professional Computing
  • Capítulo 2

2
Semântica Operacional
  • Características principais
  • Significado dos programas é especificado pela
    computação que ele induz quando executado
  • Preocupação com COMO os programas são executados

3
Abordagens
  • Semântica natural
  • Resultados finais
  • Semântica operacional estrutural
  • Passos individuais

4
Sistema de Transição
  • Componentes
  • Configurações
  • ? S,s? - comando S executado no estado s
  • s - um estado terminal
  • Relação de transição
  • Diferentes abordagens diferentes formas de
    especificar a relação de transição

5
Semântica Natural
  • Transição
  • Relação entre o estado inicial e o estado final
  • ? S,s? ? s
  • Regras
  • premissas
  • condições
  • axiomas

6
Semântica Natural de While
7
Semântica Natural de While (cont.)
? c,e ? ? e ? while b do c, e ? ? e
if Bb e true
(while-true)
? while b do c, e ? ? e
8
Árvores de Derivação
  • Uso das definições para derivar uma transição
  • Raiz
  • Nós internos
  • Todas as condições devem ser satisfeitas
  • Tipos de árvores
  • Simples instância de axioma
  • Composta

9
Propriedades de uma Semântica Natural
  • Programas S1 e S2 são semanticamente equivalentes
    se para todos os estados s e s
  • ? S1,s? ? s se e somente se ? S2,s? ? s
  • Árvores de derivação são a base para a prova

10
Propriedades de uma Semântica Natural
  • Semântica natural determinística
  • Para cada comando S e cada estado inicial s, o
    estado final pode ser determinado unicamente.
  • Para todo comando S, e estados s, s e s
  • ? S,s? ? s e ? S,s? ? s implica que s
    s

11
Indução Sobre aForma das Árvores de Derivação
  • Caso base árvores simples
  • Prova propriedades para axiomas
  • Passo de indução árvores compostas
  • Prova para cada regra, assumindo válido para as
    premissas
  • Indução estrutural nem sempre é possível

12
Função Semântica
  • Sns Stm ? (State ? State)
  • Sns S s s if ? S,s? ? s
  • Sns S s undef, otherwise.

13
Semântica Operacional Estrutural
  • Ênfase nos passos individuais da execução
  • Relação de transição
  • ? S,s? ? ?
  • ? pode ter duas formas
  • ? S,s?
  • s
  • ? S,s? está travado se não há ? tal que ? S,s?
    ? ?

14
Semântica Operacional Estrutural de While
  • ? x a,s? ? sx ? Aa s
  • ? skip,s? ? s
  • ? S1,s? ? ? S1,s?
  • ? S1 S2,s? ? ? S1 S2,s?
  • ? S1,s? ? s
  • ? S1 S2,s? ? ? S2,s?

15
Semântica Operacional Estrutural de While
  • ? if b then S1 else S2,s? ? ? S1,s? if Bb
    s tt
  • ? if b then S1 else S2,s? ? ? S2,s? if Bb
    s ff
  • ? while b do S,s? ? ? if b then (S while b do
    S) else skip,s?

16
Sequência de Derivação
  • Sequência de configurações
  • ? S,s? , ?1, ... , ?k
  • ?i ? ?i 1
  • ?k é travada ou terminal OU
  • a sequência é infinita
  • Para cada passo há uma árvore de derivação

17
Propriedades de uma Semântica Operacional
Estrutural
  • Execução de um comando S em um estado s
  • Termina sequência de derivação finita
  • Entra em loop sequência de derivação infinita
  • Indução no comprimento das sequências de derivação

18
Semântica Operacional Determinística
  • Para todo comando S, e estados s, s e s
  • ? S,s? ? ? e ? S,s? ? ? implica que
    ? ?
  • Há apenas uma sequência de derivação começando de
    uma configuração ? S,s?

19
Equivalência de Programas
  • Programas S1 e S2 são semanticamente equivalentes
    se para todos os estados s
  • ? S1,s? ? ? se e somente se ? S2,s? ? ? , se ?
    for uma configuração travada ou terminal
  • Há uma sequência de derivação infinita começando
    em ? S1,s? se e somente se há uma começando em
    ? S2,s?

20
Função Semântica
  • Ssos Stm ? (State ? State)
  • Ssos S s s if ? S,s? ? s
  • Ssos S s undef, otherwise.
  • As definições de While são equivalentes

21
Extensões de While Abort
  • Regras anteriores não são modificadas
  • Nenhuma regra é adicionada
  • Semântica operacional estrutural
  • abort é diferente de skip e while true do skip
  • Semântica natural
  • abort é equivalente a while true do skip

22
Extensões de WhileAbort
  • Semântica natural não distingue não-terminação de
    terminação anormal
  • Em semântica operacional estrutural
  • Não-terminação sequência de derivação infinita
  • Terminação anormal configuração travada

23
Extensões de WhileNão-determinismo
  • S1 or S2
  • Semântica natural
  • ? S1,s? ? s
  • ? S1 or S2 ,s? ? s
  • ? S2,s? ? s
  • ? S1 or S2 ,s? ? s

24
Extensões de WhileNão-determinismo
  • Semântica operacional estrutural
  • ? S1 or S2,s? ? ? S1,s?
  • ? S1 or S2,s? ? ? S2,s?
  • Considere ? while true do skip or x 1?
  • Em semântica natural, não-determinismo suprimirá
    não-terminação, se possível
  • Em semântica operacional estrutural, isso não
    acontece.

25
Extensões de WhileParalelismo
  • S1 par S2
  • Semântica operacional estrutural
  • ? S1,s? ? ? S1,s? ? S1,s? ?
    s
  • ? S1 par S2,s? ? ? S1 par S2,s? ? S1 par
    S2,s? ? ? S2,s?
  • ? S2,s? ? ? S2,s? ? S2,s? ? s
  • ? S1 par S2,s? ? ? S1 par S2,s? ? S1 par
    S2,s? ? ? S1,s?

26
Extensões de WhileParalelismo
  • Semântica natural
  • ? S1,s? ? s , ? S2,s? ? s
  • ? S1 par S2 ,s? ? s
  • ? S2,s? ? s , ? S1,s? ? s
  • ? S1 par S2 ,s? ? s

27
Extensões de WhileParalelismo
  • Semântica natural
  • Execução de componentes é atômica interleaving
    não pode ser expresso
  • Semântica operacional estrutural
  • Interleaving pode ser expresso facilmente

28
Blocos
  • S ... begin DV S end
  • DV var x a DV ?
  • Semântica natural
  • Um sistema de transição para cada categoria
    sintática

29
Blocos
  • ? DV,sx ? Aa s ? ?D s
  • ? var x a DV ,s? ?D s
  • ? ? ,s? ?D s
  • ? DV,s? ?D s , ? S,s? ?D
    s
  • ? begin DV S end,s? ? s DV(Dv) ? s

30
Procedimentos
  • S ... begin DV DP S end call p
  • DV var x a DV ?
  • DP proc p is S DP ?
  • Escopo estático para variáveis e procedimentos

31
Procedimentos
  • call p executa o corpo de p
  • É necessário registrar a associação entre nomes e
    corpos de procedimentos
  • Ambiente de procedimento
  • EnvP Pname ? Stm ? EnvV ? EnvP
  • Ambiente de variável
  • Envv Var ? Loc
  • Store Loc ? next ? Z

32
Procedimentos
  • Extensão do sistema de transições para comandos
  • envV, envP - ?S,sto? ? sto
  • Extensão do sistema de transições para
    declarações
  • ?DV,envV,sto? ?D (envV, sto)

33
Procedimentos
  • Declarações
  • ?DV, envVx ? l,sto l ? vnext ? new l?
    ?D (envV ,sto)
  • ? var x a DV , envV ,sto? ?D
    (envV ,sto)
  • onde v Aa(sto ? envV) e l sto next
  • ? ? ,envV, sto? ?D (envV, sto)

34
Procedimentos
  • Comandos
  • envV, envP - ?x a,sto? ? stol ? v
  • onde l envV x and v Aa(sto ? envV)
  • ?DV,envV, sto? ?D (envV
    ,sto),
  • envV, envP - ?S,sto? ?
    sto
  • envV, envP - ? begin DV DP S end,sto? ?
    sto
  • onde envP updP(DP,envV,envP)

35
Procedimentos
  • envV, envP - ? S,sto? ? sto
  • envV, envP - ? call p,sto? ? sto
  • onde envP p (S,envV,envP)
  • envV, envP p -gt (S, envV, envP ) -
    ? S,sto? ? sto
  • envV, envP - ? call p,sto?
    ? sto
  • onde envP p (S,envV,envP)
Write a Comment
User Comments (0)
About PowerShow.com