Convex polyhedral abstractions, specialisation and property-based predicate splitting in Horn clause verification
@inproceedings{Kafle2014ConvexPA, title={Convex polyhedral abstractions, specialisation and property-based predicate splitting in Horn clause verification}, author={Bishoksan Kafle and John P. Gallagher}, booktitle={HCVS}, year={2014} }
We present an approach to constrained Horn clause (CHC) verification combining three techniques: abstract interpretation over a domain of convex polyhedra, specialisation of the constraints in CHCs using abstract interpretation of query-answer transformed clauses, and refinement by splitting predicates. The purpose of the work is to investigate how analysis and transformation tools developed for constraint logic programs (CLP) can be applied to the Horn clause verification problem. Abstract…
3 Citations
On recursion-free Horn clauses and Craig interpolation
- Computer ScienceFormal Methods Syst. Des.
- 2015
A new notion of interpolation is introduced, disjunctive interpolation, which solves a more general class of problems in one step compared to previous notions of interpolant, such as tree interpolants or inductive sequences of interpolants.
Probabilistic program analysis
- Computer Science
- 2018
This thesis addresses the challenge of inferring information about the probabilities of a program’s output or its resource usage by presenting a transformation-based probability analysis for discrete probabilities yielding upper probability bounds of discrete output events and approaches to analyse non-deterministic and probabilistic programs.
References
SHOWING 1-10 OF 43 REFERENCES
Solving Recursion-Free Horn Clauses over LI+UIF
- Computer ScienceAPLAS
- 2011
This paper presents an algorithm for solving recursion free Horn clauses over a combined theory of linear real/rational arithmetic and uninterpreted functions and performs resolution to deal with the clausal structure and relies on partial solutions to deals with (non-local) instances of functionality axioms.
On Solving Universally Quantified Horn Clauses
- Computer ScienceSAS
- 2013
This work shows how to simulate existing abstract domains in this way, without having to directly implement program analyses or make certain heuristic choices, such as the terms and predicates that form the parameters of the abstract domain.
Verifying programs via iterated specialization
- Computer SciencePEPM '13
- 2013
A method for verifying properties of imperative programs by using techniques based on the specialization of constraint logic programs (CLP) is presented, and it is shown that the method is competitive with respect to state-of-the-art software model checkers.
Controlling Polyvariance for Specialization-based Verification
- Computer ScienceCILC
- 2011
It is demonstrated, through experiments on several infinite state reactive systems, that by a careful choice of the degree of polyvariance the authors can design specialization-based verification procedures that are both efficient and precise.
The Parma Polyhedra Library: Toward a complete set of numerical abstractions for the analysis and verification of hardware and software systems
- Computer ScienceSci. Comput. Program.
- 2008
Inferring Argument Size Relationships with CLP(R)
- Computer ScienceLOPSTR
- 1996
It is shown how a precise analysis for inter-argument size relationships, formulated in terms of abstract interpretation, can be implemented straightforwardly in a language with constraint support like CLP(R) or SICStus version 3.
Path invariants
- Computer SciencePLDI '07
- 2007
The method handles loops without unrolling and infers abstractions that involve universal quantification and naturally incorporates disjunctive reasoning, and uses path invariants for abstraction refinement in order to remove all infeasible error computations that are represented by a path program.
Regular Approximation of Computation Paths in Logic and Functional Languages
- Computer ScienceDagstuhl Seminar on Partial Evaluation
- 1996
A method of approximating trace-terms is described, based on well-established methods for computing regular approximations of terms, applicable to both logic and functional languages, and appears to offer appropriate control information in both formalisms.
Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints
- Computer SciencePOPL
- 1977
A program denotes computations in some universe of objects. Abstract interpretation of programs consists in using that denotation to describe computations in another universe of abstract objects, so…