| | |
Summary: Closure Induction in a Z-like Language ? ??
David A. Duy 1 and Jurgen Giesl 2
1 Department of Computer Science, University of York,
Heslington, York, YO10 5DD, UK, dad@cs.york.ac.uk
2 Computer Science Department, University of New Mexico,
Albuquerque, NM 87131, USA, giesl@cs.unm.edu
Abstract. Simply-typed set-theoretic languages such as Z and B are
widely used for program and system specications. The main technique
for reasoning about such specications is induction. However, while par-
tiality is an important concept in these languages, many standard ap-
proaches to automating induction proofs rely on the totality of all oc-
curring functions. Reinterpreting the second author's recently proposed
induction technique for partial functional programs, we introduce in this
paper the new principle of \closure induction" for reasoning about the
inductive properties of partial functions in simply-typed set-theoretic
languages. In particular, closure induction allows us to prove partial
correctness, that is, to prove those instances of conjectures for which
designated partial functions are explicitly dened.
1 Motivation
Partial functions are endemic in specications written in languages such as Z and
|