Functional pearls: Deriving tidy drawings of trees

The tree-drawing problem is to produce a 'tidy' mapping from elements of a tree to points in the plane. In this paper, we derive an efficient algorithm for producing tidy drawings of trees. The specification, the starting point for the derivations, consists of a collection of intuitively a...

Full description

Bibliographic Details
Main Author: Gibbons, J
Format: Journal article
Language:English
Published: 1996
_version_ 1826279624622997504
author Gibbons, J
author_facet Gibbons, J
author_sort Gibbons, J
collection OXFORD
description The tree-drawing problem is to produce a 'tidy' mapping from elements of a tree to points in the plane. In this paper, we derive an efficient algorithm for producing tidy drawings of trees. The specification, the starting point for the derivations, consists of a collection of intuitively appealing criteria satisfied by tidy drawings. The derivation shows constructively that these criteria completely determine the drawing. Indeed, the criteria completely determine a simple but inefficient algorithm for drawing a tree, which can be transformed into an efficient algorithm using just standard techniques and a small number of inventive steps. The algorithm consists of an upwards accumulation followed by a downwards accumulation on the tree, and is further evidence of the utility of these two higher-order tree operations.
first_indexed 2024-03-07T00:01:33Z
format Journal article
id oxford-uuid:7620a383-1a33-47b2-9b38-982598a8f015
institution University of Oxford
language English
last_indexed 2024-03-07T00:01:33Z
publishDate 1996
record_format dspace
spelling oxford-uuid:7620a383-1a33-47b2-9b38-982598a8f0152022-03-26T20:13:38ZFunctional pearls: Deriving tidy drawings of treesJournal articlehttp://purl.org/coar/resource_type/c_dcae04bcuuid:7620a383-1a33-47b2-9b38-982598a8f015EnglishSymplectic Elements at Oxford1996Gibbons, JThe tree-drawing problem is to produce a 'tidy' mapping from elements of a tree to points in the plane. In this paper, we derive an efficient algorithm for producing tidy drawings of trees. The specification, the starting point for the derivations, consists of a collection of intuitively appealing criteria satisfied by tidy drawings. The derivation shows constructively that these criteria completely determine the drawing. Indeed, the criteria completely determine a simple but inefficient algorithm for drawing a tree, which can be transformed into an efficient algorithm using just standard techniques and a small number of inventive steps. The algorithm consists of an upwards accumulation followed by a downwards accumulation on the tree, and is further evidence of the utility of these two higher-order tree operations.
spellingShingle Gibbons, J
Functional pearls: Deriving tidy drawings of trees
title Functional pearls: Deriving tidy drawings of trees
title_full Functional pearls: Deriving tidy drawings of trees
title_fullStr Functional pearls: Deriving tidy drawings of trees
title_full_unstemmed Functional pearls: Deriving tidy drawings of trees
title_short Functional pearls: Deriving tidy drawings of trees
title_sort functional pearls deriving tidy drawings of trees
work_keys_str_mv AT gibbonsj functionalpearlsderivingtidydrawingsoftrees