Back to Search Start Over

Automated Generalisation of Function Definitions.

Authors :
Middeldorp, Aart
Sato, Taisuke
Bakewell, Adam
Runciman, Colin
Source :
Functional & Logic Programming; 1999, p225-240, 16p
Publication Year :
1999

Abstract

We address the problem of finding the common generalisation of a set of Haskell function definitions so that each function can be defined by partial application of the generalisation. By analogy with unification, which derives the most general common specialisation of two terms, we aim to infer the least general common generalisation. This problem has a unique solution in a first-order setting, but not in a higher-order language. We define a smallest minimal common generalisation which is unique and consider how it might be used for automated program improvement. The same function can have many definitions; we risk over-generalisation if equality is not recognised. A normalising rewrite system is used before generalisation, so many equivalent definitions become identical. The generalisation system we describe has been implemented in Haskell. [ABSTRACT FROM AUTHOR]

Details

Language :
English
ISBNs :
9783540666776
Database :
Supplemental Index
Journal :
Functional & Logic Programming
Publication Type :
Book
Accession number :
32903930
Full Text :
https://doi.org/10.1007/10705424_15