The Theory and Practice of Concurrency
The Theory and Practice of Concurrency
Introduction to Mathematical Logic and Type Theory: To Truth through Proof
Introduction to Mathematical Logic and Type Theory: To Truth through Proof
How to Combine Z with Process Algebra
ZUM '98 Proceedings of the 11th International Conference of Z Users on The Z Formal Specification Notation
ZB '02 Proceedings of the 2nd International Conference of B and Z Users on Formal Specification and Development in Z and B
FME '02 Proceedings of the International Symposium of Formal Methods Europe on Formal Methods - Getting IT Right
The state-based CCS semantics for concurrent Z specification
ICFEM '97 Proceedings of the 1st International Conference on Formal Engineering Methods
CSP-CASL: a new integration of process algebra and algebraic specification
Theoretical Computer Science - Algebraic methods in language processing
A Denotational Semantics for Circus
Electronic Notes in Theoretical Computer Science (ENTCS)
Isabelle/HOL: a proof assistant for higher-order logic
Isabelle/HOL: a proof assistant for higher-order logic
Encoding circus programs in ProofPower-Z
UTP'08 Proceedings of the 2nd international conference on Unifying theories of programming
Unifying theories in Isabelle/HOL
UTP'10 Proceedings of the Third international conference on Unifying theories of programming
Testing for refinement in Circus
Acta Informatica
Simulink timed models for program verification
Theories of Programming and Formal Methods
Hi-index | 0.00 |
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). We develop a machine-checked, formal semantics based on a "shallow embedding" of Circus in Isabelle/UTP (our semantic theory of UTP based on Isabelle/HOL). We derive proof rules from this semantics and implement tactic support that finally allows for proofs of refinement for Circus processes (involving both data and behavioral aspects). This proof environment supports a syntax for the semantic definitions which is close to textbook presentations of Circus.