Exact Join Detection for Convex Polyhedra and Other Numerical Abstractions

Roberto Bagnara,Patricia M. Hill,Enea Zaffanella
DOI: https://doi.org/10.48550/arXiv.0904.1783
2009-08-10
Abstract: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 abstractions, which range from restricted families of (not necessarily closed) convex polyhedra to non-convex geometrical objects. We thus tackle the problem from an abstract point of view: for a wide range of numerical abstractions that can be modeled as bounded join-semilattices --that is, partial orders where any finite set of elements has a least upper bound--, we show necessary and sufficient conditions for the equivalence between the lattice-theoretic join and the set-theoretic union. For the case of closed convex polyhedra --which, as far as we know, is the only one already studied in the literature-- we improve upon the state-of-the-art by providing a new algorithm with a better worst-case complexity. The results and algorithms presented for the other numerical abstractions are new to this paper. All the algorithms have been implemented, experimentally validated, and made available in the Parma Polyhedra Library.
Computational Geometry
What problem does this paper attempt to address?
The problem that this paper attempts to solve is the problem of detecting the exact union of two convex polyhedra or other numerical abstract objects in numerical abstraction. Specifically, the authors explore how to determine whether the union of two convex polyhedra (or other numerical abstract objects) is still a convex polyhedron (or the corresponding numerical abstract object). This problem has important application value in fields such as control theory, synthesis, analysis, verification and optimization of hardware and software systems. ### Main Contributions 1. **For Closed Convex Polyhedra**: - A new algorithm is proposed, which improves the worst - case complexity in the existing literature regarding closed convex polyhedra. - Theoretical results and algorithms are provided for detecting the exact union of two closed convex polyhedra. 2. **For Other Numerical Abstract Objects**: - For the first time, theoretical results and algorithms for exact union detection of other numerical abstract objects (such as convex polyhedra that are not necessarily closed, "box - like" geometric objects, bounded - difference shapes of rational and integer numbers, octagonal shapes of rational and integer numbers, etc.) are provided. - These algorithms have not only been theoretically proven, but also implemented, experimentally verified, and integrated into the Parma Polyhedra Library. ### Key Points of the Solution - **Closed Convex Polyhedra**: - Detect whether the union of two closed convex polyhedra is a convex polyhedron through the double - description method (using both constraint description and generator description simultaneously). - A new algorithm is proposed, whose worst - case complexity is better than existing methods. - **Other Numerical Abstract Objects**: - For each type of numerical abstract object, specific conditions and algorithms are proposed to detect whether its union is the type of numerical abstract object. - For example, for convex polyhedra that are not necessarily closed, more complex conditions are proposed, including subset relations of generators, saturation of constraints, etc. ### Application Background - **Control Engineering**: Simplify the solutions to complex control problems and reduce the cost of control hardware. - **Hardware and Software Systems**: In the synthesis, analysis, verification and optimization of hardware and software systems, exact union detection can improve the efficiency and accuracy of algorithms. - **Static Analysis**: In abstract interpretation, exact union detection can be used as a pre - processing step for expanding convex hull problems and other related problems. ### Conclusion This paper solves the problem of exact union detection in numerical abstraction by providing new theoretical results and efficient algorithms, especially for the applications on closed convex polyhedra and other numerical abstract objects. These achievements are not only theoretically breakthroughs, but also of great significance in practical applications.