An Abstract Domain Functor for Termination


Welcome to FuncTion’s web interface!

FuncTion is a research prototype static analyzer, which is able to infer piecewise-defined ranking functions for programs written in a C-like language. To avoid flooding the servers, the analyzer rejects programs that are too large or feature too many variables, and timeouts after a few seconds.

The analyzer is written in OCaml and is implemented on top of the APRON library.

Grateful acknowledgements go to Antoine Miné for making the source code of his prototype available for download, and for allowing me to reuse many parts of it.

Type your program:

or choose a predefined example:

and choose an entry point:

Termination Guarantee Recurrence

Type your property:

Conflict-Driven Conditional Termination:

  1. Number of Decisions:

Forward options:

  1. Widening delay:

Backward options:

  1. Partition Abstract Domain:

  2. Function Abstract Domain:
    Ordinal-Valued Functions

  3. Maximum Degree:

  4. Widening delay:

Last updated on 9th February 2015