8 citations found. Retrieving documents...
Jeremy Gibbons, Graham Hutton, and Thorsten Altenkirch. When is a function a fold or an unfold? Electronic Notes in Theoretical Computer Science, 44(1), 2001. Proceedings of the 4th International Workshop on Coalgebraic Methods in Computer Science.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:
A Calculational Approach to Program Inversion - Linacre (2003)   (1 citation)  (Correct)

....8.2 The Converse of a Function Theorem One natural question is how widely the converse of a function theorem can be applied. In other words, how to determine whether the converse of a function theorem can be applied to a particular function. Part of the answer is given by Gibbons and Hutton in [36]. If the converse of a function can be written as a fold, the function itself must be an unfold. The necessary and su#cient conditions for a function to be an unfold given in [36] can thus be used as a test before applying the converse of a function theorem. We have proved a generalisation of the ....

....theorem can be applied to a particular function. Part of the answer is given by Gibbons and Hutton in [36] If the converse of a function can be written as a fold, the function itself must be an unfold. The necessary and su#cient conditions for a function to be an unfold given in [36] can thus be used as a test before applying the converse of a function theorem. We have proved a generalisation of the converse of the function theorem, which inverts a simple relation to a hylomorphism. The generalised converse of a function theorem extends the original one in two ways: it ....

[Article contains additional citation context not shown here]

J. Gibbons, G. Hutton, and T. Altenkirch. When is a function a fold or an unfold? In A. Corradini, M. Lenisa, and U. Montanari, editors, Coalgebraic Methods in Computer Science, number 44.1 in Electronic Notes in Theoretical Computer Science, April 2001.


Theory and Applications of Inverting Functions as Folds - Mu, Bird (2003)   (Correct)

....algorithm in Section 5 is an optimised special case and how they relate to each other. One natural question is how widely the theorem can be applied. In other words, how to determine whether the converse of a function theorem can be applied a particular function. Part of the answer is given in [14]: if the converse of a function can be written as a fold, the function itself must be an unfold. The necessary and su#cient conditions for a function to be an unfold given in [14] can thus be used as a test before applying the converse of a function theorem. One possible reason why inverting ....

....whether the converse of a function theorem can be applied a particular function. Part of the answer is given in [14] if the converse of a function can be written as a fold, the function itself must be an unfold. The necessary and su#cient conditions for a function to be an unfold given in [14] can thus be used as a test before applying the converse of a function theorem. One possible reason why inverting imperative programs were more often talked about could be that theories about non determinism in the context of refinement calculus are more established. In [33,2] for instance, ....

J. Gibbons, G. Hutton, and T. Altenkirch. When is a function a fold or an unfold? In A. Corradini, M. Lenisa, and U. Montanari, editors, Coalgebraic Methods in Computer Science, number 44.1 in Electronic Notes in Theoretical Computer Science, April 2001.


Design Patterns as Higher-Order Datatype-Generic Programs - Gibbons (2006)   Self-citation (Gibbons)   (Correct)

No context found.

J. Gibbons, G. Hutton, and T. Altenkirch. When is a function a fold or an unfold? Electronic Notes in Theoretical Computer Science, 44(1), Apr. 2001. Proceedings of Coalgebraic Methods in Computer Science.


Proof Methods for Corecursive Programs - Gibbons, Hutton (2005)   (1 citation)  Self-citation (Gibbons Hutton)   (Correct)

No context found.

Gibbons, J., Hutton, G., Altenkirch, T.: When is a Function a Fold or an Unfold?, in: Proceedings of the 4th International Workshop on Coalgebraic Methods in Computer Science, number 44.1 in Electronic Notes in Theoretical Computer Science, Elsevier Science, April 2001.


Disciplined, Efficient, Generalised Folds for Nested Datatypes - Martin, Gibbons, Bayley (2002)   Self-citation (Gibbons)   (Correct)

....must always be polymorphic. So it can be used to implement some polymorphic functions, like that of flattening a nest to a list, but not usually for monomorphic functions such as sum. Even polymorphic functions cannot necessarily be written as folds, just as they cannot on regular datatypes [GHA01]. We can illustrate the difficulty in expressing sum as a fold on the above example (5) Writing the parameter f as an infix operator and using the Haskell syntax of writing the prefix form of an infix operator in parentheses (#) we have fold e (#) example = 1# ( 2,3) 4,5) 6,7) ....

....to investigate whether there is a class of problems on regular datatypes that can be specified as efficient folds, and then manipulated through the proof rules. There are still a number of questions that we have yet to answer, such as when is a function on either regular or nested datatypes a fold [GHA01], or an efficient fold Moreover, if a function can be expressed as an efficient fold, under what conditions does this give a significant improvement in performance On the theoretical side, there are similarities between the initial algebra definitions of generalised and efficient folds and those ....

J. Gibbons, G. Hutton and T. Altenkirch. When is a function a fold or an unfold? Electronic Notes in Theoretical Computer Science 44 No 1 (2001) http://www.elsevier.nl/locate/entcs/volume44.html.


Polytypic Functional Programming and Data Abstraction - Iglesias (2006)   (Correct)

No context found.

Jeremy Gibbons, Graham Hutton, and Thorsten Altenkirch. When is a function a fold or an unfold? Electronic Notes in Theoretical Computer Science, 44(1), 2001. Proceedings of the 4th International Workshop on Coalgebraic Methods in Computer Science.


Theory and Applications of Inverting Functions as Folds - Mu, Bird   (Correct)

No context found.

J. Gibbons, G. Hutton, and T. Altenkirch. When is a function a fold or an unfold? In A. Corradini, M. Lenisa, and U. Montanari, editors, Coalgebraic Methods in Computer Science, number 44.1 in Electronic Notes in Theoretical Computer Science, April 2001.


Constructively Characterizing Fold and Unfold - Weber, Caldwell   (Correct)

No context found.

Jeremy Gibbons, Graham Hutton, and Thorsten Altenkirch. When is a function a fold or an unfold? In Andrea Corradini, Marina Lenisa, and Ugo Montanari, editors, Proceedings 4th Workshop on Coalgebraic Methods in Computer Science, CMCS'01, Genova, Italy, 6-7 Apr. 2001, volume 44(1). Elsevier, Amsterdam, 2001.

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC