## Making Formality Work For Us (1989)

Venue: | EATCS Bulletin |

Citations: | 7 - 2 self |

### BibTeX

@ARTICLE{Backhouse89makingformality,

author = {Roland Backhouse and Rijksuniversiteit Groningen},

title = {Making Formality Work For Us},

journal = {EATCS Bulletin},

year = {1989},

volume = {38},

pages = {38--219}

}

### OpenURL

### Abstract

Formal reasoning is notoriously long and arduous; in order to use it to reason effectively in the construction of programs it is, therefore, paramount that we design our notations to be both clear and economical. Taking examples from AI, from imperative programming, from the use of the Bird-Meertens formalism and from category theory we demonstrate how the right choice of what to denote and how it is denoted can make significant improvements to formal calculations. Brief mention is also made of the connection between economical notation and properties of type. 1 2 Foreword Earlier this year I was an invited speaker at the 5th British Computer Society Theoretical Computer Science Colloquium held at Royal Holloway and Bedford New College, London. Before you is the text of my lecture, almost but not quite as given at the conference. (Perhaps the best way to describe the present paper is as the lecture that I should have given.) The publication of the text of the lecture will, ...

### Citations

1344 | Introduction to Functional Programming
- Bird, Wadler
(Show Context)
Citation Context ...minority of you. Several of my examples are taken from the calculus developed by Richard Bird and Lambert Meertens, and sometimes called the "Bird-Meertens formalism " and sometimes called &=-=quot;Squiggol" [5, 15]-=-. One way to summarise their work is that it is a calculus of the reduce operator (denoted in the sequel by /) and the map operator (denoted in the sequel by ). Up till now they have tended to remain ... |

328 | Computing circumscription
- Lifschitz
- 1985
(Show Context)
Citation Context ...es, introduced by McCarthy [14] in his work on logic databases. The circumscription of F involves a second-order quantification, i.e. a quantification over predicates. The question posed by Lifschitz =-=[12] was,-=- 2 N.G. de Bruijn makes the following illuminating remarks [6] "Here `formal' means: without `understanding' the `meaning', and therefore it has to be possible to instruct computers how to check ... |

94 |
A survey of the project Automath
- Bruijn
- 1980
(Show Context)
Citation Context ...circumscription of F involves a second-order quantification, i.e. a quantification over predicates. The question posed by Lifschitz [12] was, 2 N.G. de Bruijn makes the following illuminating remarks =-=[6] &quo-=-t;Here `formal' means: without `understanding' the `meaning', and therefore it has to be possible to instruct computers how to check the correctness. Indeed, the fact that we do have computers will be... |

44 |
Program Construction and Verification
- Backhouse
- 1986
(Show Context)
Citation Context ...nsidering properties of the form ([p]Usp), for some predicate U , as shown in the figure. Now, I know of only two rules that remove a quantification --- the onepoint rule (called "singleton range=-=" in [2]-=-) \Phi(i : i = e : f:i) = f:e and the empty range rule \Phi(i : false : f:i) = 1 \Phi (where 1 \Phi is the identity of \Phi). An investigation of when F fi p can be reduced to a first-order formula th... |

32 | An exploration of the Bird-Meertens formalism
- Backhouse
- 1989
(Show Context)
Citation Context ...ch cases the convention can be beneficial. However, as our ability to reason about type structures increases our use of higher-order functions is becoming commonplace. For this reason, in my own work =-=[1]-=- I have rejected Meertens' convention. I would like to return, at this point, to the aggregated segment sum theorem mentioned at the beginning of this lecture for the proof of the theorem has consider... |

31 |
Doit-yourself type theory
- Backhouse, Chisholm, et al.
- 1989
(Show Context)
Citation Context ...d that it is hardly necessary to write down the four initial steps. It is now time to shift the direction of this lecture --- for a short while --- towards type theory. Elsewhere, I and my colleagues =-=[4]-=- have argued that the prevalent notion that type j statically checkable is a major obstacle to further progress. How much so became abundantly clear to me when John Hughes of Glasgow University visite... |

29 | Regular algebra applied to path-finding problems
- Backhouse, Carr'e
- 1975
(Show Context)
Citation Context ...operty basic to several closure algorithms such as Warshall's algorithm for constructing the transitive closure of a boolean matrix, or Gaussian elimination for computing the inverse of a real matrix =-=[3]-=-. My first attempt to discuss the design of notation was at a workshop in Sweden four years ago where I presented a formal derivation of Warshall's algorithm. My presentation was greeted by consternat... |

22 |
On the Shape of Mathematical Arguments
- Gasteren
- 1988
(Show Context)
Citation Context ...able advantage has been gained by choosing to name matrices of the same size rather than row or column vectors. The importance of what and what not to name is discussed in some detail by van Gasteren =-=[9]-=-. Second, the chosen notation enables the eye to group together indices much more so than the conventional notation A kk \Delta A ik As you will have noticed by now, the role of type information is cr... |

18 |
Benthem Jutting, Checking Landau's "Grundlagen
- van
- 1977
(Show Context)
Citation Context ...ut the challenge with which we are faced. One of the earliest exercises I know of in purely formal reasoning was Jutting's encoding of Landau's "Grundlagen der Mathematik" in the language of=-= Automath [11]-=-. Essentially, Jutting used a computer program to verify the entire contents of Landau's book. According to de Bruijn [6] the process of going from a mathematical text to a formal input incurred at le... |

10 |
Een methode van programmeren
- Dijkstra, Feijen
- 1984
(Show Context)
Citation Context ... set the picture for what I have to say. In Eindhoven many "segment problems" have been conceived as illustrations of their program design method. Some are included in the book by Dijkstra a=-=nd Feijen [8]-=-; some are included in Martin Rem's column in the Science of Computer Programming. In the course of his Marktoberdorf lectures [5] Richard Bird stated a theorem applicable to some such problems. His t... |

9 |
Notes on an Approach to Category Theory for Computer Scientists
- Hoare
- 1989
(Show Context)
Citation Context ...he extreme. concepts to program construction. I should warn you, however, that my understanding and knowledge of category theory remains very weak; what understanding I have is largely due to Hoare's =-=[10] refreshin-=-g approach to the theory. Some very brief background information will help to set the picture for what I have to say. In Eindhoven many "segment problems" have been conceived as illustration... |

5 |
Naturalness of polymorphism
- Bruin
- 1989
(Show Context)
Citation Context ...eason to consider an expression somewhat like j ffi / ffi `sffi f++s(1) 4 It is known that, in the category of sets, all polymorphic functions from functor F to functor G are natural transformations (=-=[19, 7]-=-). However not all natural transformations are polymorphic. 22 1: ` ffi u+ = u ffi ` ; for all u 2: / ffi vs= vsffi / ; for all v 3: j ffi w+s= ws+ ffi j ; for all w j ffi / ffi `sffi f++s= fsdistribu... |