## Systematic Derivation of Tree Contraction Algorithms (2005)

### Cached

### Download Links

- [www.ipl.t.u-tokyo.ac.jp]
- [www.ipl.t.u-tokyo.ac.jp]
- [research.nii.ac.jp]
- [www.ipl.t.u-tokyo.ac.jp]
- DBLP

### Other Repositories/Bibliography

Venue: | In Proceedings of INFOCOM '90 |

Citations: | 3 - 3 self |

### BibTeX

@INPROCEEDINGS{Matsuzaki05systematicderivation,

author = {Kiminori Matsuzaki and Zhenjiang Hu and Kazuhiko Kakehi and Masato Takeichi},

title = {Systematic Derivation of Tree Contraction Algorithms},

booktitle = {In Proceedings of INFOCOM '90},

year = {2005},

pages = {321--336}

}

### OpenURL

### Abstract

While tree contraction algorithms play an important role in e#cient tree computation in parallel, it is di#cult to develop such algorithms due to the strict conditions imposed on contracting operators. In this paper, we propose a systematic method of deriving e#cient tree contraction algorithms from recursive functions on trees in any shape. We identify a general recursive form that can be parallelized to obtain e#cient tree contraction algorithms, and present a derivation strategy for transforming general recursive functions to parallelizable form. We illustrate our approach by deriving a novel parallel algorithm for the maximum connected-set sum problem on arbitrary trees, the tree-version of the famous maximum segment sum problem.

### Citations

120 |
Parallel tree contraction and its applications
- Miller, Reif
- 1985
(Show Context)
Citation Context ...esenting structured documents such as XML. There are two approaches to parallel computation on trees, the first is the divide and conquer approach [2], and the second is the tree contraction approach =-=[1, 15, 16, 18]. -=-The divide and conquer approach simply computes each child tree independently, and its parallel cost is O(h + w), where h denotes the height of a tree and w denotes the nodes’ maximum number of chil... |

87 |
A Simple Parallel Tree Contraction Algorithm
- Abrahamson, Dadoun, et al.
- 1987
(Show Context)
Citation Context ...esenting structured documents such as XML. There are two approaches to parallel computation on trees, the first is the divide and conquer approach [2], and the second is the tree contraction approach =-=[1, 15, 16, 18]. -=-The divide and conquer approach simply computes each child tree independently, and its parallel cost is O(h + w), where h denotes the height of a tree and w denotes the nodes’ maximum number of chil... |

69 |
Foundations of Parallel Programming
- Skillicorn
- 1994
(Show Context)
Citation Context ...igned, which is known to be hard, and thus discourages programmers from using it. Some attempts have been made on formal specifications for parallel tree algorithms. Gibbons et al. [8] and Skillicorn =-=[20, 21]-=- defined four skeletons on binary trees and gave an efficient implementation of them based on the tree contraction algorithm. Skillicorn also showed the usefulness of these skeletons with some example... |

55 |
Algorithmic skeletons: a structured approach to the management of parallel computation
- Cole
- 1988
(Show Context)
Citation Context ...sion of the famous maximum segment sum problem. Keywords. Tree Contraction, Parallelization, Skeletal Parallelism, Rose Tree, Maximum Segment Sum Problem. 1 Introduction Skeletal parallel programming =-=[5, 17]-=- is an elegant model for developing efficient and correct parallel programs. Although many researchers have devoted themselves to the algorithmic skeletons on lists [6, 9, 12, 19], not very many studi... |

41 | The Bird-Meertens Formalism as a Parallel Model
- Skillicorn
- 1993
(Show Context)
Citation Context ...eletal parallel programming [5, 17] is an elegant model for developing efficient and correct parallel programs. Although many researchers have devoted themselves to the algorithmic skeletons on lists =-=[6, 9, 12, 19]-=-, not very many studies have been addressed to other datatypes such as trees and graphs. Trees are important datatypes, widely used in representing structured documents such as XML. There are two appr... |

30 | Parallel tree contraction, part 2: Further applications
- Miller, Reif
- 1991
(Show Context)
Citation Context ...esenting structured documents such as XML. There are two approaches to parallel computation on trees, the first is the divide and conquer approach [2], and the second is the tree contraction approach =-=[1, 15, 16, 18]. -=-The divide and conquer approach simply computes each child tree independently, and its parallel cost is O(h + w), where h denotes the height of a tree and w denotes the nodes’ maximum number of chil... |

27 | Systematic efficient parallelization of scan and other list homomorphisms
- Gorlatch
- 1996
(Show Context)
Citation Context ...eletal parallel programming [5, 17] is an elegant model for developing efficient and correct parallel programs. Although many researchers have devoted themselves to the algorithmic skeletons on lists =-=[6, 9, 12, 19]-=-, not very many studies have been addressed to other datatypes such as trees and graphs. Trees are important datatypes, widely used in representing structured documents such as XML. There are two appr... |

24 | Parallel Programming, List Homomorphisms and the Maximum Segment Sum Problem
- Cole
- 1993
(Show Context)
Citation Context ...eletal parallel programming [5, 17] is an elegant model for developing efficient and correct parallel programs. Although many researchers have devoted themselves to the algorithmic skeletons on lists =-=[6, 9, 12, 19]-=-, not very many studies have been addressed to other datatypes such as trees and graphs. Trees are important datatypes, widely used in representing structured documents such as XML. There are two appr... |

22 |
M.: Formal derivation of efficient parallel programs by construction of list homomorphisms
- Hu, Iwasaki, et al.
- 1997
(Show Context)
Citation Context |

22 |
Patterns and Skeletons for Parallel and Distributed Computing
- Rabhi, Gorlatch
- 2002
(Show Context)
Citation Context ...sion of the famous maximum segment sum problem. Keywords. Tree Contraction, Parallelization, Skeletal Parallelism, Rose Tree, Maximum Segment Sum Problem. 1 Introduction Skeletal parallel programming =-=[5, 17]-=- is an elegant model for developing efficient and correct parallel programs. Although many researchers have devoted themselves to the algorithmic skeletons on lists [6, 9, 12, 19], not very many studi... |

19 | Efficient parallel algorithms for tree accumulations
- Gibbons, Cai, et al.
- 1994
(Show Context)
Citation Context ...e intelligently designed, which is known to be hard, and thus discourages programmers from using it. Some attempts have been made on formal specifications for parallel tree algorithms. Gibbons et al. =-=[8]-=- and Skillicorn [20, 21] defined four skeletons on binary trees and gave an efficient implementation of them based on the tree contraction algorithm. Skillicorn also showed the usefulness of these ske... |

18 | Parallelization via context preservation
- Chin, Takano, et al.
- 1998
(Show Context)
Citation Context ...ms. For example, the distributivity of × over + enables us to simplify the expression as: 1 + 2 × (3 + 4 × x) = 1 + 2 × 3 + 2 × 4 × x = 7 + 8 × x . Borrowing the idea of contexts or normal form=-=s from [4], we e-=-xtend the characteristic of normalization to derive parallel program over two operators. Definition 1. Let operator ⊗ be associative. The function defined with two operators, ⊗ and ⊕, is said to... |

18 | Parallel Implementation of Tree Skeletons
- Skillicorn
- 1996
(Show Context)
Citation Context ...igned, which is known to be hard, and thus discourages programmers from using it. Some attempts have been made on formal specifications for parallel tree algorithms. Gibbons et al. [8] and Skillicorn =-=[20, 21]-=- defined four skeletons on binary trees and gave an efficient implementation of them based on the tree contraction algorithm. Skillicorn also showed the usefulness of these skeletons with some example... |

15 | Parallel tree contraction
- Miller, Reif
- 1989
(Show Context)
Citation Context |

8 | Structured parallel computation in structured documents
- Skillicorn
- 1997
(Show Context)
Citation Context ...ve an efficient implementation of them based on the tree contraction algorithm. Skillicorn also showed the usefulness of these skeletons with some examples of the manipulation of structured documents =-=[20, 22, 23]-=-. Deldari et al. [7] designed a skeleton for constructive solid geometry. Matsuzaki et al. [14] proposed a systematic method of composing efficient parallel programs in terms of the skeletons on binar... |

7 | An analytical method for parallelization of recursive functions
- Ahn, Han
(Show Context)
Citation Context ...s. Trees are important datatypes, widely used in representing structured documents such as XML. There are two approaches to parallel computation on trees, the first is the divide and conquer approach =-=[2]-=-, and the second is the tree contraction approach [1, 15, 16, 18]. The divide and conquer approach simply computes each child tree independently, and its parallel cost is O(h + w), where h denotes the... |

6 | Parallelization with tree skeletons
- Matsuzaki, Hu, et al.
- 2003
(Show Context)
Citation Context ...the usefulness of these skeletons with some examples of the manipulation of structured documents [20, 22, 23]. Deldari et al. [7] designed a skeleton for constructive solid geometry. Matsuzaki et al. =-=[14]-=- proposed a systematic method of composing efficient parallel programs in terms of the skeletons on binary trees. However, there have really been very few studies on the formal derivation of parallel ... |

5 |
Algorithm design techniques
- Bentley
(Show Context)
Citation Context ...eneral recursive functions to parallelizable form. – We demonstrate the effectiveness of our approach by deriving an efficient parallel program for the tree version of the maximum segment sum proble=-=m [3]-=-. Much work has been done on the parallelization of the problem: on lists [6, 10], on 2-dimensional arrays [11], and on binary trees [14]. To the best of our knowledge, this is the first derivation of... |

5 | Construction of list homomorphisms by tupling and fusion
- Hu, Iwasaki, et al.
- 1996
(Show Context)
Citation Context ...tiveness of our approach by deriving an efficient parallel program for the tree version of the maximum segment sum problem [3]. Much work has been done on the parallelization of the problem: on lists =-=[6, 10]-=-, on 2-dimensional arrays [11], and on binary trees [14]. To the best of our knowledge, this is the first derivation of the parallel program for rose trees, the most complex data structure ever. This ... |

3 | Parallel csg, skeletons and performance modelling
- Deldari, Davy, et al.
- 1996
(Show Context)
Citation Context ...n of them based on the tree contraction algorithm. Skillicorn also showed the usefulness of these skeletons with some examples of the manipulation of structured documents [20, 22, 23]. Deldari et al. =-=[7]-=- designed a skeleton for constructive solid geometry. Matsuzaki et al. [14] proposed a systematic method of composing efficient parallel programs in terms of the skeletons on binary trees. However, th... |

3 | Formal derivation of parallel program for 2dimensional maximum segment sum problem
- Hu, Iwasaki, et al.
- 1996
(Show Context)
Citation Context ...ing an efficient parallel program for the tree version of the maximum segment sum problem [3]. Much work has been done on the parallelization of the problem: on lists [6, 10], on 2-dimensional arrays =-=[11]-=-, and on binary trees [14]. To the best of our knowledge, this is the first derivation of the parallel program for rose trees, the most complex data structure ever. This paper is organized as follows.... |

3 | A parallel tree difference algorithm
- Skillicorn
- 1996
(Show Context)
Citation Context ...ve an efficient implementation of them based on the tree contraction algorithm. Skillicorn also showed the usefulness of these skeletons with some examples of the manipulation of structured documents =-=[20, 22, 23]-=-. Deldari et al. [7] designed a skeleton for constructive solid geometry. Matsuzaki et al. [14] proposed a systematic method of composing efficient parallel programs in terms of the skeletons on binar... |

2 | Towards polytypic parallel programming
- Hu, Takeichi, et al.
- 1998
(Show Context)
Citation Context ...] , where k1 and k2 are two functions. As discussed in Skillicorn [21, 23], certain conditions on k2 are necessary for the existence of efficient parallel algorithms. One condition proposed so far in =-=[13, 21, 23] is to define k2 in terms o-=-f associative operator ⊕ as follows. reduce (⊕) (RLeaf a) = k ′ 1 a reduce (⊕) (RNode b [t1, t2, . . . , tn]) = k ′ 2 b ⊕ reduce (⊕) t1 ⊕ reduce (⊕) t2 ⊕ · · · ⊕ reduce (⊕) ... |