{"title":"重组:高效组合验证的新技术","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":"{\"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}","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}
Recomposition: A New Technique for Efficient Compositional Verification
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.