Section: Software and Platforms
FuncTion : An Abstract Domain Functor for Termination
Participant : Caterina Urban.
Keywords: Conditional termination, Ranking functions, Static analysis.
FuncTion is a research prototype static analyzer to analyze the termination of programs written in a small non-deterministic imperative language: it can infer sufficient conditions so that all executions terminate (conditional definitive termination). Following the general framework to analyze termination by abstract interpretation proposed in [40] , FuncTion infers ranking functions using piecewise-defined abstract domains. A first version of FuncTion implemented a domain of linear ranking functions partitioned by variable bounds [24] , [23] . It has been generalized in [22] and [29] to support ordinal-valued ranking functions of the form where is a constant and each is a natural-valued linear function of the variables.
The analyzer is written in OCaml and implemented on top of the Apron library ( 5.1 ). It can be used on-line through a web interface: http://www.di.ens.fr/~urban/FuncTion.html .
FuncTion entered the 3rd Competition on Software Verification (SV-COMP 2014) in the termination category (demonstration section, no ranking).