A New Encoding of Not Necessarily Closed Convex Polyhedra
نویسندگان
چکیده
Many applications of static analysis and verification compute on some abstract domain based on convex polyhedra. Traditionally, most of these applications are restricted to convex polyhedra that are topologically closed. When adopting the Double Description (DD) method [8], a closed convex polyhedron can be specified in two ways, using a constraint system or a generator system: the constraint system contains a finite set of linear non-strict inequality constraints; the generator system contains two finite sets of vectors, collectively called generators, which are rays and points of the polyhedron. Some applications of static analysis and verification, including recent proposal such as [3], need to compute on the domain of not necessarily closed (NNC) convex polyhedra. By definition, any NNC polyhedron can be represented by a so-called mixed constraint system, that is, a constraint system where a further finite set of linear strict inequality constraints is allowed to occur. The usual approach for implementing NNC polyhedra is to embed them into closed polyhedra in a vector space with one extra dimension. While this idea, originally proposed in [6] and also described in [7], proved to be quite effective, its direct application results in a low-level user interface where most of the geometric intuition of the DD method gets lost under the “implementation details”. A much cleaner approach was proposed in [1, 2], where the concept of generator of an NNC polyhedron is extended to also account for the closure points of the polyhedron. In particular, it is shown that any NNC polyhedron can be elegantly and intuitively represented by means of extended generator systems. The combined use of mixed constraint systems and extended generator systems provides a higher level interface to the domain of NNC polyhedra, allowing for simpler definitions of some of the corresponding operators.
منابع مشابه
A New Encoding and Implementation of Not Necessarily Closed Convex Polyhedra
Convex polyhedra, commonly employed for the analysis and verification of both hardware and software, may be defined either by a finite set of linear inequality constraints or by finite sets of generating points and rays of the polyhedron. Although most implementations of the polyhedral operations assume that the polyhedra are topologically closed (i.e., all the constraints defining them are non...
متن کاملUnder consideration for publication in Formal Aspects of Computing Not Necessarily Closed Convex Polyhedra and the Double Description Method
Since the seminal work of Cousot and Halbwachs, the domain of convex polyhedra has been employed in several systems for the analysis and verification of hardware and software components. Although most implementations of the polyhedral operations assume that the polyhedra are topologically closed (i.e., all the constraints defining them are non-strict), several analyzers and verifiers need to co...
متن کاملPossibly Not Closed Convex Polyhedra and the Parma Polyhedra Library
The domain of convex polyhedra is employed in several systems for the analysis and verification of hardware and software components. Current applications span imperative, functional and logic languages, synchronous languages and synchronization protocols, real-time and hybrid systems. Since the seminal work of P. Cousot and N. Halbwachs, convex polyhedra have thus played an important role in th...
متن کاملFIMS: a New and Efficient Algorithm for the Computation of Minkowski Sum of Convex Polyhedra
The Minkowski sum computation and implementation in 2D and 3D domains is of a particular interest because it has a large number of applications in many domains such as: mathematical morphology, image processing and analysis, robotics, spatial planning, computer aided design and manufacturing, image processing ... However, no exact, fast, and general algorithms are found in the literature. We pr...
متن کاملExact join detection for convex polyhedra and other numerical abstractions
Deciding whether the union of two convex polyhedra is itself a convex polyhedron is a basic problem in polyhedral computations; having important applications in the field of constrained control and in the synthesis, analysis, verification and optimization of hardware and software systems. In such application fields though, general convex polyhedra are just one among many, so-called, numerical a...
متن کامل