ALPACA:基于大投资组合的交替条件分析

Mitchell J. Gerrard, Matthew B. Dwyer
{"title":"ALPACA:基于大投资组合的交替条件分析","authors":"Mitchell J. Gerrard, Matthew B. Dwyer","doi":"10.1109/ICSE-Companion.2019.00032","DOIUrl":null,"url":null,"abstract":"Program analysis tools typically compute either may or must information. By accumulating both kinds of information computed with respect to different portions of a program's state space, it is possible to collect a comprehensive view of how program inputs relate to some property. This can be done using the framework of an alternating conditional analysis (ACA). In this paper, we present a toolset that instantiates an ACA to analyze C programs. The toolset, dubbed ALPACA (A Large Portfolio-based ACA), computes a sound characterization of all the ways a program either may or must satisfy some property. It does so by alternating between over-and underapproximate analyses, conditioning analyses to ignore portions of the program that have already been analyzed, and combining the results of 14 state-of-the-art analysis tools in a portfolio run in parallel. Download ALPACA at https://bitbucket.org/mgerrard/alpaca. Its video demonstration is at https://youtu.be/H2yXtvODurQ.","PeriodicalId":273100,"journal":{"name":"2019 IEEE/ACM 41st International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","volume":"41 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":"{\"title\":\"ALPACA: A Large Portfolio-Based Alternating Conditional Analysis\",\"authors\":\"Mitchell J. Gerrard, Matthew B. Dwyer\",\"doi\":\"10.1109/ICSE-Companion.2019.00032\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Program analysis tools typically compute either may or must information. By accumulating both kinds of information computed with respect to different portions of a program's state space, it is possible to collect a comprehensive view of how program inputs relate to some property. This can be done using the framework of an alternating conditional analysis (ACA). In this paper, we present a toolset that instantiates an ACA to analyze C programs. The toolset, dubbed ALPACA (A Large Portfolio-based ACA), computes a sound characterization of all the ways a program either may or must satisfy some property. It does so by alternating between over-and underapproximate analyses, conditioning analyses to ignore portions of the program that have already been analyzed, and combining the results of 14 state-of-the-art analysis tools in a portfolio run in parallel. Download ALPACA at https://bitbucket.org/mgerrard/alpaca. Its video demonstration is at https://youtu.be/H2yXtvODurQ.\",\"PeriodicalId\":273100,\"journal\":{\"name\":\"2019 IEEE/ACM 41st International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)\",\"volume\":\"41 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2019-05-25\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"1\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2019 IEEE/ACM 41st International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ICSE-Companion.2019.00032\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2019 IEEE/ACM 41st International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICSE-Companion.2019.00032","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

摘要

程序分析工具通常计算可能或必须的信息。通过累积针对程序状态空间的不同部分计算的两种信息,就有可能收集有关程序输入如何与某些属性相关的全面视图。这可以使用交替条件分析(ACA)的框架来完成。在本文中,我们提出了一个工具集,实例化了一个ACA来分析C程序。该工具集被称为ALPACA(基于大型投资组合的ACA),它计算出一个程序可能或必须满足某些属性的所有方式的可靠特征。它通过在过度近似和不足近似的分析之间交替进行,使分析忽略已经分析过的部分程序,并将14个最先进的分析工具的结果结合在一个并行运行的投资组合中来实现这一点。从https://bitbucket.org/mgerrard/alpaca下载ALPACA。它的演示视频在https://youtu.be/H2yXtvODurQ。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
ALPACA: A Large Portfolio-Based Alternating Conditional Analysis
Program analysis tools typically compute either may or must information. By accumulating both kinds of information computed with respect to different portions of a program's state space, it is possible to collect a comprehensive view of how program inputs relate to some property. This can be done using the framework of an alternating conditional analysis (ACA). In this paper, we present a toolset that instantiates an ACA to analyze C programs. The toolset, dubbed ALPACA (A Large Portfolio-based ACA), computes a sound characterization of all the ways a program either may or must satisfy some property. It does so by alternating between over-and underapproximate analyses, conditioning analyses to ignore portions of the program that have already been analyzed, and combining the results of 14 state-of-the-art analysis tools in a portfolio run in parallel. Download ALPACA at https://bitbucket.org/mgerrard/alpaca. Its video demonstration is at https://youtu.be/H2yXtvODurQ.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信