MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Efficient Subtyping Tests with PQ-Encoding

Download:
Download as a PDF
unknown authors
http://www.cs.technion.ac.il/~zyoav/publications/OOPSLA01-subtyping-PQE.pdf
Add To MetaCart

Abstract:

Subtyping tests, i.e., determining whether one type is a subtype of another, are a frequent operation during the execution of objectoriented programs. The challenge is in encoding the hierarchy in a small space, while simultaneously making sure that subtyping tests have efficient implementation. We present a new scheme for encoding multiple and single inheritance hierarchies, which, in the standardized hierarchies, reduces the footprint of all previously published schemes. The scheme is called PQ-encoding after PQ-trees, a data structure previously used in graph theory for finding the orderings that satisfy a collection of constraints. In particular, we show that in the traditional object layout model, the extra memory requirements for single inheritance hierarchies is zero. In the PQ-encoding subtyping tests are constant time, and use only two comparisons. Other than PQ-trees, PQ-encoding uses several novel optimization techniques. These techniques are applicable also in improving the performance of other, previously published, encoding schemes. 1.

Citations

1153 A Discipline of Programming – Dijkstra - 1976
368 Testing for the consecutive ones property, interval graphs, and planarity using PQ-tree algorithms – Booth, Lueker - 1976
166 The Modula-3 type system – Cardelli, Donahue, et al. - 1989
133 Object-Oriented Programming, An Evolutionary Approach – Cox - 1986
110 The Cecil Language: Specification and Rationale – Chambers - 1993
105 The Java Programming Language. The Java Series – Arnold, Gosling - 1996
82 On-line planarity testing – Battista, Tamassia - 1989
45 Efficient Handling of Multiple Inheritance Hierarchies – Caseau - 1993
25 On-line graph algorithms with SPQR-trees – Battista, Tamassia - 1990
19 On-line maintenance of triconnected components with SPQR-trees – Battista, Tamassia - 1996
10 Empirical study of object-layout strategies and optimization techniques – Eckel, Gil - 2000
9 E cient management of transitive relationships in large data bases, including is-a hierarchies – Agrawal, Borgida, et al. - 1989
5 Representation of an order as union of interval orders – Capelle - 1994
3 Type-extension tests can be performed in constant time – Cohen - 1991