## A Computing Medley on Program Verification, Specification and Automated Reasoning

### BibTeX

@MISC{Poll_acomputing,

author = {John A. Van Der Poll},

title = {A Computing Medley on Program Verification, Specification and Automated Reasoning},

year = {}

}

### OpenURL

### Abstract

A brief overview of the science of formal program verification is presented, a topic close to the heart of Derrick Kourie to whom this article is dedicated in honour of his sixtieth birthday. No account would do justice to this topic without referring to the well-known Floyd-Hoare axiomatic approach to the verification and construction of programs. The specification of a program in terms of a precondition, program statement and postcondition is touched on and is followed by specification methods employed during the earlier phases of system development. Reasoning about the properties of a specification is a rewarding exercise since it may lead to useful insights. Modern specification languages often support set-theoretic constructs and these pose demanding challenges to automated reasoning programs. To this end the science of Automated Reasoning has made remarkable progress as far as tool usage is concerned.

### Citations

1371 | An axiomatic basis for computer programming
- Hoare
- 1969
(Show Context)
Citation Context ...oning, formal specification, heuristics, OTTER, Prover9, resolution, set theory, Z Computing Review Categories: D.2.4, F.3.1, F.4.1, I.2.3 1 Introduction The work of Robert Floyd [11] and C A R Hoare =-=[12]-=- together probably constitute some of the earliest writings on the formal verification of computer programs. Essentially Floyd defined rules for the construction of flowcharts while Hoare defined a nu... |

731 |
The B Book - Assigning Programs to Meanings
- Abrial
- 1996
(Show Context)
Citation Context ...tc. Mathematical rigour may, however, be employed much earlier in the design phase and this has led to the development of a multitude of formal specification techniques like VDM [14], Z [6, 15] and B =-=[1]-=- to name but a few. In essence a specification of a system defines what the resultant system must do rather than saying how it is to be achieved. One of the benefits to be realised through the use of ... |

642 |
Systematic Software Development Using VDM
- Jones
- 1986
(Show Context)
Citation Context ...s, while statements, etc. Mathematical rigour may, however, be employed much earlier in the design phase and this has led to the development of a multitude of formal specification techniques like VDM =-=[14]-=-, Z [6, 15] and B [1] to name but a few. In essence a specification of a system defines what the resultant system must do rather than saying how it is to be achieved. One of the benefits to be realise... |

568 |
Assigning meanings to programs
- Floyd
- 1967
(Show Context)
Citation Context ...words: Automated reasoning, formal specification, heuristics, OTTER, Prover9, resolution, set theory, Z Computing Review Categories: D.2.4, F.3.1, F.4.1, I.2.3 1 Introduction The work of Robert Floyd =-=[11]-=- and C A R Hoare [12] together probably constitute some of the earliest writings on the formal verification of computer programs. Essentially Floyd defined rules for the construction of flowcharts whi... |

129 | Solution of the robbins problem
- Mccune
- 1997
(Show Context)
Citation Context ...ated Reasoning, Larry Wos [31]. In fact, a variant of OTTER called EQP was used by its author (McCune) to discharge a long standing open conjecture, namely, that Robbins Algebras are boolean algebras =-=[16]-=-. The automated proof of this famous conjecture made the front pages of national newspapers worldwide [8]. Reasoning with set theory continues to pose difficulty to resolution-based reasoners, despite... |

78 |
Efficiency and completeness of the set of support strategy in theorem proving
- Wos, Robinson, et al.
- 1965
(Show Context)
Citation Context ...dwide [8]. Reasoning with set theory continues to pose difficulty to resolution-based reasoners, despite the theoretical advances made in this area, e.g. hyperresolution [24], set-of-support strategy =-=[32]-=-, paramodulation [23], resonance [30] and the hot-list strategy [33] to name just a few. A number of researchers, e.g. [7], [22] and [26] demonstrated the challenges that set-theoretic proofs pose to ... |

77 |
Automated reasoning: 33 basic research problems
- Wos
- 1988
(Show Context)
Citation Context ... in this area as well as the sophistication of the reasoners employing the theory. Some basic challenges in set-theoretic reasoning remain. In his book Automated Reasoning: 33 Basic Research Problems =-=[29]-=-, Larry Wos poses a research question largely still unsolved: What inference rule, if any, effectively performs for set theory as paramodulation does for equality? The object of an application of para... |

58 |
Elements of Set Theory
- Enderton
- 1977
(Show Context)
Citation Context ...very early stage in the development process. Any errors or omissions discovered in the user requirements could, therefore, be rectified earlier, leading to reduced costs [21]. Mathematical set theory =-=[10]-=- is a basic, yet deep, underlying commodity in Computing, e.g. any good text on relational databases tells us that databases are based on functions — given a person’s ID number (a key), the system ret... |

