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

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

Aula Prática: A Ferramenta ZANS

Apresentações semelhantes


Apresentação em tema: "Aula Prática: A Ferramenta ZANS"— Transcrição da apresentação:

1 Aula Prática: A Ferramenta ZANS
Características gerais Escrevendo especificações em LaTeX Exemplos Como utilizar o sistema Executando especificações Augusto Sampaio

2 Características gerais
ZANS é um sistema de animação (prototipação) para Z As seguintes facilidades são oferecidas: Análise sintática e verificação de tipos Expansão (normalização) de esquemas Avaliação de expressões e predicados Execução de operações definidas via esquemas

3 Escrevendo especificações Z em LaTeX
LaTeX é uma linguagem para criar documentos, tal como a linguagem implícita do WORD Especificações Z usam símbolos gráficos especiais: D, X, Þ, etc LaTeX substitui os símbolos por macros: \Delta, \Xi, \implies, etc LaTeX usa estilos específicos para lidar com Z: zed.sty, oz.sty, z-eves.sty, etc Arquivo LaTeX pode ser processado por ferramentas e serve para visualizar e imprimir a especificação

4 º º º Elementos de Z em LaTeX " x, y, z: IN · x>y ^ y>z Þ x>z
\begin{zed} \forall x, y, z: \\ \t1 x>y \land y>z \implies x>z \end{zed} \begin{axdef} C:T \where P(C) \end{axdef} Nome[Par] DEstado var1’=exp1 var2’=var2 \begin{schema}{Nome[Par]} \Delta Estado \where var1’=exp1 \\ \end{schema}

5 Esqueleto Básico de Especificação
\documentstyle[zed, ztc]{article} % Ajustes do documento: margens, topo, etc. \begin{document} \section{Given Sets} Os {\sl given sets} abaixo representam o conjunto de valores e s\’{\i}mbolos usados pela especifica\c{c}\~{a}o da tabela de s\’{\i}mbolos. \begin{zed} [VAL,SYM] \end{zed} \end{document}

6 Resultado de um Documento LaTeX
Pode-se processar (compilar) um documento LaTeX para obter um documento de visualização. Por exemplo: recife> latex espec.tex (ou patex espec.tex) Do comando acima obtém-se o arquivo espec.dvi, que pode ser visualizado da seguinte forma: recife> xdvi espec Pode-se gerar espec.ps de espec.dvi para imprimir ou visualizar: recife> dvips espec Conversão Visualização recife> ghostview espec.ps Impressão recife> lpr -Plwpq1 espec.ps

7 Exemplo: Controle de Acesso
Estado s : |P Pessoa # s < lim Init [Pessoa] Estado’ lim == 50 S’ = {} Inclusão D Estado p?: Pessoa (#s < lim ^ p? Î s) s’ = s U {p?} Msg ::= AUSENTE | PRESENTE Consulta X Estado p?: Pessoa ap!: Msg (p? Î s ^ ap! = PRESENTE) v (p? Ï s ^ ap! = AUSENTE) Exclusão D Estado p?: Pessoa p? Î s s’ = s \ {p?}

8 Como utilizar o sistema
Programa executado sob o Windows (DOS) A especificação a ser processada deve ser escrita em LaTeX (com as macros definidas no estilo zed) ou em ZSL (versão ascii de Z) Carrega-se uma especificação (extensão zed) através do comando load Comandos para listar, expandir e executar esquemas (dentre outros) estão disponíveis Finalização é feita através de exit

9 Condições de Executabilidade
É preciso indicar explicitamente o esquema que representa o estado e a inicialização %% state-schema <nome> %% init-schema <nome> Constantes globais e definições axiomáticas devem possuir um valor ex.: limite == 50 Operações (esquemas) devem definir valores explícitos para todos os componentes de saída e de estado final; senão serão considerados non-explicit

10 Executando Especificações
Após carregar o arquivo (load), usar o comando animate Os esquemas são analisados e é indicado quais podem ser executados (só os explicit) A operação de inicialização é executada Os esquemas (explicit) podem então ser executados: execute <nome> O esquema só é executado com sucesso se a sua pré-condição for satisfeita e se o invariante do estado não for violado

11 Exercícios 1) Listar as operações disponíveis: list
2) Mostrar a operação INCLUSAO usando show 3) Mostrar a operação INCLUSAO usando expand 4) Incluir os seguintes elementos no conjunto: joao, maria, pedro executando a operação INCLUSAO 5) Tentar incluir mais um elemento 6) Verificar se maria está presente executando CONSULTA 7) Deletar joao executando EXCLUSAO 8) Deletar carla executando EXCLUSAO 9) Especificar uma nova operação para remoção radômica 10) Carregar a especificação e tentar executar esta operação


Carregar ppt "Aula Prática: A Ferramenta ZANS"

Apresentações semelhantes


Anúncios Google