The CAVA Automata Library provides a hierarchy of graph and automata classes, together with some standard algorithms. Its object oriented design allows for sharing of algorithms, theorems, and implementations between its classes, and also simplifies extensions of the library. Moreover, it is integrated into the Automatic Refinement Framework, supporting automatic refinement of the abstract automata types to efficient data structures.
Note that the CAVA Automata Library is work in progress. Currently, it is very specifically tailored towards the requirements of the CAVA model checker. Nevertheless, the formalization techniques presented here allow an extension of the library to a wider scope. Moreover, they are not limited to graph libraries, but apply to class hierarchies in general.
The CAVA Automata Library is described in the paper: Peter Lammich, The CAVA Automata Library, Isabelle Workshop 2014.
- Flow Networks and the Min-Cut-Max-Flow Theorem
- A Framework for Verifying Depth-First Search Algorithms
- Verified Construction of Static Single Assignment Form
- A Fully Verified Executable LTL Model Checker
- Converting Linear-Time Temporal Logic to Generalized Büchi Automata
- Promela Formalization
- Verified Efficient Implementation of Gabow’s Strongly Connected Components Algorithm
- Collections Framework