{"title":"Recomposition: A New Technique for Efficient Compositional Verification","authors":"Ian Dardik, April Porter, Eunsuk Kang","doi":"arxiv-2408.03488","DOIUrl":null,"url":null,"abstract":"Compositional verification algorithms are well-studied in the context of\nmodel checking. Properly selecting components for verification is important for\nefficiency, yet has received comparatively less attention. In this paper, we\naddress this gap with a novel compositional verification framework that focuses\non component selection as an explicit, first-class concept. The framework\ndecomposes a system into components, which we then recompose into new\ncomponents for efficient verification. At the heart of our technique is the\nrecomposition map that determines how recomposition is performed; the component\nselection problem thus reduces to finding a good recomposition map. However,\nthe space of possible recomposition maps can be large. We therefore propose\nheuristics to find a small portfolio of recomposition maps, which we then run\nin parallel. We implemented our techniques in a model checker for the TLA+\nlanguage. In our experiments, we show that our tool achieves competitive\nperformance with TLC-a well-known model checker for TLA+-on a benchmark suite\nof distributed protocols.","PeriodicalId":501208,"journal":{"name":"arXiv - CS - Logic in Computer Science","volume":"86 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-08-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Logic in Computer Science","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2408.03488","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Compositional verification algorithms are well-studied in the context of
model checking. Properly selecting components for verification is important for
efficiency, yet has received comparatively less attention. In this paper, we
address this gap with a novel compositional verification framework that focuses
on component selection as an explicit, first-class concept. The framework
decomposes a system into components, which we then recompose into new
components for efficient verification. At the heart of our technique is the
recomposition map that determines how recomposition is performed; the component
selection problem thus reduces to finding a good recomposition map. However,
the space of possible recomposition maps can be large. We therefore propose
heuristics to find a small portfolio of recomposition maps, which we then run
in parallel. We implemented our techniques in a model checker for the TLA+
language. In our experiments, we show that our tool achieves competitive
performance with TLC-a well-known model checker for TLA+-on a benchmark suite
of distributed protocols.