Several libraries have already been developed to address the issues of representing and manipulating data efficiently. By recognizing data structures as topological spaces, for instance cell complices, concepts of algebraic topology may be applied, with the dimension as well as the types of complex and the cells being of particular interest. This elegantly unveils common properties and simplifies further studies, such as investigations of higher dimensions, which reveal additional properties, such as the internal container specification, the cell topology, and the access space properties.
The variable number of properties, which may be specified, e.g., for different dimensions, poses a challenge to formulating a consistent specification methodology. The use of a strict mathematical formalism aids the development of a flexible and powerful protocol for the specification of meta data structures that can handle the varying number of specification parameters.
The library utilizes all the research and development experience as well as successfully deployed concepts from already existing high quality libraries, such as Boost Phoenix, wherever possible and appropriate. Thereby the overall implementation and maintenance effort is minimized, while high levels of quality are ensured.
By using the resulting library, it is possible to describe not only Plain Old Data (POD) but also higher dimensional containers of virtually arbitrary complexity. Besides this high flexibility and adaptability, the strong foundation in algebraic topology allows additional operations on the resulting data structures, such as boundary and co-boundary operations, e.g., the derivation of vertex-on-cell and cell-on-vertex relations. A great benefit of the abstract topological specification spaces of arbitrary dimension or topologyis is that they are equally treatable.
The use of both compile time and run time evaluation techniques ensures high performance as well as high flexibility.
|