An Empirical Analysis of Feasibility Checking Algorithms for UTVPI Constraints

In this paper, we document the results of a detailed implementation study of two different algorithms for checking real (linear) and integer feasibility in a conjunction of Unit Two Variable per Inequality (UTVPI) constraints. Recall that a UTVPI constraint is a linear relationship of the form: \(a\cdot x_{i}+b\cdot x_{j} \le c_{ij}\), where \(a,b \in \{-1,0,1\}\). A conjunction of UTVPI constraints is called a UTVPI constraint system (UCS). UTVPI constraints subsume difference constraints. Unlike difference constraints, the linear and integer feasibilities for UCSs do not coincide. UCSs find applications in a number of different domains such as abstract interpretation, packing, and covering. There exist several algorithms for UCS linear feasibility and integer feasibility with various running times. We will focus on the linear feasibility algorithms in [19] (\(LF_1\)) and [13] (\(LF_2\)). We also focus on the integer feasibility algorithms in [18] (\(IF_1\)) and [13] (\(IF_2\)). We compare our implementations to the Yices SMT solver [17] running linear real arithmetic (QF_LRA) and linear integer arithmetic (QF_LIA). Our experiments indicate that \(LF_1\) is moderately superior to \(LF_2\) in terms of time, and that \(IF_1\) is vastly superior to \(IF_2\) in terms of time. Additionally on small inputs the Yices Solver performs better than the implemented algorithms, however the implemented algorithms perform much better on larger inputs.

[1]  Ronald L. Rivest,et al.  Introduction to Algorithms , 1990 .

[2]  K. Subramani,et al.  A Combinatorial Certifying Algorithm for Linear Feasibility in UTVPI Constraints , 2016, Algorithmica.

[3]  Patrick Cousot,et al.  Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints , 1977, POPL.

[4]  Richard Gerber,et al.  Parametric Dispatching of Hard Real-Time Tasks , 1995, IEEE Trans. Computers.

[5]  Peter J. Stuckey,et al.  O-trees: a constraint-based index structure , 2000, Proceedings 11th Australasian Database Conference. ADC 2000 (Cat. No.PR00528).

[6]  Antoine Mid The Octagon Abstract Domain , 2001 .

[7]  Shuvendu K. Lahiri,et al.  An Efficient Decision Procedure for UTVPI Constraints , 2005, FroCoS.

[8]  K. Subramani,et al.  Analyzing Lattice Point Feasibility in UTVPI Constraints , 2017, CP.

[9]  Oded Maler,et al.  Fast and Flexible Difference Constraint Propagation for DPLL(T) , 2006, SAT.

[10]  Peter Z. Revesz,et al.  Tightened Transitive Closure of Integer Addition Constraints , 2009, SARA.

[11]  Ravindra K. Ahuja,et al.  Network Flows: Theory, Algorithms, and Applications , 1993 .

[12]  Ingemar J. Cox,et al.  "Ratio regions": a technique for image segmentation , 1996, Proceedings of 13th International Conference on Pattern Recognition.

[13]  Roberto Bagnara,et al.  Weakly-relational shapes for numeric abstractions: improved algorithms and proofs of correctness , 2009, Formal Methods Syst. Des..

[14]  Antoine Miné,et al.  The octagon abstract domain , 2001, High. Order Symb. Comput..