Many modern solvers and program analyzers rely on non-monotone reasoning (e.g. negation-as-failure, speculative updates, backtracking) for which classical monotone fixed-point methods do not apply. The general problem of finding the fixed points of these processes is a difficult one. For this reason, there have been theoretical efforts in existing Approximation Fixpoint Theory (AFT) from the domain of logic programming to approximate fixed points of non-monotone operators. Tight approximations of these fixed points are highly useful for accelerating non-monotonic computations by restricting the search space. In practice, however, even the best approximations obtained through AFT can be coarse and computationally expensive. We aim to address both issues to make AFT approximation methods practical for use in programming languages (PL) settings. To mitigate inefficiency, we prove the soundness of an abstract interpretation for approximating operators. To improve upon coarse approximations, we carefully introduce controlled unsoundness to design an effective yet practical algorithm for partitioning and tightening AFT's best approximations. This algorithm is sound, anytime, and guarantees termination on finite-height lattices. We further present a modification that ensures polynomial-time complexity. We instantiate these methods in two settings: (1) answer set programming, where it serves as a convergence-accelerating pre-processor, and (2) speculative program analysis, where it reduces rollback while preserving soundness. In both settings, we focus on implementation-level details to demonstrate the practical applicability of our methods.


翻译:许多现代求解器和程序分析器依赖于非单调推理(例如否定即失败、推测性更新、回溯),而经典的单调不动点方法对此并不适用。寻找这些过程的不动点是一个普遍难题。因此,逻辑编程领域中已有的近似不动点理论(AFT)从理论上致力于近似非单调算子的不动点。这些不动点的紧密近似通过限制搜索空间,对于加速非单调计算极为有用。然而在实践中,即便通过AFT获得的最佳近似也可能较为粗糙且计算成本高昂。我们旨在解决这两个问题,使AFT近似方法在编程语言(PL)环境中具备实用性。为了缓解效率低下的问题,我们证明了用于近似算子的抽象解释的正确性。为了改进粗糙近似,我们谨慎地引入可控的不正确性,设计了一种有效且实用的算法,用于划分和收紧AFT的最佳近似。该算法是可靠的、可随时终止的,并保证在有限高度格上终止。我们进一步提出了一种改进,以确保多项式时间的复杂度。我们在两个场景中实例化了这些方法:(1)答案集编程,作为加速收敛的预处理工具;(2)推测性程序分析,在保持正确性的同时减少回滚。在这两个场景中,我们侧重于实现层面的细节,以证明我们方法的实际适用性。

0
下载
关闭预览

相关内容

最新《非凸优化理论》进展书册,79页pdf
专知会员服务
112+阅读 · 2020年12月18日
最新《自动微分》综述教程,71页ppt
专知会员服务
22+阅读 · 2020年11月22日
自动结构变分推理,Automatic structured variational inference
专知会员服务
41+阅读 · 2020年2月10日
CVPR 2019 | PointConv:在点云上高效实现卷积操作
机器之心
10+阅读 · 2019年4月21日
深度学习中Attention Mechanism详细介绍:原理、分类及应用
深度学习与NLP
10+阅读 · 2019年2月18日
从点到线:逻辑回归到条件随机场
夕小瑶的卖萌屋
15+阅读 · 2017年7月22日
国家自然科学基金
0+阅读 · 2017年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
VIP会员
最新内容
世界模型入门:从序贯决策到通用智能体
专知会员服务
10+阅读 · 10月24日
军事域更好使用人工智能的实用指南
专知会员服务
10+阅读 · 10月22日
《衡量语言模型中的作战规划能力》
专知会员服务
14+阅读 · 10月20日
Maven智能系统:帕兰提尔军事人工智能平台详解
专知会员服务
17+阅读 · 10月20日
《测试自动化框架在敏捷软件开发中的角色》
专知会员服务
9+阅读 · 10月20日
相关基金
国家自然科学基金
0+阅读 · 2017年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员