ACM Home Page
Please provide us with feedback. Feedback
Efficient subtyping tests with PQ-encoding
Full text PdfPdf (227 KB)
Source Conference on Object Oriented Programming Systems Languages and Applications archive
Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications table of contents
Tampa Bay, FL, USA
Pages: 96 - 107  
Year of Publication: 2001
ISBN:1-58113-335-9
Also published in ...
Authors
Yoav Zibin  Department of Computer Science, Technion-Israel Institute of Technology, Technion City, Haifa 32000, Israel
Joseph Yossi Gil  Department of Computer Science, Technion-Israel Institute of Technology, Technion City, Haifa 32000, Israel
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 5,   Downloads (12 Months): 25,   Citation Count: 13
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/504282.504290
What is a DOI?

ABSTRACT

Subtyping test, i.e., determining whether one type is a subtype of another, are a frequent operation during the execution of object-oriented programs. The challenge is in encoding the hierarchy in a small space, while simulataneously making sure that subtyping tests have efficient implmentation. We present a new scheme for encoding multiple and single inheritance hierarchies, which, in the standardized hierarchies, reduces the footprint of all previsously 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 requirement 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 otehr, previously published, encoding schemes.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
 
3
 
4
 
5
G. D. Battista and R. Tamassia. On-line maintenance of triconnected components with SPQR-trees. Algorithmica, 15(4):302-318, Apr. 1996.
 
6
K. S. Booth and G. S. Leuker. Testing for the consecutive ones property, interval graphs, and graph planarity using PQ-tree algorithms. J. Comput. Sys. Sci., 13(3):335-379, Dec. 1976.
 
7
8
9
 
10
C. Chambers. The Cecil language, specification and rationale. Technical report, University of Washington, Seattle, 1993.
11
 
12
 
13
E. W. Dijkstra. Recursive programming. Numerische Mathematik, 2:312-318, 1960.
 
14
 
15
A. Fall. Heterogeneous encoding. In Proceedings of International KRUSE'95 Conference : Knowledge Use, Retrieval and Storage for Efficiency, pages 162-167, Aug. 1995.
 
16
17
 
18
 
19
R. Grafl. CACAO: Ein 64bit JavaVM just-in-time compiler. Master's thesis, University of Vienna, 1996.
 
20
21
 
22
M. Junger, S. Leipert, and P. Mutzel. On computing a maximal planar subgraph using PQ-trees. Technical report, Informatik, Universit~t zu K~ln, 1996.
 
23
M. Junger, S. Leipert, and P. Mutzel. A note on computing a maximal planar subgraph using PQ-trees. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 17(7), 1998.
 
24
A. Krall and R. Grafl. CACAO - a 64 bit JavaVM just-in-time compiler. In G. C. Fox and W. Li, editors, PPoPP'97 Workshop on Java for Science and Engineering Computation, Las Vegas, June 1997.
25
 
26
A. Krall, J. Vitek, and R. N. Horspool. Near optimal hierarchical encoding of types. In M. Aksit and S. Matsuoka, editors, Proceedings of the 11th European Conference on Object-Oriented Programming, number 1241 in Lecture Notes in Computer Science, pages 128-145, Jyvaskyla, Finland, June 9-13 1997. ECOOP'97, Springer Verlag.
 
27
S. Leipert. PQ-trees, an implementation as template class in C++. Technical report, Informatik, Universitat zu Koln, 1997.
 
28
L. N. M. Habib, Y. Caseau and O. Raynaud. Encoding of multiple inheritance hierarchie and partial orders. In Computational Intelligence, volume 15, pages 50-62, 1999.
 
29
 
30
 
31
M. A. Schubert, P. L.K., and J. Taugher. Determining type, part, colour, and time relationships. Computer, 16 (special issue on Knowledge Representation):53-60, Oct. 1983.
 
32
33

CITED BY  13

Collaborative Colleagues:
Yoav Zibin: colleagues
Joseph Yossi Gil: colleagues