The problem of computing Craig interpolants in SMT has recently received a lot of interest, mainly for its applications in formal verification. Efficient algorithms for interpolant generation have been presented for some theories of interest –including that of equality and uninterpreted functions (EUF), linear arithmetic over the rationals (LA(Q)), and some fragments of linear arithmetic over the integers (LA(Z))– and they are successfully used within model checking tools. In this paper we address the problem of computing interpolants in the theory of Unit-Two-Variable-Per-Inequality (UTVPI). This theory is a very useful fragment of LA(Z), since it is the most expressive fragment of LA(Z) with a polynomial decision procedure, and many HWand SWverification queries are naturally expressed in this fragment. We present an efficient graph-based algorithm for interpolant generation in UTVPI, which exploits the power of modern SMT techniques. We have implemented our new algorithm within the MATHSAT SMT solver. Our experimental evaluation demonstrates both the efficiency and the usefulness of the new algorithm.

Interpolant Generation for UTVPI

Cimatti, Alessandro;Griggio, Alberto;Sebastiani, Roberto
2009-01-01

Abstract

The problem of computing Craig interpolants in SMT has recently received a lot of interest, mainly for its applications in formal verification. Efficient algorithms for interpolant generation have been presented for some theories of interest –including that of equality and uninterpreted functions (EUF), linear arithmetic over the rationals (LA(Q)), and some fragments of linear arithmetic over the integers (LA(Z))– and they are successfully used within model checking tools. In this paper we address the problem of computing interpolants in the theory of Unit-Two-Variable-Per-Inequality (UTVPI). This theory is a very useful fragment of LA(Z), since it is the most expressive fragment of LA(Z) with a polynomial decision procedure, and many HWand SWverification queries are naturally expressed in this fragment. We present an efficient graph-based algorithm for interpolant generation in UTVPI, which exploits the power of modern SMT techniques. We have implemented our new algorithm within the MATHSAT SMT solver. Our experimental evaluation demonstrates both the efficiency and the usefulness of the new algorithm.
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11582/4599
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

Citazioni
  • ???jsp.display-item.citation.pmc??? ND
social impact