Abstract
Butterfly networks arise in many signal processing circuits and in parallel algorithms for many sorts of message-passing computers. This paper attempts to explain why this should be, and what butterfly networks are, using a new and elegant formulation based on a language of relations.
Most of the material covered by this paper has appeared in a less tractable form in earlier papers [6, 7]. The novelty here is in the simplicity and elegance of the presentation, which derives from an appropriate choice of high-level structures. These structures are represented by functions which are used to compose circuits from components, and are chosen to have simple mathematical properties.
This presentation makes it easier to explain how the design comes about, showing that butterflies are natural implementations of divide-and-conquer algorithms. We are then able to go on to explain many of the properties of butterfly networks, and of their implementations.
Keywords
- Sequential Composition
- Parallel Composition
- NATO Advance Study Institute
- Elegant Formulation
- Recursive Decomposition
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
R. S. Bird, Lectures on constructive functional programming,in [2]. (Programming Research Group technical monograph PRG-69)
M. Broy (ed.), Constructive methods in computing science, NATO advanced study institutes, Series F: Computer and systems sciences, Springer-Verlag, 1989.
G. David, R. T. Boute and B. D. Shriver (eds.), Declarative systems, North-Holland, 1990.
K. Davis and J. Hughes (eds.), Functional programming, Glasgow 1989, Springer Workshops in Computing, 1990.
G. Jones and M. Sheeran, Circuit design in Ruby,in [8].
M. Sheeran, Describing hardware algorithms in Ruby,in [3]. (Revised form appears as [7])
M. Sheeran, Describing butterfly networks in Ruby,in [4].
Jurgen Staunstrup (ed.), Formal methods for VLSI design,North-Holland, 1990.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1991 British Computer Society
About this paper
Cite this paper
Jones, G., Sheeran, M. (1991). The study of butterflies. In: Birtwistle, G. (eds) IV Higher Order Workshop, Banff 1990. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3182-3_4
Download citation
DOI: https://doi.org/10.1007/978-1-4471-3182-3_4
Publisher Name: Springer, London
Print ISBN: 978-3-540-19660-0
Online ISBN: 978-1-4471-3182-3
eBook Packages: Springer Book Archive