当前位置: X-MOL 学术arXiv.cs.PL › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Set Constraints, Pattern Match Analysis, and SMT
arXiv - CS - Programming Languages Pub Date : 2019-05-23 , DOI: arxiv-1905.09423
Joseph Eremondi

Set constraints provide a highly general way to formulate program analyses. However, solving arbitrary boolean combinations of set constraints is NEXPTIME-hard. Moreover, while theoretical algorithms to solve arbitrary set constraints exist, they are either too complex to realistically implement or too slow to ever run. We present a translation that converts a set constraint formula into an SMT problem. Our technique allows for arbitrary boolean combinations of set constraints, and leverages the performance of modern SMT solvers. To show the usefulness of unrestricted set constraints, we use them to devise a pattern match analysis for functional languages, which ensures that missing cases of pattern matches are always unreachable. We implement our analysis in the Elm compiler and show that our translation is fast enough to be used in practical verification.

中文翻译:

设置约束、模式匹配分析和 SMT

设置约束提供了一种非常通用的方式来制定程序分析。然而,解决集合约束的任意布尔组合是 NEXPTIME 困难的。此外,虽然存在解决任意集合约束的理论算法,但它们要么太复杂而无法实际实现,要么太慢而无法运行。我们提出了一个将集合约束公式转换为 SMT 问题的翻译。我们的技术允许设置约束的任意布尔组合,并利用现代 SMT 求解器的性能。为了展示无限制集约束的有用性,我们使用它们来设计函数式语言的模式匹配分析,以确保模式匹配的缺失情况始终无法访问。
更新日期:2020-03-03
down
wechat
bug