Rollup functions and methods
First Claim
1. A method of organizing a series of sibling entities for facilitating on-demand production of a ranked parent candidate of the series of sibling entities, each of the sibling entities comprising one or more child possibilities having an associated child confidence, the ranked parent candidate including one or more component elements, each component element consisting of one of the child possibilities selected from one of the sibling entities, the ranked parent candidate having a parent rank representing an aggregate of the child confidences associated with the child possibilities that comprise the component elements of the ranked parent, the method comprising:
- (a) receiving a series of sibling entities including a first sibling entity and a last sibling entity;
(b) establishing a rollup matrix having a matrix height and a matrix width, the rollup matrix including multiple columns spanning the matrix width and multiple rows spanning the matrix height, each row having a row position along the matrix height; and
(c) loading the rollup matrix with the series of sibling entities in a predetermined loading sequence starting with a first-loaded column of the rollup matrix and ending with a last-loaded column of the rollup matrix, the loading of the rollup matrix including;
i) storing the first sibling entity in the first-loaded column, including storing each child possibility of the first sibling entity in one of the rows, the row position of said row corresponding to the child confidence associated with the child possibility being stored, ii) in an unfilled column of the rollup matrix immediately following a previously-loaded column in the loading sequence, for each loaded row of the previously-loaded column in which a child possibility has been stored, storing in the unfilled column a next one of the sequential sibling entities including storing each of its child possibilities in the matrix rows having row positions equal to the sum of the row position of the loaded row of the previously-loaded column and the child confidence associated with said child possibility being stored, iii) repeating step (ii) until the last one of the sequential sibling entities has been stored in the last-loaded column of data matrix, whereby the row position of each row of the last-loaded column containing one of the child possibilities corresponds to the parent rank of at least one ranked parent candidate that can be generated using said one of the child possibilities.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods of organizing a series of sibling data entities in a digital computer are provided for preserving sibling ranking information associated with the sibling data entities and for attaching the sibling ranking information to a joint parent of the sibling data entities to facilitate on-demand generation of ranked parent candidates. A rollup function of the present invention builds a rollup matrix (126) that embodies information about the sibling entities and the sibling ranking information and provides a method for reading out the ranked parent candidates from the rollup matrix in order of their parent confidences (141). Parent confidences are based on the sibling ranking information, either alone or in combination with n-gram dictionary ranking or other ranking information.
37 Citations
19 Claims
-
1. A method of organizing a series of sibling entities for facilitating on-demand production of a ranked parent candidate of the series of sibling entities, each of the sibling entities comprising one or more child possibilities having an associated child confidence, the ranked parent candidate including one or more component elements, each component element consisting of one of the child possibilities selected from one of the sibling entities, the ranked parent candidate having a parent rank representing an aggregate of the child confidences associated with the child possibilities that comprise the component elements of the ranked parent, the method comprising:
-
(a) receiving a series of sibling entities including a first sibling entity and a last sibling entity;
(b) establishing a rollup matrix having a matrix height and a matrix width, the rollup matrix including multiple columns spanning the matrix width and multiple rows spanning the matrix height, each row having a row position along the matrix height; and
(c) loading the rollup matrix with the series of sibling entities in a predetermined loading sequence starting with a first-loaded column of the rollup matrix and ending with a last-loaded column of the rollup matrix, the loading of the rollup matrix including;
i) storing the first sibling entity in the first-loaded column, including storing each child possibility of the first sibling entity in one of the rows, the row position of said row corresponding to the child confidence associated with the child possibility being stored, ii) in an unfilled column of the rollup matrix immediately following a previously-loaded column in the loading sequence, for each loaded row of the previously-loaded column in which a child possibility has been stored, storing in the unfilled column a next one of the sequential sibling entities including storing each of its child possibilities in the matrix rows having row positions equal to the sum of the row position of the loaded row of the previously-loaded column and the child confidence associated with said child possibility being stored, iii) repeating step (ii) until the last one of the sequential sibling entities has been stored in the last-loaded column of data matrix, whereby the row position of each row of the last-loaded column containing one of the child possibilities corresponds to the parent rank of at least one ranked parent candidate that can be generated using said one of the child possibilities. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of organizing a series of sibling entities for facilitating on-demand production of a ranked parent candidate of the series of sibling entities, the ranked parent candidate including one or more component elements, each component element consisting of one of the child possibilities selected from one of the sibling entities, the ranked parent candidate having a parent rank representing an aggregate of the child confidences associated with the child possibilities that comprise the component elements of the ranked parent candidate, the method comprising:
-
(a) receiving a series of sibling entities S1, S2, . . . Sn, each of the sibling entities comprising one or more child possibilities CPi having an associated child confidence CFi, where i=1 . . . n;
(b) establishing a rollup matrix having a matrix height and a matrix width, the rollup matrix including a series of columns COL1, COL2, . . . COLn spanning the matrix width and a series of rows R1, R2, . . . Rn spanning the matrix height and located at respective row positions H=1, H=2, . . . H=n along the matrix height; and
(c) loading the rollup matrix with the series of sibling entities in a predetermined loading sequence starting with COL1 and ending with COLn, the loading of the rollup matrix, including the steps of;
i) storing S1 in COL1, including, for i=1, 2 . . . n, storing each child possibility CPi of S1 in one of the rows RH, where H=CFi, ii) initializing a variable j so that j=1, iii) incrementing j by 1, iv) for each loaded row RF of the previously-loaded column COLj−
1 in which a child possibility has been stored, in which the row position of RF is F, storing in COLj the corresponding sibling entity Sj including storing each of its child possibilities CPi in matrix rows RH having row positions H=F+CF for i=1, 2, . . . n, andv) repeating steps (iii) and (iv) until the last one of the sequential sibling entities (Sn) has been stored in the last-loaded column (COLn) of the rollup matrix, whereby the row position of each loaded row of the last-loaded column (COLn) containing one of the child possibilities corresponds to the parent rank of at least one ranked parent candidate that can be generated using said one of the child possibilities. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A rollup function for use with a computer-implemented data storage, presentation, and analysis system comprising:
-
a matrix initialization routine for receiving ranked sibling entities, the sibling entities including child possibilities representing siblings of a shared parent data entity, sizing a rollup matrix, and reserving matrix locations in a computer memory to accommodate the rollup matrix;
a loading routine for loading the sibling entities in the matrix locations in a first sequence, including loading the child possibilities of the sibling entities; and
a roll-out routine for reading the child possibilities of the sibling entities from the matrix locations in a second sequence opposite the first sequence and combining the child possibilities to form parent candidates. - View Dependent Claims (18, 19)
-
Specification