The example of abandoning the aether also points out that only by the use of available mathematical foundations was it possible to construct “advanced” theories such as the theory of relativity in an acceptable fashion. The formalism alone does not enable to formulate new or better theories, but it is up to the skill, often intuition and persistence of the researchers to ﬁnd a ﬁtting formulation of their visions. This also points out a limitation of digital computers, since, while they can be programmed to execute an overwhelming complexity of algebraic calculations, they have no intuition or common sense to guide these operations. It is arguable that for this reason it is beneﬁcial to provide mechanisms or frameworks which support the enforcement of algebraic structures. The availability of high level algebraic structures can then aid researchers by being able to point out errors as soon as possible instead of deferring to a low level or not indicating an error at all, but silently calculating an erroneous result.

The main issue here is that abstract theories are further realized on an abstract media. For, while the machines used for computations deﬁnitely have a physical reality, programs executed on digital machines are as purely abstract as the values they compute. This lack of substance makes it diﬃcult to properly gauge the accuracy of obtained results. While results are often evaluated from an application point of view, such as physics, the implementation may in fact be ﬂawless in its translation of an idea, but the idea itself may break with the construct of abstraction. Then it follows in an “ex falso sequitur quodlibet” fashion that the result, if it meets expectations or not is in fact useless, since it is borne more of (false) hopes than systematic analysis. Thus, the importance of a clear understanding of terms and deﬁnitions, and their inherent limits of applicability cannot be stressed enough, since it is enormously underestimated in a world which is heading for the mediocre goal of “good enough computing”, where compromises in realization are introduced prematurely.

A means to prevent the ensuing chaos by using abstractions is schematically shown in Figure 2.3 inspired by the well known process of protein synthesis using DNA/RNA. An abstract theory is expressed clad in mathematical terms and deﬁnitions, as is customary in natural sciences, as is depicted on the left hand side of the Figure. Similarly concepts and their various implementations also have mathematical expressions. When a concept corresponds to a requirement in the theory, a ﬁtting implementation can be selected. By relying on generic implementations, the individual components can be combined easily in the necessary conﬁguration. Similar to the biological role model it is not just a simple matching, but depends on the surrounding environment and constraints. The constraints, such as performance guarantees, restrictions on computational complexities, or memory restriction select which particular implementations are made available, while the environment in the least form of a compiler and its accompanying tool chain then fuse the selected components into a working application. Thus, the same theory can give rise to diﬀerent implementations, as long as they are conceptionally equivalent, thus falling into the same equivalence class (Deﬁnition 9) with respect to the imposed demands.

The next chapter is dedicated to providing a possible classiﬁcation and categorization of available
implementations, especially when dealing with the base components, as well as presenting novel
implementations as the mathematical sophistication is increased and thus represents a major
contribution.