Proving termination through conditional termination

Saved in:
Bibliographic Details
Title: Proving termination through conditional termination
Authors: Borralleras Andreu, Cristina, Brockschmidt, Marc, Larraz Hurtado, Daniel, Oliveras Llunell, Albert, Rodríguez Carbonell, Enric, Rubio Gimeno, Alberto
Contributors: Universitat Politècnica de Catalunya. Departament de Ciències de la Computació, Universitat Politècnica de Catalunya. LOGPROG - Lògica i Programació
Publisher Information: Springer
Publication Year: 2017
Collection: Universitat Politècnica de Catalunya, BarcelonaTech: UPCommons - Global access to UPC knowledge
Subject Terms: Àrees temàtiques de la UPC::Informàtica::Informàtica teòrica, Integer programming, Ranking function, Entry transition, Program component, Satisfiability modulo theory, Program transformation, Programació en nombres enters
Description: We present a constraint-based method for proving conditional termination of integer programs. Building on this, we construct a framework to prove (unconditional) program termination using a powerful mechanism to combine conditional termination proofs. Our key insight is that a conditional termination proof shows termination for a subset of program execution states which do not need to be considered in the remaining analysis. This facilitates more effective termination as well as non-termination analyses, and allows handling loops with different execution phases naturally. Moreover, our method can deal with sequences of loops compositionally. In an empirical evaluation, we show that our implementation VeryMax outperforms state-of-the-art tools on a range of standard benchmarks. ; Peer Reviewed ; Postprint (author's final draft)
Document Type: conference object
File Description: 19 p.; application/pdf
Language: English
Relation: https://link.springer.com/chapter/10.1007/978-3-662-54577-5_6; info:eu-repo/grantAgreement/EC/H2020/648276/EU/A Unified Theory of Algorithmic Relaxations/AUTAR; info:eu-repo/grantAgreement/MINECO//TIN2015-69175-C4-3-R/ES/SOLUCIONES EFECTIVAS BASADAS EN LA LOGICA/; http://hdl.handle.net/2117/179916
DOI: 10.1007/978-3-662-54577-5_6
Availability: http://hdl.handle.net/2117/179916
https://doi.org/10.1007/978-3-662-54577-5_6
Rights: Open Access
Accession Number: edsbas.A99F6C24
Database: BASE
Description
Abstract:We present a constraint-based method for proving conditional termination of integer programs. Building on this, we construct a framework to prove (unconditional) program termination using a powerful mechanism to combine conditional termination proofs. Our key insight is that a conditional termination proof shows termination for a subset of program execution states which do not need to be considered in the remaining analysis. This facilitates more effective termination as well as non-termination analyses, and allows handling loops with different execution phases naturally. Moreover, our method can deal with sequences of loops compositionally. In an empirical evaluation, we show that our implementation VeryMax outperforms state-of-the-art tools on a range of standard benchmarks. ; Peer Reviewed ; Postprint (author's final draft)
DOI:10.1007/978-3-662-54577-5_6