Projects per year
Abstract
In this paper we apply tree-automata techniques to refinement of abstract interpretation in Horn clause verification. We go beyond previous work on refining trace abstractions; firstly we handle tree automata rather than string automata and thereby can capture traces in any Horn clause derivations rather than just transition systems; secondly, we show how algorithms manipulating tree automata interact with abstract interpretations, establishing progress in refinement and generating refined clauses that eliminate causes of imprecision. We show how to derive a refined set of Horn clauses in which given infeasible traces have been eliminated, using a recent optimised algorithm for tree automata determinisation. We also show how we can introduce disjunctive abstractions selectively by splitting states in the tree automaton. The approach is independent of the abstract domain and constraint theory underlying the Horn clauses. Experiments using linear constraint problems and the abstract domain of convex polyhedra show that the refinement technique is practical and that iteration of abstract interpretation with tree automata-based refinement solves many challenging Horn clause verification problems. We compare the results with other state-of-the-art Horn clause verification tools.
Original language | English |
---|---|
Journal | Computer Languages, Systems and Structures |
Volume | 47 |
Issue number | Part 1 |
Pages (from-to) | 2-18 |
Number of pages | 17 |
ISSN | 1477-8424 |
DOIs | |
Publication status | Published - Jan 2017 |
Keywords
- Program verification
- static analysis
- tree automata
Projects
- 2 Finished
-
ICT-Energy
Gallagher, J. P. (Project participant), Rosendahl, M. (Project participant) & Bohr, N. (Project participant)
01/10/2013 → 30/09/2016
Project: Research
-
ENTRA: Whole-Systems Energy Transparency
Gallagher, J. P. (Project participant), Rosendahl, M. (Project participant), Rhiger, M. (Project participant), Strand, D. L. (Project manager) & Bohr, N. (Project participant)
01/10/2012 → 30/09/2015
Project: Research