52 | N.: The Three Dimensions of Requirements Engineering
- Pohl, Ulfat-Bunyadi
- 2013
(Show Context)
Citation Context ...n to a code fragment is known, how does one determine the precondition, i.e. where does one have to start to ensure the end result? The answer to this question is of value in requirements engineering =-=[20]-=- as well; if a user states some requirements (postcondition) and a software engineer suggests a solution, then what should be in place beforehand to ensure that the solution proposed will satisfy the ... |

50 |
Automatic deduction with hyper-resolution
- Robinson
- 1965
(Show Context)
Citation Context ...es of national newspapers worldwide [8]. Reasoning with set theory continues to pose difficulty to resolution-based reasoners, despite the theoretical advances made in this area, e.g. hyperresolution =-=[24]-=-, set-of-support strategy [32], paramodulation [23], resonance [30] and the hot-list strategy [33] to name just a few. A number of researchers, e.g. [7], [22] and [26] demonstrated the challenges that... |

45 |
Automated Development of Fundamental Mathematical Theories
- Quaife
- 1992
(Show Context)
Citation Context ... If one, therefore, embarks on the use of an automated reasoner to prove properties of these set-theoretic specifications, then one quickly encounters a number of time- and space complexity problems. =-=[7, 22, 26]-=-. Automated reasoning tools have steadily improved over the last couple of decades and in this paper I will trace some of these advances made.1.1 Layout of this Paper In Section 2 a small coding exam... |

