Result Details

Automata-based Verification of Programs with Tree Updates

HABERMEHL, P., RADU, I., VOJNAR, T. Automata-based Verification of Programs with Tree Updates. Verimag Technical Report number TR-2005-16, Grenoble: VERIMAG, 2005. 28 p.
Type
research report
Language
English
Authors
Habermehl Peter
Radu Iosif
Vojnar Tomáš, prof. Ing., Ph.D., DITS (FIT)
Abstract

This paper describes an effective verification procedure for imperativeprograms that handle (balanced) tree-like data structures. Since theverification problem considered is undecidable, we appeal to aclassical semi-algorithmic approach in which the user has to providemanually the loop invariants in order to check the validity of Hoaretriples of the form $\{P\}C\{Q\}$, where $P, Q$ are the sets of statescorresponding to the pre- and post-conditions, and $C$ is the programto be verified. We specify the sets of states (representing tree-likememory configurations) using  a special class of tree automatanamed Tree Automata with Size Constraints (TASC). The main advantage ofusing TASC in program specifications is that they recognize non-regularsets of treelanguages such as the {\em AVL trees}, the  {\em red-black trees},and in general, specifications involving arithmetic reasoning about thelengths (depths) of various (possibly all) paths in the tree. The classof TASC is closed under the operations of union, intersection andcomplement, and moreover, the emptiness problem is decidable, whichmakes it a practical verification tool. We validate our approachconsidering red-black trees and the insertion procedure, for which weverify that the output of the insertion algorithm is a {\em balanced}red-black tree, i.e. the longest path is at most twice as long as theshortest path.

Keywords

formal verification, symbolic methods, automata theory, tree automata, automata with constraints

Published
2005
Pages
28
Publisher
VERIMAG
Place
Verimag Technical Report number TR-2005-16, Grenoble
BibTeX
@techreport{BUT58317,
  author="Peter {Habermehl} and Iosif {Radu} and Tomáš {Vojnar}",
  title="Automata-based Verification of Programs with Tree Updates",
  year="2005",
  publisher="VERIMAG",
  address="Verimag Technical Report number TR-2005-16, Grenoble",
  pages="28"
}
Projects
Advanced Methods of Automatic Verification of Parametric and Infinite-State Systems, GACR, Postdoktorandské granty, GP102/03/D211, start: 2003-09-01, end: 2006-09-01, completed
Automated methods and tools supporting development of reliable parallel and distributed systems, GACR, Standardní projekty, GA102/04/0780, start: 2004-01-01, end: 2006-12-31, completed
Research groups
Departments
Back to top