The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Aug. 13, 2002
Filed:
Dec. 01, 1998
Paolo Ferragina, Catanzaro, IT;
Shanmugavelayut Muthukrishnan, New York, NY (US);
Lucent Technologies Inc., Murray Hill, NJ (US);
Abstract
A method and system for efficiently resolving the multi-method dispatching problem provided. The dispatching problem is reduced to geometric problems on multi-dimensional grids and new data structures are provided for the resulting geometric problems. In particular, methods having the same name are mapped to a set of rectangles based on a pair of numbers associated with each argument. The pair of numbers is an interval identifying the position of the argument in a class hierarchy tree. The interval is found by computing an Euler Tour of the class hierarchy tree. For a given method invocation in an object-oriented program, the method invocation is mapped to a point based on one of the numbers in the interval associated with each argument in the invocation. The problem of finding the most specific method for the method invocation is thus transformed into the so-called point enclosure problem in geometry, in which the smallest rectangle is found which encloses a given point. To help find efficient solutions to the point enclosure problem, the set of rectangles is broken into a number of subsets having certain geometric properties and stored in efficient data structures. Queries are performed on the various data structures to find the smallest or minimal rectangle, if any, in the various subsets. The result is either the identification of the minimal rectangle overall, or of an ambiguity requiring resolution by the programmer.