arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1607.04459cs.PLcs.LO
收藏

使用线性Horn子句求解器求解非线性Horn子句

Solving non-linear Horn clauses using a linear Horn clause solver

Bishoksan Kafle, John P. Gallagher, Pierre Ganty

摘要:

在本文中,我们表明,检查可满足性的一组非线性霍恩条款(也称为非线性霍恩条款计划)可以实现使用求解器的线性霍恩条款。我们实现这一点,通过交错的程序转换与线性霍恩条款(也称为线性霍恩条款求解器)的可满足性检查。程序转换是基于树维度的概念,我们将其应用于一组非线性子句,产生一组其派生树具有有界维度的集合。这样一套条款可以线性化。然后,主要的算法进行应用线性化变换和求解器的线性霍恩条款的一系列条款的连续增加的维度范围。然后,通过使用较低维度的条款解决方案来(部分)线性化较高维度的条款,进一步发展了该方法。我们构建了一个原型实现这种方法,并进行了一些实验上的一组验证问题,这表明了一些承诺。

英文摘要:

In this paper we show that checking satisfiability of a set of non-linear Horn clauses (also called a non-linear Horn clause program) can be achieved using a solver for linear Horn clauses. We achieve this by interleaving a program transformation with a satisfiability checker for linear Horn clauses (also called a solver for linear Horn clauses). The program transformation is based on the notion of tree dimension, which we apply to a set of non-linear clauses, yielding a set whose derivation trees have bounded dimension. Such a set of clauses can be linearised. The main algorithm then proceeds by applying the linearisation transformation and solver for linear Horn clauses to a sequence of sets of clauses with successively increasing dimension bound. The approach is then further developed by using a solution of clauses of lower dimension to (partially) linearise clauses of higher dimension. We constructed a prototype implementation of this approach and performed some experiments on a set of verification problems, which shows some promise.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