Verification of symmetric models using semiautomatic abstractions
Verification of symmetric models using semiautomatic abstractions
复制标题
使用半自动抽象验证对称模型
DOI:
--
复制
发表时间:
2010
期刊:
影响因子:
--
通讯作者:
Pedro de Carvalho Gomes
中科院分区:
文献类型:
--
作者:
Pedro de Carvalho Gomes
A Verificacao de Modelos e uma tecnica poderosa de verificacao automatica de sistemas concorrentes. Ela explora automaticamente os estados de um modelo que representa o sistema para provar sua correcao com relacao a especificacoes formais, descritas usandoalguma logica temporal. Apesar de sua importância e ampla aplicacao, a Verificacao de Modelos sofre com o problema da explosao de estados: o numero de estados do modelo e exponencial ao seu tamanho; isto limita o tamanho dos modelos possiveis de serem verificados.Diversas tecnicas foram propostas para contornar o problema. Dentre elas, o uso de abstracoes e considerada uma das mais genericas e eficientes. A adocao de abstracoes consiste em gerar um modelo reduzido a partir do modelo original atraves da fusao ou remocao de estados que supoe-se irrelevantes com relacao a propriedadesendo verificada. Outra tecnica e a reducao por simetria. Ela baseia-se na observacao que diversos sistemas apresentam consideravel grau de simetria, e estados considerados equivalentes podem ser agrupados. Assim o espaco dos estados a ser considerado e significantemente menor e a exploracao de apenas um dos estados do mesmo grupo esuficiente para provar a correcao de alguma propriedade. Este trabalho combina ambas as tecnicas para produzir modelos reduzidos, quepodem ser verificados em tempo factivel. E apresentada uma metodologia para gerar abstracoes semiautomaticas, baseada na simetria do modelo. A ideia chave e que, na verificacao de certas propriedades, a remocao de componentes simetricos de ummodelo tem um impacto pequeno na perda de informacao causada pelas abstracoes ja que a contra-parte simetrica ainda esta presente. A metodologia define premissas de modelagem para tornar a adocao das abstracoes semiautomatica, ou seja, sem a necessidade de alterar a descricao do modelo. Alem disso, sao apresentados padroesde abstracoes baseados na simetria do sistema e mostra-se quais especificacoes sao consistentes com cada padrao. As tecnicas apresentadas neste trabalho sao especialmente uteis na verificacaode sistemas de computacao que apresentam uma consideravel replicacao de estrutura. Tal caracteristica pode ser observada em memorias, caches, protocolos de barramento, programas com varios processos e protocolos de rede. Foi implementado no trabalhoo modelo de uma rede P2P Live Streaming para validar a metodologia. Neste modelo cada participante recebe e encaminha dados para seus parceiros para reconstruir o conteudo ao vivo original. O fato de todos os participantes serem processos distintos que compartilham o mesmo codigo torna este modelo altamente simetrico e assim umexemplo valido. A reducao obtida com a metodologia provou ser bastante significativa. Por exemplo, o calculo do numero de estados alcancaveis do modelo original, de um total de aproximadamente 273 estados possiveis, nao terminou apos mais de duas semanasde computacao intensa. Em contrapartida, a mesma computacao para os modelos reduzidos terminou em menos de tres minutos em todos os casos e o numero maximo encontrado de estados alcancaveis foi de aproximadamente 219.