LÓGICA TEMPORAL PARA VERIFICAÇÃO DE PROGRAMAS
Abstract
Existe uma grande vantagem em ser capaz de verificar a correção de sistemas computacionais, sejam eles de hardware, de software ou uma combinação dos dois. Métodos de verificação formal tornaram-se utilizáveis pela indústria e existe uma demanda crescente de profissionais capazes de aplicá-los. O objetivo deste trabalho é aplicar lógicas modais temporais para fazer a verificação automática de sistemas, através de suas propriedades, fazendo testes com os mais variados exemplos e problemas da computação. Como metodologia, foi estudado três tipos de lógicas temporais: LTL (Lógica Temporal de Tempo Linear); CTL (Lógica de Árvore Computacional); CTL* (uma lógica que combina os poderes de expressão da LTL e CTL), e também utilizou-se o programa NuSMV (Novo Verificador de Modelos Simbólico) para fazer aplicações práticas de verificação. A ideia da lógica temporal é que uma fórmula não é estaticamente verdadeira ou falsa em um modelo, como em outras lógicas. Seus modelos contêm diversos estados, e uma fórmula pode ser verdadeira em alguns estados e falsa em outros. Na verificação, os modelos são sistemas de transição e as propriedades são fórmulas em lógica temporal. O NuSMV fornece uma linguagem para descrever os modelos e verifica diretamente a validade de fórmulas da LTL e CTL. Como resultados, foram realizados testes com vários exemplos que funcionaram perfeitamente em relação à verificação. Constatou-se que LTL e CTL tem diferentes poderes expressivos: LTL permite selecionar um intervalo de caminhos, enquanto que CTL permite fazer uma quantificação explícita por caminhos. Conclui-se que a lógica CTL* surge como uma alternativa para ganhar mais expressividade, porém perdendo na complexidade, combinando as duas lógicas anteriores e estendendo-as. Essa abordagem se mostrou muito eficiente e promissora em relação à verificação de programas. Agradeço ao CNPq pela oportunidade de ser bolsista de Iniciação Científica.Downloads
Download data is not yet available.
Downloads
Published
2019-01-01
Issue
Section
XXXVIII Encontro de Iniciação Científica
License
Autores que publicam nesta revista concordam com os seguintes termos:
a. Autores mantém os direitos autorais e concedem à revista o direito de primeira publicação, com o trabalho simultaneamente licenciado sob a Creative Commons Attribution License que permitindo o compartilhamento do trabalho com reconhecimento da autoria do trabalho e publicação inicial nesta revista.
b. Autores têm autorização para assumir contratos adicionais separadamente, para distribuição não-exclusiva da versão do trabalho publicada nesta revista (ex.: publicar em repositório institucional ou como capítulo de livro), com reconhecimento de autoria e publicação inicial nesta revista.
c. Autores têm permissão e são estimulados a publicar e distribuir seu trabalho online (ex.: em repositórios institucionais ou na sua página pessoal) a qualquer ponto antes ou durante o processo editorial, já que isso pode gerar alterações produtivas, bem como aumentar o impacto e a citação do trabalho publicado.