计算机科学 > 软件工程
[提交于 2025年8月1日
]
标题: Desyan:一个无缝价值流和符号分析的平台
标题: Desyan: A Platform for Seamless Value-Flow and Symbolic Analysis
摘要: 在过去二十年中,两种不同的静态分析方法在学术界和工业界已成为主导范式:价值流分析(例如,数据流分析或指针分析)和符号分析(例如,符号执行)。尽管这两种方法在许多应用领域取得了各自的成功,但两者仍然 largely 分离;这是由于缺乏一个广泛采用的统一平台,使得符号技术与高性能数据流推理的无缝高效集成变得困难。为了弥合这一差距,我们引入了 Desyan:一个用于编写程序分析的平台,能够无缝集成价值流和符号推理。Desyan 扩展了一个生产就绪的 Datalog 固定点引擎(Soufflé),并完全集成了 SMT 求解,调用行业领先的 SMT 引擎。Desyan 提供了构造,用于自动(并且高效地)处理程序分析中常见的典型模式。同时,这种集成与求解技术无关,并通过自底向上的代数推理模块支持原生 Datalog 符号推理。结果是一个允许根据底层分析需要混合不同种类推理的引擎。对于价值流分析,该引擎是同类最佳的 Datalog 评估器(通常在执行时间上超过 20 倍);对于需要完整 SMT 的应用(例如,一个协同执行引擎或其他需要解决任意复杂条件的符号求解器),该引擎利用领先的 SMT 求解器;对于轻量级符号求解(例如,在路径敏感分析的上下文中求解简单的条件),该引擎可以使用原生 Datalog 符号推理,与急于调用 SMT 求解器相比,通常能获得超过 2 倍的速度提升。
文献和引用工具
与本文相关的代码,数据和媒体
alphaXiv (什么是 alphaXiv?)
CatalyzeX 代码查找器 (什么是 CatalyzeX?)
DagsHub (什么是 DagsHub?)
Gotit.pub (什么是 GotitPub?)
Hugging Face (什么是 Huggingface?)
带有代码的论文 (什么是带有代码的论文?)
ScienceCast (什么是 ScienceCast?)
演示
推荐器和搜索工具
arXivLabs:与社区合作伙伴的实验项目
arXivLabs 是一个框架,允许合作伙伴直接在我们的网站上开发和分享新的 arXiv 特性。
与 arXivLabs 合作的个人和组织都接受了我们的价值观,即开放、社区、卓越和用户数据隐私。arXiv 承诺这些价值观,并且只与遵守这些价值观的合作伙伴合作。
有一个为 arXiv 社区增加价值的项目想法吗? 了解更多关于 arXivLabs 的信息.