Proc. Formal Methods Europe (FME 2002), Copenhagen, Denmark, July 22-24, 2002, Lars-Henrik Eriksson, Peter Alexander Lindsay (eds.), LNCS 2391, pp. 431-450, Springer.
We address this problem by combining code certification with automatic program synthesis. We propose an approach to generate simultaneously, from a high-level specification, code and all annotations required to certify the generated code. Here, we describe such an extension of AutoBayes, a synthesis tool which automatically generates complex data analysis programs from compact specifications. AutoBayes contains sufficient high-level domain knowledge to generate very detailed annotations. This allows us to use a general-purpose verification condition generator to produce a set of proof obligations in first-order logic. The obligations are then discharged using the automated theorem prover E-SETHEO. We demonstrate our approach by certifying operator safety and memory safety for a generated iterative data classification program without manual annotation of the code.
Download complete paper
(125 KBytes, compressed PostScript)
Go to the
home page of the Robust Software Engineering Group