submit
english version rss feed
HAL: hal-00189821, version 2

Detailed view  Export this paper
Verification, Model Checking, and Abstract Interpretation (VMCAI'2007), Nice : France (2007)
Available versions:
An Abstract Domain Extending Difference-Bound Matrices with Disequality Constraints
Mathias Péron ( ) 1, Nicolas Halbwachs 1
(2007-01)

Knowing that two numerical variables always hold different values, at some point of a program, can be very useful, especially for analyzing aliases: if i ≠ j, then A[i] and A[j] are not aliased, and this knowledge is of great help for many other program analyses. Surprisingly, disequalities are seldom considered in abstract interpretation, most of the proposed numerical domains being restricted to convex sets. In this paper, we propose to combine simple ordering properties with disequalities. “Difference-bound matrices” (or DBMs) is a domain proposed by David Dill, for expressing relations of the form x − y ≤ c or c ≤ x ≤ c'. We define dDBMs (“disequalities DBMs”) as conjunctions of DBMs with simple disequalities of the form x ≠ y or x ≠ 0. We give algorithms on dDBMs, for deciding the emptiness, computing a normal form, and performing the usual operations of an abstract domain. These algorithms have the same complexity (O(n 3), where n is the number of variables) than those for classical DBMs, if the variables are considered to be valued in a dense set (ℝ or ℚ). In the arithmetic case, the emptiness decision is NP-complete, and other operations run in O(n 5).
1:  VERIMAG (VERIMAG - IMAG)
CNRS : UMR5104 – Université Joseph Fourier - Grenoble I – Institut National Polytechnique de Grenoble - INPG
Computer Science/Software Engineering

Computer Science/Data Structures and Algorithms
abstract interpretation – abstract domains – alias analysis – difference-bound matrices – disequalities – static analysis
Attached file list to this document: 
PDF
PeronHalbwachsVMCAI07.pdf(292.7 KB)

all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...
all articles on CCSd database...