Claus-Peter WirthPositive/Negative-Conditional Equations
A Constructor-Based Framework for Specification and Inductive Theorem Proving
Forschungsergebnisse zur Informatik, volume 31
Hamburg 1997, 260 pages
ISBN 978-3-86064-551-2 (print)
About this book deutschenglish
The subject of this thesis is clausal inductive theorem proving on the basis of specifications with constructor-based positive/negative-conditional equations. Proving inductive theorems is crucial for reasoning about computer programs. Since formal methods are indispensable to verifying safety-critical algorithms, it is to be expected that more or less automated inductive theorem proving will gain economic significance in the nearer future. Positive/negative-conditional equations are universally quantified first-order implications with a single equation in the succedent and a conjunction of positive and negative (i.e. negated) equations in the antecedent. They are convenient for writing first-order functional specifications, which can also be seen as programs.
With the help of a constructor-based approach an appropriate semantics is assigned to algebraic specifications given by positive/negative-conditional equations. Furthermore, a reduction relation for positive/negative-conditional rules is defined, for which the fundamental results for positive-conditional rewrite systems can be sustained. It is important that the presented notions of inductive validity are monotonic w.r.t. consistent extension of the specification. On this basis, an inference system for clausal theorem proving w.r.t. various kinds of inductive validity is developed. The constructor-based approach turns out to be well-suited for inductive theorem proving, even in the presence of partially defined and non-terminating functions.