Skip to main content

Improving Interpolants for Linear Arithmetic

  • Conference paper
  • First Online:
Book cover Automated Technology for Verification and Analysis (ATVA 2015)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9364))

Abstract

Craig interpolation for satisfiability modulo theory formulas have come more into focus for applications of formal verification. In this paper we, introduce a method to reduce the size of linear constraints used in the description of already computed interpolant in the theory of linear arithmetic with respect to the number of linear constraints. We successfully improve interpolants by combining satisfiability modulo theory and linear programming in a local search heuristic. Our experimental results suggest a lower running time and a larger reduction compared to other methods from the literature.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Pudlák, P.: Lower bounds for resolution and cutting plane proofs and monotone computations. J. Symbolic Logic 62(3), 981–998 (1997)

    Article  MathSciNet  MATH  Google Scholar 

  2. McMillan, K.L.: Interpolation and sat-based model checking. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp. 1–13. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  3. Albarghouthi, A., McMillan, K.L.: Beautiful interpolants. In: Sharygina, N., Veith, H. (eds.) CAV 2013. LNCS, vol. 8044, pp. 313–329. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  4. Damm, W., Dierks, H., Disch, S., Hagemann, W., Pigorsch, F., Scholl, C., Waldmann, U., Wirtz, B.: Exact and fully symbolic verification of linear hybrid automata with large discrete state spaces. Sci. Comput. Program. 77(10–11), 1122–1150 (2012)

    Article  MATH  Google Scholar 

  5. Megiddo, N.: On the complexity of polyhedral separability. Discrete Comput. Geom. 3(1), 325–337 (1988)

    Article  MathSciNet  MATH  Google Scholar 

  6. Scholl, C., Pigorsch, F., Disch, S., Althaus, E.: Simple interpolants for linear arithmetic. In: Design, Automation and Test in Europe Conference and Exhibition (DATE), 2014, pp. 1–6. IEEE (2014)

    Google Scholar 

  7. William, C.: Three uses of the Herbrand-Gentzen theorem in relating model theory and proof theory. J. Symbolic Logic 22(03), 269–285 (1957)

    Article  MathSciNet  MATH  Google Scholar 

  8. McMillan, K.L.: An interpolating theorem prover. Theoret. Comput. Sci. 345(1), 101–121 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  9. Rybalchenko, A., Sofronie-Stokkermans, V.: Constraint solving for interpolation. In: Cook, B., Podelski, A. (eds.) VMCAI 2007. LNCS, vol. 4349, pp. 346–362. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  10. Scholl, C., Disch, S., Pigorsch, F., Kupferschmid, S.: Using an SMT solver and craig interpolation to detect and remove redundant linear constraints in representations of non-convex polyhedra. In: Proceedings of the Joint Workshops of the 6th International Workshop on Satisfiability Modulo Theories and 1st International Workshop on Bit-Precise Reasoning, pp. 18–26. ACM (2008)

    Google Scholar 

  11. Damm, W., Disch, S., Hungar, H., Jacobs, S., Pang, J., Pigorsch, F., Scholl, C., Waldmann, U., Wirtz, B.: Exact state set representations in the verification of linear hybrid systems with large discrete state space. In: Namjoshi, K.S., Yoneda, T., Higashino, T., Okamura, Y. (eds.) ATVA 2007. LNCS, vol. 4762, pp. 425–440. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  12. Dutertre, B., De Moura, L.: The yices SMT solver (2006). http://yices.csl.sri.com/tool-paper.pdf

  13. Applegate, D.L., Cook, W., Dash, S., Espinoza, D.G.: Exact solutions to linear programming problems. Oper. Res. Lett. 35(6), 693–699 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  14. Griggio, A.: A practical approach to satisfiability modulo linear integer arithmetic. JSAT 8, 1–27 (2012)

    MathSciNet  MATH  Google Scholar 

  15. Rakow, A.: Flap/Slat System. http://www.avacs.org/fileadmin/Benchmarks/Open/FlapSlatSystem.pdf

Download references

Acknowledgment

The results presented in this paper were developed in the context of the Transregional Collaborative Research Center ‘Automatic Verification and Analysis of Complex Systems’ (SFB/TR 14 AVACS) supported by the German Research Council (DFG). We worked in close coorperation with our colleagues from the ’First Order Model Checking Team’ within the subproject H3 and we would like to thank W. Damm, B. Wirtz, W. Hagemann, and A. Rakow from the University of Oldenburg, U. Waldmann from the Max Planck Institute for Informatics at Saarbrücken and S. Disch from the University of Freiburg for numerous ideas and discussions

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Björn Beber .

