Isabelle/Circus

Abderrahmane Feliachi 📧, Burkhart Wolff 📧 and Marie-Claude Gaudel 📧 with contributions from Makarius Wenzel 📧

May 27, 2012

This is a development version of this entry. It might change over time and is not stable. Please refer to release versions for citations.

Abstract

The Circus specification language combines elements for complex data and behavior specifications, using an integration of Z and CSP with a refinement calculus. Its semantics is based on Hoare and He's Unifying Theories of Programming (UTP). Isabelle/Circus is a formalization of the UTP and the Circus language in Isabelle/HOL. It contains proof rules and tactic support that allows for proofs of refinement for Circus processes (involving both data and behavioral aspects).

The Isabelle/Circus environment supports a syntax for the semantic definitions which is close to textbook presentations of Circus. This article contains an extended version of corresponding VSTTE Paper together with the complete formal development of its underlying commented theories.

License

BSD License

History

June 5, 2014
More polishing, shorter proofs, added Circus syntax, added Makarius Wenzel as contributor.

Topics

Session Circus