1. A first data structure stored in a memory, the first data structure being used for representing information, the first data structure comprising: a first set of points and a first set of edges wherein each edge in the first set of edges has an edge type comprising one of a first edge type, a second edge type, or an identity edge type, and each edge in the first set of edges has a unique start point wherein said start point is in said first set of points, and each edge in the first set of edges of the first edge type has a unique end point, and each edge in the first set of edges of the second edge type has a unique end point, and each edge in the first set of edges of the identity edge type either has a unique end point or has no end point (null identity edge); each point in the first set of points is the start point of a first edge in the first set of edges, wherein the first edge is of the first edge type, wherein said start point of the first edge differs for each first edge in the first set of edges; each point in the first set of points is the start point of a second edge in the first set of edges, wherein the second edge is of the second edge type, wherein said start point of the second edge differs for each second edge in the first set of edges; each point in the first set of points is the start-point of an identity edge in the first set of edges, wherein the identity edge is of the identity edge type, wherein said start point of the identity edge differs for each identity edge in the first set of edges; a first unique maximal point in the first data structure wherein the first unique maximal point can be reached from every other point in the first set of points by following edges of the first edge type from the first set of edges and the first unique maximal point can be reached from every point in the first set of points by following edges of the second edge type in the first set of edges; wherein the end-points of all edges of all types that do not have the first unique maximal point as the start point are either null or are points within the first set; wherein any edge of the first type having the first unique maximal point as the first point has an end point outside the first set of points; wherein any edge of the second type having the first unique maximal point as the first point has an end point outside the first set of points; wherein there are no cyclical paths in paths defined by said first edges in said first set of edges; and wherein there are no cyclical paths in paths defined by said second edges in said first set of edges.