Knowledge-based programs (KBPs) are a formalism for directly relating agents' knowledge and behaviour. Here we present a general scheme for compiling KBPs to executable automata with a proof of correctness in Isabelle/HOL. We develop the algorithm top-down, using Isabelle's locale mechanism to structure these proofs, and show that two classic examples can be synthesised using Isabelle's code generator.
Change history:
[2012-03-06]: Add some more views and revive the code generation.
BibTeX:
@article{KBPs-AFP,
author = {Peter Gammie},
title = {Knowledge-based programs},
journal = {Archive of Formal Proofs},
month = may,
year = 2011,
note = {\url{http://afp.sf.net/entries/KBPs},
Formal proof development},
ISSN = {2150-914x},
}