Constraint specialisation in Horn clause verification

Bishoksan Kafle, John Patrick Gallagher

Research output: Contribution to journalJournal articleResearchpeer-review

Abstract

We present a method for specialising the constraints in constrained Horn clauses with respect to a goal. We use abstract interpretation to compute a model of a query–answer transformed version of a given set of clauses and a goal. The constraints from the model are then used to compute a specialised version of each clause. The effect is to propagate the constraints from the goal top-down and propagate answer constraints bottom-up. The specialisation procedure can be repeated to yield further specialisation. The approach is independent of the abstract domain and the constraint theory underlying the clauses. Experimental results on verification problems show that this is an effective transformation, both in our own verification tools (based on a convex polyhedra analyser) and as a pre-processor to other Horn clause verification tools.
Original languageEnglish
JournalScience of Computer Programming
Volume137
Pages (from-to)125-140
Number of pages16
ISSN0167-6423
DOIs
Publication statusPublished - 1 Apr 2017

Keywords

  • Abstract Interpretation
  • Constraint specialisation
  • Program verification
  • Query–answer transformation
  • program analysis

Cite this