Method for generating a preferred processing order and for detecting cycles in a directed graph used to represent system component connectivity
AssigneeUnisys Corporation
InventorJohn T. Rusterholz
Life of this patent
Estimating the term…
Loading patent…
AssigneeUnisys Corporation
InventorJohn T. Rusterholz
Estimating the term…
A method used by a digital computer for generating a preferred processing order of the vertices in a directed graph. The method also detects any cycles that exist in the directed graph. The vertices of the directed graph represent components of a system and the arcs represent the interrelationships between components. Each arc is defined by a vertex pair consisting of a starting vertex and an ending vertex. Each vertex is either assigned or unassigned to a processing order and marked as either a leaf vertex or a non-leaf vertex. The method includes traversing the set of arcs of the directed graph and marking the starting vertex as a non-leaf vertex for each arc whose ending vertex is unassigned, traversing the set of vertices and for each vertex that is unassigned and a leaf vertex, assigning the vertex to the processing order; and for each vertex that is unassigned and a non-leaf vertex, marking it as a leaf vertex. If unassigned vertices remain in the set of vertices and no vertices were assigned to the processing order then a cycle exists in the directed graph. These steps are repeated as long as there are vertices in the set of vertices that are unassigned and no cycle has been detected.
A computer-implemented method for generating a processing order and for detecting cycles in a directed graph having an array of vertices and an array of arcs connecting pairs of vertices, wherein the array of vertices and the array of arcs may be randomly-ordered, and wherein vertices represent components in a system and arcs represent a logical relationship between the components in the system, each are being defined by a starting vertex and an ending vertex, each vertex being assigned or unassigned to a processing order array and being electronically marked as a leaf vertex or a non-leaf vertex, the computer-implemented method comprising the steps of:
A method for operating a digital computer to generate a processing order array and to detect cycles in a directed graph having an array of vertices and an array of arcs connecting pairs of vertices, each arc being defined by a starting vertex and an ending vertex, wherein the array of vertices and the array of arcs may be randomly-ordered, and wherein each vertex represents a component in a system and each are represents a logical relationship between a plurality of components in the system, each vertex being assigned or unassigned to the processing order array and being electronically marked as a leaf vertex or a non-leaf vertex, comprising the steps of operating a computer to:
A computer-implemented method for generating a processing order and for detecting cycles in a directed graph having an array of vertices and an array of arcs connecting pairs of vertices, wherein the array of vertices and the array of arcs may be randomly-ordered, and wherein each vertex represents a component in a system and each arc represents a logical relationship between a plurality of components in the system, each arc being defined by a starting vertex and an ending vertex, each vertex being assigned or unassigned to a position in a preliminary processing order array and being electronically marked as a leaf vertex or a non-leaf vertex, a parent vertex being the starting vertex and a corresponding child vertex being the ending vertex for any arc, comprising the steps of:
An apparatus for producing a processing order for the components in a system and for detecting recursion in the system definition, the components being represented as vertices in a directed graph, the arcs of the directed graph representing a logical relationship between selected vertices, each arc being defined by a starting vertex and an ending vertex, each vertex being assigned or unassigned to a processing order array and being marked as a leaf vertex or a non-leaf vertex, the directed graph being input to the apparatus, the apparatus comprising:
An apparatus for producing a processing order for the components in a system and for detecting recursion in the system definition, the components being represented as vertices in a directed graph, the arcs of the directed graph representing a logical relationship between selected vertices, each arc being defined by a starting vertex and an ending vertex, each vertex being assigned or unassigned to a processing order array and being electronically marked as a leaf vertex or a non-leaf vertex, the directed graph being input to the apparatus, the apparatus comprising:
For use with a data base storing representations of electronic components, selected hierarchical ones of the electronic components being defined as an interconnection of one or more associated ones of the electronic components, wherein each of the selected hierarchical ones of the electronic components is defined as a parent component and each of the associated ones of the electronic components is defined as an associated child component, the data base further storing a representation of a circuit design comprising the interconnection of included ones of the electronic components, a method for determining a final predetermined processing order of the included ones of the electronic components and for determining whether a recursion exists wherein an included one of the electronic components is a selected hierarchical one of the electronic components defined as a circuit design containing that selected hierarchical one of the electronic components, comprising the steps of:
For use with a data base storing representations of electronic components, selected hierarchical ones of the electronic components being defined as an interconnection of one or more associated ones of the electronic components, wherein each of the selected hierarchical ones of the electronic components is defined as a parent component and each of the associated ones of the electronic components is defined as an associated child component, the data base further storing a representation of a hierarchical circuit design comprising the interconnection of included ones of the electronic components, an apparatus for determining a final predetermined processing order of the included ones of the electronic components and for determining whether a recursion exists wherein an included one of the electronic components is a selected hierarchical one of the electronic components defined as a circuit design containing that selected hierarchical one of the electronic components, the apparatus comprising:
Dependencies are inferred from the claim text.