← Back to Patent Explorer
US6055529A Expired / Lapsed US ⏱️ 0.0 years remaining

Method, apparatus and computer program product for extracting known patterns from a data structure in a single pass

Assignee: Oracle America Inc
•
Filing: 1998-02-20
•
Granted: 2000-04-25
•
Expires: 2018-02-20
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Apparatus, methods and computer program products provide for searching a data structure to extract possible matches of one or more known patterns that may exist in the data structure through a single traversal of the data structure. The apparatus methods and computer program products use a direction list tree that represents the known patterns that may exist in the data structure. The apparatus, methods and computer program products detect known patterns by gathering marker information from edge nodes that define the known patterns and then, at each pattern termination node, determines which known patterns have been found. These known patterns can then be processed.

Inventors

  • 👤 John L. Furlani

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 21:07
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/90; G06F16/903; G06F16/90335; G06F16/90344; Y; Y10; Y10S; Y10S707/00; Y10S707/912; Y10S707/913; Y10S707/915; Y10S707/953; Y10S707/954; Y10S707/99931; Y10S707/99933; Y10S707/99936; Y10S707/99941; Y10S707/99943

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 180 words
A computer controlled method for searching a data structure to extract possible matches of one or more known patterns that may exist in said data structure, said method comprising steps of: (a) building said data structure, said data structure having a starting node and one or more dependent nodes linked to said starting node; (b) matching said starting node with a first base leaf contained within a direction list, said direction list comprising a plurality of tnodes one of which is said first base leaf, said direction list also representing said one or more known patterns each capable of being represented within said data structure, each of said one or more known patterns sharing said first base leaf within said direction list, the plurality of tnodes including a plurality of tnode markers; (c) searching said data structure from said starting node for said one or more known patterns in said direction list by performing a single traversal of said direction list, said single traversal corresponding to said dependent nodes; and (d) accumulating one or more patterns dependent on step (c).
Claim 2
Dependent Claim 180 words
A computer controlled method for searching a data structure to extract possible matches of one or more known patterns that may exist in said data structure, said method comprising steps of: (a) building said data structure, said data structure having a starting node and one or more dependent nodes linked to said starting node; (b) matching said starting node with a first base leaf contained within a direction list, said direction list comprising a plurality of tnodes one of which is said first base leaf, said direction list also representing said one or more known patterns each capable of being represented within said data structure, each of said one or more known patterns sharing said first base leaf within said direction list, the plurality of tnodes including a plurality of tnode markers; (c) searching said data structure from said starting node for said one or more known patterns in said direction list by performing a single traversal of said direction list, said single traversal corresponding to said dependent nodes; and (d) accumulating one or more patterns dependent on step (c).
Claim 3
Dependent Claim 14 words
The computer controlled method of claim 1 further comprising: (e) constructing said direction list.
Claim 4
Dependent Claim 99 words
The computer controlled method of claim 2 wherein step (e) comprises steps of: (e1) identifying said one or more known patterns; and (e2) creating a first tree of tnodes, extending from said first base leaf representing said one or more known patterns that start from said first base leaf, each of said one or more known patterns represented by a respective interrelationship between said plurality of tnodes, wherein portions of said respective interrelationship that are shared between each of said one or more known patterns are represented by shared tnodes, each of said plurality of tnodes containing pattern information.
Claim 5
Dependent Claim 23 words
The computer controlled method of claim 3 wherein said direction list further comprises a second base leaf having a second tree of tnodes.
Claim 6
Dependent Claim 75 words
The computer controlled method of claim 1 wherein step (c) further comprises steps of: (c1) gathering a plurality of tnode markers from said plurality of tnodes, each of said plurality of tnode markers associated with said one or more known patterns; (c2) identifying a pattern termination tnode corresponding to a specific pattern of said one or more known patterns; and (c3) validating that said single traversal gathered required tnode markers associated with said specific pattern.
Claim 7
Dependent Claim 35 words
The computer controlled method of claim 1 wherein step (d) further comprises selecting a first pattern over a second pattern dependent on the number of tnodes represented by said first pattern and said second pattern.
Claim 8
Dependent Claim 40 words
The computer controlled method of claim 1 wherein said data structure is a directed acyclic graph (DAG), said starting node and said dependent nodes represent atomic image processing operations, said one or more known patterns representing molecular image processing operations.
Claim 9
Independent Claim 222 words
An apparatus having a central processing unit (CPU) and a memory coupled to said CPU for searching a data structure in said memory to extract possible matches of one or more known patterns that may exist in said data structure, said apparatus comprises: a data structure construction mechanism configured to build said data structure in said memory, said data structure having a starting node and one or more dependent nodes linked to said starting node; a base-leaf matching mechanism configured to match said starting node of said data structure with a first base leaf contained within a direction list, said direction list comprising a plurality of tnodes one of which is said first base leaf, said direction list also representing said one or more known patterns each capable of being represented within said data structure, each of said one or more known patterns sharing said first base leaf within said direction list, the plurality of tnodes including a plurality of tnode markers; a pattern search mechanism configured to search said data structure from said starting node for said one or more known patterns in said direction list by performing a single traversal of said direction list, said single traversal corresponding to said dependent nodes; and a pattern accumulation mechanism configured to accumulate one or more patterns dependent on the pattern search mechanism.
Claim 10
Independent Claim 222 words
An apparatus having a central processing unit (CPU) and a memory coupled to said CPU for searching a data structure in said memory to extract possible matches of one or more known patterns that may exist in said data structure, said apparatus comprises: a data structure construction mechanism configured to build said data structure in said memory, said data structure having a starting node and one or more dependent nodes linked to said starting node; a base-leaf matching mechanism configured to match said starting node of said data structure with a first base leaf contained within a direction list, said direction list comprising a plurality of tnodes one of which is said first base leaf, said direction list also representing said one or more known patterns each capable of being represented within said data structure, each of said one or more known patterns sharing said first base leaf within said direction list, the plurality of tnodes including a plurality of tnode markers; a pattern search mechanism configured to search said data structure from said starting node for said one or more known patterns in said direction list by performing a single traversal of said direction list, said single traversal corresponding to said dependent nodes; and a pattern accumulation mechanism configured to accumulate one or more patterns dependent on the pattern search mechanism.
Claim 11
Dependent Claim 18 words
The apparatus of claim 8 further comprising a direction list construction mechanism configured to construct said direction list.
Claim 12
Dependent Claim 110 words
The apparatus of claim 9 wherein the direction list construction mechanism comprises: a pattern identification mechanism configured to identify said one or more known patterns; and a direction list creation mechanism configured to create a first tree of tnodes, extending from said first base leaf, representing said one or more known patterns that start from said first base leaf, each of said on e or more known patterns represented by a respective interrelationship between said plurality of tnodes, wherein portions of said respective interrelationship that are shared between each of said one or more known patterns are represented by shared tnodes, each of said plurality of tnodes containing pattern information.
Claim 13
Dependent Claim 21 words
The apparatus of claim 10 wherein said direction list further comprises a second base leaf having a second tree of tnodes.
Claim 14
Dependent Claim 89 words
The apparatus of claim 8 wherein the pattern search mechanism further comprises: a marker gathering mechanism configured to gather a plurality of tnode markers from said plurality of tnodes, each of said plurality of tnode markers associated with said one or more known patterns; a termination tnode identification mechanism configured to identify a pattern termination tnode corresponding to a specific pattern of said one or more known patterns; and a pattern validation mechanism configured to validate that said single traversal gathered required tnode markers associated with said specific pattern.
Claim 15
Dependent Claim 41 words
The apparatus of claim 8 wherein the pattern accumulation mechanism further comprises a pattern selection mechanism configured to select a first pattern over a second pattern dependent on the number of tnodes represented by said first pattern and said second pattern.
Claim 16
Dependent Claim 38 words
The apparatus of claim 8 wherein said data structure is a directed acyclic graph (DAG), said starting node and said dependent nodes represent atomic image processing operations, said one or more known patterns representing molecular image processing operations.
Claim 17
Dependent Claim 272 words
A computer program product comprising: a computer usable medium having computer readable code embodied therein for causing a computer to search a data structure in a memory to extract possible matches of one or more known patterns that may exist in said data structure, said computer readable code comprising: computer readable program code configured to cause said computer to effect a data structure construction mechanism configured to build said data structure in said memory, said data structure having a starting node and one or more dependent nodes linked to said starting node; computer readable program code configured to cause said computer to effect a base-leaf matching mechanism configured to match said starting node of said data structure with a first base leaf contained within a direction list, said direction list comprising a plurality of tnodes one of which is said first base leaf, said direction list also representing said one or more known patterns each capable of being represented within said data structure, each of said one or more known patterns sharing said first base leaf within said direction list, the plurality of tnodes including a plurality of tnode markers; computer readable program code configured to cause said computer to effect a pattern search mechanism configured to search said data structure from said starting node for said one or more known patterns in said direction list by performing a single traversal of said direction list, said single traversal corresponding to said dependent nodes; and computer readable program code configured to cause said computer to effect a pattern accumulation mechanism configured to accumulate one or more patterns dependent on the pattern search mechanism.
Claim 18
Dependent Claim 272 words
A computer program product comprising: a computer usable medium having computer readable code embodied therein for causing a computer to search a data structure in a memory to extract possible matches of one or more known patterns that may exist in said data structure, said computer readable code comprising: computer readable program code configured to cause said computer to effect a data structure construction mechanism configured to build said data structure in said memory, said data structure having a starting node and one or more dependent nodes linked to said starting node; computer readable program code configured to cause said computer to effect a base-leaf matching mechanism configured to match said starting node of said data structure with a first base leaf contained within a direction list, said direction list comprising a plurality of tnodes one of which is said first base leaf, said direction list also representing said one or more known patterns each capable of being represented within said data structure, each of said one or more known patterns sharing said first base leaf within said direction list, the plurality of tnodes including a plurality of tnode markers; computer readable program code configured to cause said computer to effect a pattern search mechanism configured to search said data structure from said starting node for said one or more known patterns in said direction list by performing a single traversal of said direction list, said single traversal corresponding to said dependent nodes; and computer readable program code configured to cause said computer to effect a pattern accumulation mechanism configured to accumulate one or more patterns dependent on the pattern search mechanism.
Claim 19
Dependent Claim 31 words
The computer program product of claim 15 further comprising computer readable program code configured to cause said computer to effect a direction list construction mechanism configured to construct said direction list.
Claim 20
Dependent Claim 133 words
The computer program product of claim 16 wherein the direction list construction mechanism comprises: computer readable program code configured to cause said computer to effect a pattern identification mechanism configured to identify said one or more known patterns; and computer readable program code configured to cause said computer to effect a direction list creation mechanism configured to create a first tree of tnodes, extending from said first base leaf, representing said one or more known patterns that start from said first base leaf, each of said one or more known patterns represented by a respective interrelationship between said plurality of tnodes, wherein portions of said respective interrelationship that are shared between each of said one or more known patterns are represented by shared tnodes, each of said plurality of tnodes containing pattern information.
Claim 21
Dependent Claim 23 words
The computer program product of claim 17 wherein said direction list further comprises a second base leaf having a second tree of tnodes.
Claim 22
Dependent Claim 124 words
The computer program product of claim 15 wherein the pattern search mechanism further comprises: computer readable program code configured to cause said computer to effect a marker gathering mechanism configured to gather a plurality of tnode markers from said plurality of tnodes, each of said plurality of tnode markers associated with said one or more known patterns; computer readable program code configured to cause said computer to effect a termination tnode identification mechanism configured to identify a pattern termination tnode corresponding to a specific pattern of said one or more known patterns; and computer readable program code configured to cause said computer to effect a pattern validation mechanism configured to validate that said single traversal gathered required tnode markers associated with said specific pattern.
Claim 23
Dependent Claim 54 words
The computer program product of claim 15 wherein the pattern accumulation mechanism further comprises computer readable program code configured to cause said computer to effect a pattern selection mechanism configured to select a first pattern over a second pattern dependent on the number of tnodes represented by said first pattern and said second pattern.
Claim 24
Dependent Claim 40 words
The computer program product of claim 15 wherein said data structure is a directed acyclic graph (DAG), said starting node and said dependent nodes represent atomic image processing operations, said one or more known patterns representing molecular image processing operations.

References Cited (Backward Citations)

US4794528A Cited
US5809499A Cited
US5873081A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-04-25 2003-10-25 2004-04-25 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-04-25 2007-10-25 2008-04-25 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-04-25 2011-10-25 2012-04-25 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag