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

2016 ◽  
Vol 219 ◽  
pp. 33-48 ◽  
Author(s):  
Bishoksan Kafle ◽  
John P. Gallagher ◽  
Pierre Ganty
Keyword(s):  
2018 ◽  
Vol 18 (2) ◽  
pp. 224-251 ◽  
Author(s):  
BISHOKSAN KAFLE ◽  
JOHN P. GALLAGHER ◽  
PIERRE GANTY

AbstractIn this paper, we show how the notion of tree dimension can be used in the verification of constrained Horn clauses (CHCs). The dimension of a tree is a numerical measure of its branching complexity and the concept here applies to Horn clause derivation trees. Derivation trees of dimension zero correspond to derivations using linear CHCs, while trees of higher dimension arise from derivations using non-linear CHCs. We show how to instrument CHCs predicates with an extra argument for the dimension, allowing a CHC verifier to reason about bounds on the dimension of derivations. Given a set of CHCsP, we define a transformation ofPyielding adimension-boundedset of CHCsP≤k. The set of derivations forP≤kconsists of the derivations forPthat have dimension at mostk. We also show how to construct a set of clauses denotedP>kwhose derivations have dimension exceedingk. We then present algorithms using these constructions to decompose a CHC verification problem. One variation of this decomposition considers derivations of successively increasing dimension. The paper includes descriptions of implementations and experimental results.


Author(s):  
Adrien Champion ◽  
Naoki Kobayashi ◽  
Ryosuke Sato
Keyword(s):  

2015 ◽  
Vol 15 (4-5) ◽  
pp. 635-650 ◽  
Author(s):  
EMANUELE DE ANGELIS ◽  
FABIO FIORAVANTI ◽  
ALBERTO PETTOROSSI ◽  
MAURIZIO PROIETTI

AbstractWe present a method for verifying the correctness of imperative programs which is based on the automated transformation of their specifications. Given a program prog, we consider a partial correctness specification of the form {ϕ}, prog {ψ}, where the assertions ϕ and ψ are predicates defined by a set Spec of possibly recursive Horn clauses with linear arithmetic (LA) constraints in their premise (also called constrained Horn clauses). The verification method consists in constructing a set PC of constrained Horn clauses whose satisfiability implies that {ϕ}, prog, {ψ} is valid. We highlight some limitations of state-of-the-art constrained Horn clause solving methods, here called LA-solving methods, which prove the satisfiability of the clauses by looking for linear arithmetic interpretations of the predicates. In particular, we prove that there exist some specifications that cannot be proved valid by any of those LA-solving methods. These specifications require the proof of satisfiability of a set PC of constrained Horn clauses that contain nonlinear clauses (that is, clauses with more than one atom in their premise). Then, we present a transformation, called linearization, that converts PC into a set of linear clauses (that is, clauses with at most one atom in their premise). We show that several specifications that could not be proved valid by LA-solving methods, can be proved valid after linearization. We also present a strategy for performing linearization in an automatic way and we report on some experimental results obtained by using a preliminary implementation of our method.


2002 ◽  
Vol 19 (311) ◽  
Author(s):  
Michael I. Schwartzbach ◽  
Kim Skak Larsen

<p>Most unary relational database operators can be described through functions from tuples to tuples. Injectivity of the specified function ensures that no duplicates are created in the relational result. This normally reduces the complexity of the query from O(r log r) to O(r), where r is the number of tuples in the argument relation.</p><p> </p><p>We consider functions obtained as terms over a general signature. The semantic properties of the operators are specified by Horn clauses generalizing functional dependencies. Relative to such specifications, we present an optimal algorithm for detecting injectivity of unary queries. The complexity of this algorithm is linear in the size of the query.</p><p> </p><p>It turns out that relational functional dependencies are very easily incorporated into this framework. As a further result, we provide a Horn clause characterization of the functional dependencies that can be propagated to the result relation.</p>


10.29007/pz3t ◽  
2018 ◽  
Author(s):  
Nikolaj Bjorner ◽  
Dejan Jovanović ◽  
Tancrède Lepoint ◽  
Philipp Rümmer ◽  
Martin Schäf

Crowdsourcing promises to quasi-automate tasks that cannot be automated otherwise. Success stories like natural language translation or recognition of cats in images show that carefully crafted crowdsourcing tasks solve large problem instances which could not be solved otherwise. To utilize crowdsourcing, one has to define the problem in a way that is easy to split into small tasks, that the tasks are easy to solve for humans and hard to solve for a machine, and that the machine can efficiently check if the solution is correct.In this paper we discuss a novel approach of using crowdsourcing to assist software verification. We argue that Horn clauses form a good base for crowdsourcing since they are easy to subdivide, and that logic abduction is a suitable task since it is hard to find abductive inferences for Horn clauses automatically, but it is easy to check if an inference makes a Horn clause valid. We describe a prototype implementation, we show how crowdsourcing integrates in the verification process, and present preliminary results.


2019 ◽  
Vol 26 (4) ◽  
pp. 550-571
Author(s):  
Dmitry A. Mordvinov

Property Directed Reachability (PDR) is an efficient and scalable approach to solving systems of symbolic constraints also known as Constrained Horn Clauses (CHC). In the case of non-linear CHCs, which may arise, e.g., from relational verification tasks, PDR aims to infer an inductive invariant for each uninterpreted predicate. However, in many practical cases this reasoning is not successful, as invariants should be derived for groups of predicates instead of individual predicates. The article describes a novel algorithm that identifies these groups automatically and complements the existing PDR technique. The key feature of the algorithm is that it does not require a possibly expensive synchronization transformation over the system of CHCs. We have implemented the algorithm on top of a up-to-date CHC solver Spacer. Our experimental evaluation shows that for some CHC systems, on which existing solvers diverge, our tool is able to discover relational invariants.


10.29007/gr5c ◽  
2018 ◽  
Author(s):  
Dmitry Mordvinov ◽  
Grigory Fedyukovich

Simultaneous occurrences of multiple recurrence relations in a system of non-linear constrained Horn clauses are crucial for proving its satis ability. A solution of such system is often inexpressible in the constraint language. We propose to synchronize recurrent computations, thus increasing the chances for a solution to be found. We introduce a notion of CHC product allowing to formulate a lightweight iterative algorithm of merging recurrent computations into groups and prove its soundness. The evaluation over a set of systems handling lists and linear integer arithmetic confirms that the transformed systems are drastically more simple to solve than the original ones.


1967 ◽  
Vol 28 ◽  
pp. 105-176
Author(s):  
Robert F. Christy

(Ed. note: The custom in these Symposia has been to have a summary-introductory presentation which lasts about 1 to 1.5 hours, during which discussion from the floor is minor and usually directed at technical clarification. The remainder of the session is then devoted to discussion of the whole subject, oriented around the summary-introduction. The preceding session, I-A, at Nice, followed this pattern. Christy suggested that we might experiment in his presentation with a much more informal approach, allowing considerable discussion of the points raised in the summary-introduction during its presentation, with perhaps the entire morning spent in this way, reserving the afternoon session for discussion only. At Varenna, in the Fourth Symposium, several of the summaryintroductory papers presented from the astronomical viewpoint had been so full of concepts unfamiliar to a number of the aerodynamicists-physicists present, that a major part of the following discussion session had been devoted to simply clarifying concepts and then repeating a considerable amount of what had been summarized. So, always looking for alternatives which help to increase the understanding between the different disciplines by introducing clarification of concept as expeditiously as possible, we tried Christy's suggestion. Thus you will find the pattern of the following different from that in session I-A. I am much indebted to Christy for extensive collaboration in editing the resulting combined presentation and discussion. As always, however, I have taken upon myself the responsibility for the final editing, and so all shortcomings are on my head.)


Sign in / Sign up

Export Citation Format

Share Document