Abstract

Structured Formal Development in Isabelle

Maksym Bortin
FB 3 - Mathematik und Informatik, Universität Bremen

Einar Broch Johnsen
University of Oslo, Department of Informatics

Christoph Lüth
Deutsches Forschungszentrum für Künstliche Intelligenz Bremen

General purpose theorem provers provide advanced facilities for proving properties about specifications, and may therefore be a valuable tool in formal program development. However, these provers generally lack many of the useful structuring mechanisms found in functional programming or specification languages. This paper presents a constructive approach to adding theory morphisms and parametrisation to theorem provers, while preserving the proof support and consistency of the prover. The approach is implemented in Isabelle and illustrated by examples of an algorithm design rule and of the modular development of computational effects for imperative language features based on monads.


Christoph Lüth, 18.06.06