Generalization from partial parametrization in higher-order type theory (Q1122980)
From MaRDI portal
scientific article
Language | Label | Description | Also known as |
---|---|---|---|
English | Generalization from partial parametrization in higher-order type theory |
scientific article |
Statements
Generalization from partial parametrization in higher-order type theory (English)
0 references
1989
0 references
The author introduces the syntax and notation used in the paper, and defines the formal system of the paper by giving its inference rules. The formal system is a simplified version of Martin Löf's constructive type theory [\textit{P. Martin-Löf}, An intuitionistic theory of types: predicative part (Logic Colloquium III, North-Holland, Amsterdam) (1973)], which is a typical higher-order type theory. Then, the author formalizes the problem of generalizing a program expressed in the formal system. He defines what is a generalization problem, and what is a solution to a generalization problem (a generalization). On this basis, he defines an order between generalizations so that a generalization whose program is the most instantiated and whose variables are the most distinct becomes maximal. The author proposes a generalization procedure which computes a maximal generalization with respect to this order. The procedure is based on an equivalence relation between occurrences in the original program. It successively selects an occurrence and tries to instantiate it; if it succeeds, the equivalence relation is updated. In the next section, the author describes some problems of the generalization procedure. If the procedure can produce many generalizations, one needs certain methods to resolve the ambiguity. Moreover, in many cases, the procedure constructs a generalization that is instantiated too much. These problems can be solved by determining the characteristic part of a program. Finally, an example is considered: a program solving the longest up segment problem is generalized with the intention of reusing it to the largest sum segment problem.
0 references
software reusability
0 references
generalizing a program
0 references
formulae-as-types
0 references
typical higher-order type theory
0 references
longest up segment problem
0 references
largest sum segment problem
0 references