Like register attributes, subgraph multiplicities are defined for all graph objects. Other than registers, subgraph multiplicities are represented by arrays only for sparse graphs. For dense graphs, a hash table is used. By that, the memory to store subgraphs grows proportional with the subgraph cardinality. For logical graph instances (e.g. network flow transformations), subgraph multiplicities are not stored separately, but synchronized with the subgraph multiplicities of the original graph.

The degree labels are indeed represented in memory. For the sake of efficiency, the following is implemented:

- The degree labels are only generated with a call to Deg(), DegIn() or DegOut(). But then all node degrees are computed in one pass.
- Once generated, with every change of a subgraph multiplicity, the degree labels of the respective end nodes are adjusted.
- The degree labels can be disallocated again to save this book keeping operations by calling ReleaseDegrees(). This in particular happens when the subgraph is reset by using InitSubgraph(). For the time being, the degree labels of a sparse graph are corrupted by graph skeleton manipulations.