Efficiently intertwining widening and narrowing

Gianluca Amato, Francesca Scozzari, Helmut Seidl, Kalmer Apinis, Vesal Vojdani

Research output: Contribution to journalArticlepeer-review

31 Scopus citations

Abstract

Accelerated fixpoint iteration by means of widening and narrowing is the method of choice for solving systems of equations over domains with infinite ascending chains. The strict separation into an ascending widening and a descending narrowing phase, however, may unnecessarily give up precision that cannot be recovered later. It is also unsuitable for equation systems with infinitely many unknowns - where local solving must be used. As a remedy, we present a novel operator □ that combines a given widening operator ∇ with a given narrowing operator Δ. We present adapted versions of round-robin and worklist iteration as well as local and side-effecting solving algorithms for the combined operator □. We prove that the resulting solvers always return sound results and are guaranteed to terminate for monotonic systems whenever only finitely many unknowns are encountered.

Original languageEnglish
Pages (from-to)1-24
Number of pages24
JournalScience of Computer Programming
Volume120
DOIs
StatePublished - 1 May 2016

Keywords

  • Constraint solving
  • Fixpoint iteration
  • Static program analysis
  • Termination
  • Widening and narrowing

Fingerprint

Dive into the research topics of 'Efficiently intertwining widening and narrowing'. Together they form a unique fingerprint.

Cite this