Verification of symmetric models using semiautomatic abstractions

Detalhes bibliográficos
Ano de defesa: 2010
Autor(a) principal: Pedro de Carvalho Gomes
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Universidade Federal de Minas Gerais
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://hdl.handle.net/1843/SLSS-86VJCV
Resumo: Model Checking is a powerful method for the formal verification of concurrent systems. It explores automatically the state-space of a model that represents the system to prove its correctness in relation to formal specifications, which are described using some temporal logic. Despite its importance and wide application, Model Checking suffers with the state-space explosion: the number of states of a model is exponential to its size; thus it limits the size of the models that may be verified. Many techniques were proposed to overcome this problem. Among them, the use of abstractions is considered one of the most general and efficient. The adoption of abstractions consists of generating a reduced model from the original model by merging or removing states that are irrelevant to the specification being verified. Another technique is the symmetry reduction. It is based on the observation that several models present some level of symmetry, and states considered equivalent can be grouped. Thus, the state-space to be considered is significantly smaller and the exploration of only one of the states of the same group is sufficient to prove the correctness of some propriety. This work combines both techniques to produce reduced models that can be verified at feasible time. It presents a methodology to generate semiautomatic abstractions, based on the model symmetry. The key idea is that, for the verification of certain proprieties, the removal of symmetric components of a model has a small impact on information loss caused by the abstractions since its symmetric counterpart is still represented. The methodology defines modeling premises to make the abstractionadoption semiautomatic, i.e., without the need to alter the model description. Moreover, it presents abstraction patterns based on the system symmetry and shows which specifications are consistent with each pattern. The techniques presented in this work are specially useful on the verification of computation systems that present considerable replication of structures. This characteristic can be observed in memories, caches, bus protocols, multi-processes applicationsand network protocols. In this work the model of a P2P Live Streaming application was implemented to validate the methodology. At this model each participant receives and forwards data to its partners to reconstruct the original live stream. The fact that all peers are distinct processes that share the same code makes this model highly symmetric and thus a valid example. The reductions obtained by the methodology proved to be very significant. I.e, the calculation of the number of reachable states of the original model, from a total of approximately 273 possible states, has not finished after more than two weeks of intensive computation. In contrast, the same computation for the reduced models finished in less than two minutes in all cases and the maximum number of reachablestates found was approximately 219.
id UFMG_775c3c9a2f018bd45410fcd8d6512976
oai_identifier_str oai:repositorio.ufmg.br:1843/SLSS-86VJCV
network_acronym_str UFMG
network_name_str Repositório Institucional da UFMG
repository_id_str
spelling Verification of symmetric models using semiautomatic abstractionsVerificaçãoComputaçãoSoftware VerificaçãoRedes de computadoresFormal VerificationModel CheckingAbstractionSymmetryModel Checking is a powerful method for the formal verification of concurrent systems. It explores automatically the state-space of a model that represents the system to prove its correctness in relation to formal specifications, which are described using some temporal logic. Despite its importance and wide application, Model Checking suffers with the state-space explosion: the number of states of a model is exponential to its size; thus it limits the size of the models that may be verified. Many techniques were proposed to overcome this problem. Among them, the use of abstractions is considered one of the most general and efficient. The adoption of abstractions consists of generating a reduced model from the original model by merging or removing states that are irrelevant to the specification being verified. Another technique is the symmetry reduction. It is based on the observation that several models present some level of symmetry, and states considered equivalent can be grouped. Thus, the state-space to be considered is significantly smaller and the exploration of only one of the states of the same group is sufficient to prove the correctness of some propriety. This work combines both techniques to produce reduced models that can be verified at feasible time. It presents a methodology to generate semiautomatic abstractions, based on the model symmetry. The key idea is that, for the verification of certain proprieties, the removal of symmetric components of a model has a small impact on information loss caused by the abstractions since its symmetric counterpart is still represented. The methodology defines modeling premises to make the abstractionadoption semiautomatic, i.e., without the need to alter the model description. Moreover, it presents abstraction patterns based on the system symmetry and shows which specifications are consistent with each pattern. The techniques presented in this work are specially useful on the verification of computation systems that present considerable replication of structures. This characteristic can be observed in memories, caches, bus protocols, multi-processes applicationsand network protocols. In this work the model of a P2P Live Streaming application was implemented to validate the methodology. At this model each participant receives and forwards data to its partners to reconstruct the original live stream. The fact that all peers are distinct processes that share the same code makes this model highly symmetric and thus a valid example. The reductions obtained by the methodology proved to be very significant. I.e, the calculation of the number of reachable states of the original model, from a total of approximately 273 possible states, has not finished after more than two weeks of intensive computation. In contrast, the same computation for the reduced models finished in less than two minutes in all cases and the maximum number of reachablestates found was approximately 219.Universidade Federal de Minas Gerais2019-08-12T13:45:02Z2025-09-09T01:02:45Z2019-08-12T13:45:02Z2010-06-21info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://hdl.handle.net/1843/SLSS-86VJCVPedro de Carvalho Gomesinfo:eu-repo/semantics/openAccessengreponame:Repositório Institucional da UFMGinstname:Universidade Federal de Minas Gerais (UFMG)instacron:UFMG2025-09-09T01:02:45Zoai:repositorio.ufmg.br:1843/SLSS-86VJCVRepositório InstitucionalPUBhttps://repositorio.ufmg.br/oairepositorio@ufmg.bropendoar:2025-09-09T01:02:45Repositório Institucional da UFMG - Universidade Federal de Minas Gerais (UFMG)false
dc.title.none.fl_str_mv Verification of symmetric models using semiautomatic abstractions
title Verification of symmetric models using semiautomatic abstractions
spellingShingle Verification of symmetric models using semiautomatic abstractions
Pedro de Carvalho Gomes
Verificação
Computação
Software Verificação
Redes de computadores
Formal Verification
Model Checking
Abstraction
Symmetry
title_short Verification of symmetric models using semiautomatic abstractions
title_full Verification of symmetric models using semiautomatic abstractions
title_fullStr Verification of symmetric models using semiautomatic abstractions
title_full_unstemmed Verification of symmetric models using semiautomatic abstractions
title_sort Verification of symmetric models using semiautomatic abstractions
author Pedro de Carvalho Gomes
author_facet Pedro de Carvalho Gomes
author_role author
dc.contributor.author.fl_str_mv Pedro de Carvalho Gomes
dc.subject.por.fl_str_mv Verificação
Computação
Software Verificação
Redes de computadores
Formal Verification
Model Checking
Abstraction
Symmetry
topic Verificação
Computação
Software Verificação
Redes de computadores
Formal Verification
Model Checking
Abstraction
Symmetry
description Model Checking is a powerful method for the formal verification of concurrent systems. It explores automatically the state-space of a model that represents the system to prove its correctness in relation to formal specifications, which are described using some temporal logic. Despite its importance and wide application, Model Checking suffers with the state-space explosion: the number of states of a model is exponential to its size; thus it limits the size of the models that may be verified. Many techniques were proposed to overcome this problem. Among them, the use of abstractions is considered one of the most general and efficient. The adoption of abstractions consists of generating a reduced model from the original model by merging or removing states that are irrelevant to the specification being verified. Another technique is the symmetry reduction. It is based on the observation that several models present some level of symmetry, and states considered equivalent can be grouped. Thus, the state-space to be considered is significantly smaller and the exploration of only one of the states of the same group is sufficient to prove the correctness of some propriety. This work combines both techniques to produce reduced models that can be verified at feasible time. It presents a methodology to generate semiautomatic abstractions, based on the model symmetry. The key idea is that, for the verification of certain proprieties, the removal of symmetric components of a model has a small impact on information loss caused by the abstractions since its symmetric counterpart is still represented. The methodology defines modeling premises to make the abstractionadoption semiautomatic, i.e., without the need to alter the model description. Moreover, it presents abstraction patterns based on the system symmetry and shows which specifications are consistent with each pattern. The techniques presented in this work are specially useful on the verification of computation systems that present considerable replication of structures. This characteristic can be observed in memories, caches, bus protocols, multi-processes applicationsand network protocols. In this work the model of a P2P Live Streaming application was implemented to validate the methodology. At this model each participant receives and forwards data to its partners to reconstruct the original live stream. The fact that all peers are distinct processes that share the same code makes this model highly symmetric and thus a valid example. The reductions obtained by the methodology proved to be very significant. I.e, the calculation of the number of reachable states of the original model, from a total of approximately 273 possible states, has not finished after more than two weeks of intensive computation. In contrast, the same computation for the reduced models finished in less than two minutes in all cases and the maximum number of reachablestates found was approximately 219.
publishDate 2010
dc.date.none.fl_str_mv 2010-06-21
2019-08-12T13:45:02Z
2019-08-12T13:45:02Z
2025-09-09T01:02:45Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://hdl.handle.net/1843/SLSS-86VJCV
url https://hdl.handle.net/1843/SLSS-86VJCV
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal de Minas Gerais
publisher.none.fl_str_mv Universidade Federal de Minas Gerais
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFMG
instname:Universidade Federal de Minas Gerais (UFMG)
instacron:UFMG
instname_str Universidade Federal de Minas Gerais (UFMG)
instacron_str UFMG
institution UFMG
reponame_str Repositório Institucional da UFMG
collection Repositório Institucional da UFMG
repository.name.fl_str_mv Repositório Institucional da UFMG - Universidade Federal de Minas Gerais (UFMG)
repository.mail.fl_str_mv repositorio@ufmg.br
_version_ 1856414008566874112