FunFrog is a bounded model checker of C using interpolation-based function summaries. FunFrog uses Craig interpolation to extract function summaries and reuses them in subsequent verification runs as a means of over-approximation of the precise functions' behavior.
To deal with spurious errors, which are possible due to the over-approximation, FunFrog employs a counter-example guided refinement strategy to identify too coarse summaries responsible for the error trace and replaces those with precise behavior representation in the next iteration.
FunFrog is implemented in the CProver framework (www.cprover.org). For satisfiability checks as well as for interpolant generation, FunFrog uses PeRIPLO.
Sections:
Architecture
Tutorial
Download