Results 1 
5 of
5
Program Calculation Properties of Continuous Algebras
, 1991
"... Defining data types as initial algebras, or dually as final coalgebras, is beneficial, if not indispensible, for an algebraic calculus for program construction, in view of the nice equational properties that then become available. It is not hard to render finite lists as an initial algebra and, ..."
Abstract

Cited by 23 (2 self)
 Add to MetaCart
Defining data types as initial algebras, or dually as final coalgebras, is beneficial, if not indispensible, for an algebraic calculus for program construction, in view of the nice equational properties that then become available. It is not hard to render finite lists as an initial algebra and, dually, infinite lists as a final coalgebra. However, this would mean that there are two distinct data types for lists, and then a program that is applicable to both finite and infinite lists is not possible, and arbitrary recursive definitions are not allowed. We prove the existence of algebras that are both initial in one category of algebras and final in the closely related category of coalgebras, and for which arbitrary (continuous) fixed point definitions ("recursion") do have a solution. Thus there is a single data type that comprises both the finite and the infinite lists. The price to be paid, however, is that partiality (of functions and values) is unavoidable.
Using underspecification in the derivation of some optimal partition algorithms
, 1990
"... Indeterminacy is inherent in the specification of optimal partition (and many more) algorithms, even though the algorithms themselves may be fully determinate. Indeterminacy is a notoriously hard phenomenon to deal with in a purely functional setting. In the paper “A Calculus Of Functions for Progra ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
Indeterminacy is inherent in the specification of optimal partition (and many more) algorithms, even though the algorithms themselves may be fully determinate. Indeterminacy is a notoriously hard phenomenon to deal with in a purely functional setting. In the paper “A Calculus Of Functions for Program Derivation ” R. S. Bird tries to handle it by using underspecified functions. (Other authors have proposed to use ‘indeterminate ’ functions, and to use relations instead of functions.) In this paper we redo Bird’s derivation of the Leery and Greedy algorithm while being very precise about underspecification, and still staying in the functional framework. It turns out that Bird’s theorems are not exactly what one would like to have, and what one might understand from his wording of the theorems. We also give a derivation in the BirdMeertens style of a (linear time) optimal partition algorithm that was originally found by J. C. S. P. van der Woude. 1
DatatypeGeneric Reasoning
"... Abstract. Datatypegeneric programs are programs that are parameterised by a datatype. Designing datatypegeneric programs brings new challenges and new opportunities. We review the allegorical foundations of a methodology of designing datatypegeneric programs. The effectiveness of the methodology ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. Datatypegeneric programs are programs that are parameterised by a datatype. Designing datatypegeneric programs brings new challenges and new opportunities. We review the allegorical foundations of a methodology of designing datatypegeneric programs. The effectiveness of the methodology is demonstrated by an extraordinarily concise proof of the wellfoundedness of a datatypegeneric occursin relation.
DatatypeGeneric Termination Proofs
"... Datatypegeneric programs are programs that are parameterised by a datatype. We review the allegorical foundations of a methodology of designing datatypegeneric programs. The notion of Freductivity, where F parametrises a datatype, is reviewed and a number of its properties are presented. The prop ..."
Abstract
 Add to MetaCart
Datatypegeneric programs are programs that are parameterised by a datatype. We review the allegorical foundations of a methodology of designing datatypegeneric programs. The notion of Freductivity, where F parametrises a datatype, is reviewed and a number of its properties are presented. The properties are used to give concise, effective proofs of termination of a number of datatypegeneric programming schemas. The paper concludes with a concise proof of the wellfoundedness of a datatypegeneric occursin relation.