Editor information

Editors and Affiliations

Appendices

A Detailed Description of the Linear Program

Recall the variables given in Sect. 3.4. Let \(A^i,B^i\) be the convex sets of the i-th iteration, constructed by \(s_{\!A^i}\), respectively \(s_{\!B^i}\), conjunctions of linear constraints. Then \(A^i\) is formally defined by \(A^i = \left\{ x \in \mathbb {R}^m |\, \mathcal {A}^i x \le \alpha ^i \right\} \), with and \(B^i = \left\{ x \in \mathbb {R}^m |\, \mathcal {B}^i x \le \beta ^i \right\} \), with . We additionally introduce \(s_{\!A^i}\) variables \(\lambda ^i\) and \(s_{\!B^i}\) variables \(\mu ^i\) for every iteration \(i\in \{1,\dots ,k\}\).

We look for an inequality that maximizes a simple measure of the distance of the constructed inequality to the convex regions. We do this by subtracting the \(\varepsilon \) to the positive convex combination of the inequalities from \(A^i\) for l, i.e. the convex combination leads to \(d^Tx \le d_0 - \varepsilon \). As we can scale any LP-solution by an arbitrary positive scalar so far, we have to normalize the solution. Therefore, we restrict the linear combination of one region to be a convex combination.

Hence, we obtain the following LP, where all linear constraints except (6) and (11) are introduced for all \(i \in \left\{ 1 ,\dots , k \right\} \):

$$\begin{aligned} {\max }\quad {\varepsilon } \end{aligned}$$
(3)
$$\begin{aligned} \mathrm{s.t.}\quad {(\mathcal {A}^i)^T\lambda ^i}{=}{d} \end{aligned}$$
(4)
$$\begin{aligned} {(\mathcal {B}^i)^T\mu ^i}{=}{d} \end{aligned}$$
(5)
$$\begin{aligned} {\sum \lambda ^1}{=}{1} \end{aligned}$$
(6)
$$\begin{aligned} {(\alpha ^i)^T\lambda ^i}{\le }{d_0-\varepsilon } \end{aligned}$$
(7)
$$\begin{aligned} {(\beta ^i)^T\mu ^i}{\ge }{d_0+\varepsilon } \end{aligned}$$
(8)
$$\begin{aligned} {\lambda ^i}{\ge }{0} \end{aligned}$$
(9)
$$\begin{aligned} {\mu ^i}{\le }{0} \end{aligned}$$
(10)
$$\begin{aligned} {\varepsilon }{\ge }{0} \end{aligned}$$
(11)

Constraints (4) and (5) force that the direction of the new constraint, described by d, is representable by the linear constraint of the convex regions. Conditions (711) verify that convex regions are on the right side of \(l^*\). Condition (6) normalizes the solutions.

B Detailed Distinction for Non-Closed Polyhedra

The following proposition states when we have found a separating constraint in case of \(\varepsilon = 0\).

Proposition 2

Assume the LP (411) has optimal value 0 and let \((\bar{d},\bar{d_0})\) be the solution of the LP for the variables d and \(d_0\).

  1. 1.

    If for all \(i \in \left\{ 1, \dots , k \right\} \) either \((\beta ^i)^T\mu ^i - d_0 > 0\) or there exists a strict inequality \(s\ne \mathbf {0}\) in \(\mathcal {B}^i\) with variable \((\mu ^i)_s\) such that \((\mu ^i)_s<0\), then \(\bar{a}^T x \le \bar{d_0}\) separates the regions.

  2. 2.

    If for all \(i \in \left\{ 1, \dots , k \right\} \) either \((\alpha ^i)^T\lambda ^i - d_0 < 0\) or there exists a strict inequality \(s\ne \mathbf {0}\) in \(\mathcal {A}^i\) with variable \((\lambda ^i)_s\) such that \((\lambda ^i)_s>0\), then \(\bar{a}^Tx < \bar{d_0}\) separates the regions.

The proof for this proposition is straight forward and will not be given in the paper.

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Althaus, E., Beber, B., Kupilas, J., Scholl, C. (2015). Improving Interpolants for Linear Arithmetic. In: Finkbeiner, B., Pu, G., Zhang, L. (eds) Automated Technology for Verification and Analysis. ATVA 2015. Lecture Notes in Computer Science(), vol 9364. Springer, Cham. https://doi.org/10.1007/978-3-319-24953-7_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-24953-7_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-24952-0

  • Online ISBN: 978-3-319-24953-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics