@article {356,
	title = {Using linear algebra in decomposition of Farkas interpolants},
	journal = {International Journal on Software Tools for Technology Transfer},
	year = {2021},
	type = {Journal},
	abstract = {<p>The use of propositional logic and systems of linear inequalities over reals is a common means to model software for formal verification. Craig interpolants constitute a central building block in this setting for over-approximating reachable states, e.g. as candidates for inductive loop invariants. Interpolants for a linear system can be efficiently computed from a Simplex refutation by applying the Farkas{\textquoteright} lemma. However, these interpolants do not always suit the verification task{\textemdash}in the worst case, they can even prevent the verification algorithm from converging. This work introduces the decomposed interpolants, a fundamental extension of the Farkas interpolants, obtained by identifying and separating independent components from the interpolant structure, using methods from linear algebra. We also present an efficient polynomial algorithm to compute decomposed interpolants and analyse its properties. We experimentally show that the use of decomposed interpolants in model checking results in immediate convergence on instances where state-of-the-art approaches diverge. Moreover, since being based on the efficient Simplex method, the approach is very competitive in general.</p>
},
	url = {https://link.springer.com/article/10.1007/s10009-021-00641-z},
	author = {Martin Blicha and Antti E. J. Hyv{\"a}rinen and Jan Kofron and Natasha Sharygina}
}
@conference {298,
	title = {Decomposing Farkas Interpolants},
	booktitle = {TACAS},
	year = {2019},
	author = {Martin Blicha and Antti E. J. Hyv{\"a}rinen and Jan Kofron and Natasha Sharygina}
}
@article {351,
	title = {Exploiting partial variable assignment in interpolation-based model checking.},
	journal = {Formal Methods in System Design},
	year = {2019},
	abstract = {<p>Craig interpolation has been successfully employed in symbolic program verification as a means of abstraction for sets of program states. In this article, we present the partial variable assignment interpolation system, an extension of the labeled interpolation system, enriched by partial variable assignments. It allows for both generation of smaller interpolants as well as for their faster computation. We present proofs of important properties of the interpolation system as well as a set of experiments proving its usefulness.</p>
},
	url = {https://link.springer.com/article/10.1007\%2Fs10703-019-00342-z},
	author = {Pavel Jan{\v c}{\'\i}k and Jan Kofron and Leonardo Alt and Grigory Fedyukovich and Antti E. J. Hyv{\"a}rinen and Natasha Sharygina}
}
@conference {234,
	title = {PVAIR: Partial Variable Assignment InterpolatoR},
	booktitle = {FASE2016},
	year = {2016},
	url = {http://verify.inf.usi.ch/sites/default/files/main-2.pdf},
	author = {Pavel Jan{\v c}{\'\i}k and Leonardo Alt and Grigory Fedyukovich and Antti E. J. Hyv{\"a}rinen and Jan Kofron and Natasha Sharygina}
}
