Patent ID: 8250107

Claim:
A memory for storing data for access by a program being executed on a data processing system, comprising a data structure stored in said memory, said data structure having a plurality of nodes, the nodes representing elements in a set and edges between the nodes representing relationships among the elements, wherein each node includes: a current set of variables that define a state of the node; and at least one last-in, first-out stack that stores one or more pointers to prior sets of variables for the node, and wherein the states of the nodes define a state of the data structure which represents a design solution of a physical system, wherein each node further comprises a first counter associated with each stack, wherein the first counter stores a number of pending state saves at the node; and wherein at least some of the nodes have descendent nodes and include a second counter associated with each stack, wherein the second counter stores a number of state saves to be propagated to descendent nodes of the node.