Results 1 
4 of
4
Hoare Logic and VDM: MachineChecked Soundness and Completeness Proofs
, 1998
"... Investigating soundness and completeness of verification calculi for imperative programming languages is a challenging task. Many incorrect results have been published in the past. We take advantage of the computeraided proof tool LEGO to interactively establish soundness and completeness of both H ..."
Abstract

Cited by 31 (1 self)
 Add to MetaCart
Investigating soundness and completeness of verification calculi for imperative programming languages is a challenging task. Many incorrect results have been published in the past. We take advantage of the computeraided proof tool LEGO to interactively establish soundness and completeness of both Hoare Logic and the operation decomposition rules of the Vienna Development Method (VDM) with respect to operational semantics. We deal with parameterless recursive procedures and local variables in the context of total correctness. As a case study, we use LEGO to verify the correctness of Quicksort in Hoare Logic. As our main contribution, we illuminate the rle of auxiliary variables in Hoare Logic. They are required to relate the value of program variables in the final state with the value of program variables in the initial state. In our formalisation, we reflect their purpose by interpreting assertions as relations on states and a domain of auxiliary variables. Furthermore, we propose a new structural rule for adjusting auxiliary variables when strengthening preconditions and weakening postconditions. This rule is stronger than all previously suggested structural rules, including rules of adaptation. With the new treatment, we are able to show that, contrary to common belief, Hoare Logic subsumes VDM in that every derivation in VDM can be naturally embedded in Hoare Logic. Moreover, we establish completeness results uniformly as corollaries of Most General Formula theorems which remove the need to reason about arbitrary assertions.
A Formalisation Of Weak Normalisation (With Respect To Permutations) Of Sequent Calculus Proofs
, 1999
"... rule). This is also the case for NJ and LJ as defined in this formalisation. This is due to the particular nature of the logics in question, and does not necessarily generalise to other logics. In particular, a formalisation of linear logic would not work in this fashion, and a more complex variable ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
rule). This is also the case for NJ and LJ as defined in this formalisation. This is due to the particular nature of the logics in question, and does not necessarily generalise to other logics. In particular, a formalisation of linear logic would not work in this fashion, and a more complex variablereferencing mechanism would be required. See Section 6 for a further discussion of this problem. Other operations, such as substitutions (sub in Table 2) and weakening, require lift and drop operations as defined in [27] to ensure the correctness of the de Bruijn indexing.
Constructive Natural Deduction And Its "omegaSet" Interpretation
, 1990
"... . Various Theories of Types are introduced, by stressing the analogy "propositionsas types" : from propositional to higher order types (and Logic). In accordance with this, proofs are described as terms of various calculi, in particular of polymorphic (second order) l calculus. A semant ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
. Various Theories of Types are introduced, by stressing the analogy "propositionsas types" : from propositional to higher order types (and Logic). In accordance with this, proofs are described as terms of various calculi, in particular of polymorphic (second order) l calculus. A semantic explanation is then given by interpreting individual types and the collection of all types in two simple categories built out of the natural numbers (the modest sets and the universe of wsets). The first part of this paper (syntax) may be viewed as a short tutorial with a constructive understanding of the deduction theorem and some work on the expressive power of first and second order quantification. Also in the second part (semantics, .67) the presentation is meant to be elementary, even though we introduce some new facts on types as quotient sets in order to interpret "explicit polymorphism". (The experienced reader in Type Theory may directly go, at first reading, to .678). Content. Remark...
Safe Positive Induction in the Programming Logic TK
 in: Logic Programming (ed. Voronkov, A.), LNCS 592
, 1992
"... We describe an alternative schema of induction for the programming logic TK based on safe positive induction. This replaces the original schema based on the well founded part of a relation. We show how the new schema can be included into the realizability definition and how the soundness of realizab ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
We describe an alternative schema of induction for the programming logic TK based on safe positive induction. This replaces the original schema based on the well founded part of a relation. We show how the new schema can be included into the realizability definition and how the soundness of realizability can be extended to allow for the derivation of recursive programs from proofs of specifications which use the new schema. We further show how systems of mutual induction can be handled naturally with the new schema. In particular we show how useful systems of mutually recursive combinators can be derived which realize the principles of mutual induction. 2 Introduction The apparatus which a programming logic provides for inductive types is, perhaps, its most important component. This is because we rely on inductive types for the definition of many recursive types ubiquitous in programming languages: natural numbers, lists, trees, and so on. Moreover, it is from proofs which involve in...