39 |
The anatomy of Vampire: implementing bottom-up procedures with code trees
- Voronkov
- 1995
(Show Context)
Citation Context ...ing the elements of sets directly. Through the use of the divide-and-conquer technique, this last proof attempt may be streamlined even further. The details appear in [25]. The Vampire theorem prover =-=[27]-=- considered to be the benchmark for resolution-based reasoners, owing to its consistent success at the annual CADE ATP System Competitions (CASC [19], see also http://www.cs.miami.edu/∼tptp/CASC/), al... |

30 |
Splitting and reduction heuristics in automatic theorem proving
- -Bledsoe
- 1971
(Show Context)
Citation Context ...ters around progress made with resolution-based reasoners. 4 Advances Made by Automated Reasoners The paper by Woodrow (Woody) Bledsoe in the collection compiled by Jörg Siekmann and Graham Wrightson =-=[5]-=- gives an account of an early theoremproving program called PROVER. In essence the prover divides a problem into subproblems through two routines called SPLIT (for general mathematical problems) and R... |

21 |
Set theory in first-order logic: Clauses for Gödel’s axioms
- Boyer, Lusk, et al.
- 1986
(Show Context)
Citation Context ... If one, therefore, embarks on the use of an automated reasoner to prove properties of these set-theoretic specifications, then one quickly encounters a number of time- and space complexity problems. =-=[7, 22, 26]-=-. Automated reasoning tools have steadily improved over the last couple of decades and in this paper I will trace some of these advances made.1.1 Layout of this Paper In Section 2 a small coding exam... |

17 |
Program Construction: Calculating Implementations from Specifications
- Backhouse
- 2003
(Show Context)
Citation Context ...oare Logic: An Example An expression of the form {P}S{Q} where P and Q are properties of the program variables and S is a program (a single statement or large code fragment), is called a Hoare triple =-=[12, 2]-=-. P is called the precondition and Q is known as the postcondition of S. In this paper {P}S{Q} is interpreted as follows: If statement S and all its associated variables are defined in context and pre... |

17 |
Paramodulation and Theorem Proving in First-order Theories with Equality. Machine Intelligence 4
- Robinson, Wos
- 1969
(Show Context)
Citation Context ...with set theory continues to pose difficulty to resolution-based reasoners, despite the theoretical advances made in this area, e.g. hyperresolution [24], set-of-support strategy [32], paramodulation =-=[23]-=-, resonance [30] and the hot-list strategy [33] to name just a few. A number of researchers, e.g. [7], [22] and [26] demonstrated the challenges that set-theoretic proofs pose to automated reasoning p... |

12 | A survey of automated deduction
- Bundy
- 1999
(Show Context)
Citation Context ...discharge a long standing open conjecture, namely, that Robbins Algebras are boolean algebras [16]. The automated proof of this famous conjecture made the front pages of national newspapers worldwide =-=[8]-=-. Reasoning with set theory continues to pose difficulty to resolution-based reasoners, despite the theoretical advances made in this area, e.g. hyperresolution [24], set-of-support strategy [32], par... |

10 | The resonance strategy
- Wos
- 1995
(Show Context)
Citation Context ...continues to pose difficulty to resolution-based reasoners, despite the theoretical advances made in this area, e.g. hyperresolution [24], set-of-support strategy [32], paramodulation [23], resonance =-=[30]-=- and the hot-list strategy [33] to name just a few. A number of researchers, e.g. [7], [22] and [26] demonstrated the challenges that set-theoretic proofs pose to automated reasoning programs. Settheo... |

9 |
Z-match: An Inference Rule for Incrementally Elaborating Set Instantiations
- Bailin, Barker-Plummer
- 1993
(Show Context)
Citation Context ...modulation does for equality? The object of an application of paramodulation is to cause an equality substitution to take place from one clause into another. In their paper, Bailin and Barker-Plummer =-=[3]-=- claimed to have found such a rule which they call the ‘Z-match’, but they also state that they have not been able to prove the challenge problem that accompanies the research problem proposed by Wos.... |

9 | The hot list strategy
- Wos, Pieper
- 1999
(Show Context)
Citation Context ... resolution-based reasoners, despite the theoretical advances made in this area, e.g. hyperresolution [24], set-of-support strategy [32], paramodulation [23], resonance [30] and the hot-list strategy =-=[33]-=- to name just a few. A number of researchers, e.g. [7], [22] and [26] demonstrated the challenges that set-theoretic proofs pose to automated reasoning programs. Settheoretic constructs are strongly h... |

8 |
Z: A Formal Specification Notation
- Bowen
- 2001
(Show Context)
Citation Context ... statements, etc. Mathematical rigour may, however, be employed much earlier in the design phase and this has led to the development of a multitude of formal specification techniques like VDM [14], Z =-=[6, 15]-=- and B [1] to name but a few. In essence a specification of a system defines what the resultant system must do rather than saying how it is to be achieved. One of the benefits to be realised through t... |

7 | The development of CASC
- Pelletier, Sutcliffe, et al.
(Show Context)
Citation Context ...details appear in [25]. The Vampire theorem prover [27] considered to be the benchmark for resolution-based reasoners, owing to its consistent success at the annual CADE ATP System Competitions (CASC =-=[19]-=-, see also http://www.cs.miami.edu/∼tptp/CASC/), also fails to find a proof of (5) in 30 minutes. If we, however, resort to (6) then Vampire easily finds a proof in just 0.8 seconds. The OTTER reasone... |

5 |
Specifications Are Necessarily Informal or: Some More Myths of Formal Methods
- Charlier, Flener
- 1998
(Show Context)
Citation Context ...oach is furthermore not resolution-based. So, yes Derrick, there are definite advances that have been made in the formal methods arena. Since some disagree on the usefulness of mathematical formalism =-=[9]-=-, an obvious next step as proposed by Dr. Stefan Gruner and others would be to determine the utility of formal methods in industry. Hopefully this is a project we can all enjoy doing in the years to c... |

3 |
Programs that Offer Fast, Flawless, Logical Reasoning
- Wos
- 1998
(Show Context)
Citation Context ... from this era. I have used this reasoner extensively in my own work (OTTER easily discharges the proof obligation in Example 2 above), and so has one of the fathers of Automated Reasoning, Larry Wos =-=[31]-=-. In fact, a variant of OTTER called EQP was used by its author (McCune) to discharge a long standing open conjecture, namely, that Robbins Algebras are boolean algebras [16]. The automated proof of t... |

2 |
Seminaire de Theorie des Nombres
- unknown authors
- 1991
(Show Context)
Citation Context ...f the system to be built at a very early stage in the development process. Any errors or omissions discovered in the user requirements could, therefore, be rectified earlier, leading to reduced costs =-=[21]-=-. Mathematical set theory [10] is a basic, yet deep, underlying commodity in Computing, e.g. any good text on relational databases tells us that databases are based on functions — given a person’s ID ... |

2 |
Automated Support for SetTheoretic Specifications
- Poll
(Show Context)
Citation Context ... end to Hoare logic. Next we give an example of a partial Z specification, starting with a requirements definition of what needs to be specified. The development below stems essentially from [28] and =-=[25]-=-. 3.1 An oil terminal control system Design a Z specification to enable a sea port authority to keep track of oil tankers arriving and docking at its berths. If a tanker arrives, and there is an open ... |

2 |
Software Development with Z. International Computer Science Series
- Wordsworth
- 1992
(Show Context)
Citation Context ...s a front end to Hoare logic. Next we give an example of a partial Z specification, starting with a requirements definition of what needs to be specified. The development below stems essentially from =-=[28]-=- and [25]. 3.1 An oil terminal control system Design a Z specification to enable a sea port authority to keep track of oil tankers arriving and docking at its berths. If a tanker arrives, and there is... |

1 |
The Spine of Software
- Barber
- 1992
(Show Context)
Citation Context ...n P is satisfied before the execution of S, execution of S is guaranteed to terminate, and afterwards, the program variables will satisfy Q [2]. This property is defined as total correctness by Baber =-=[4]-=-. Over time proof rules for the verification of assignment statements, conditionals, sequential composition, looping constructs, procedure calls, etc. have been defined. Verification theory involving ... |

1 |
Formal Specification Using Z. Palgrave Macmillan, 2nd edition
- Lightfoot
- 2001
(Show Context)
Citation Context ... statements, etc. Mathematical rigour may, however, be employed much earlier in the design phase and this has led to the development of a multitude of formal specification techniques like VDM [14], Z =-=[6, 15]-=- and B [1] to name but a few. In essence a specification of a system defines what the resultant system must do rather than saying how it is to be achieved. One of the benefits to be realised through t... |