Once and for all: how to compose modules -- The composition calculus

Peter Fettke,Wolfgang Reisig
2024-08-27
Abstract:Computability theory is traditionally conceived as the theoretical basis of informatics. Nevertheless, numerous proposals transcend computability theory, in particular by emphasizing interaction of modules, or components, parts, constituents, as a fundamental computing feature. In a technical framework, interaction requires composition of modules. Hence, a most abstract, comprehensive theory of modules and their composition is required. To this end, we suggest a minimal set of postulates to characterize systems in the digital world that consist of interacting modules. For such systems, we suggest a calculus with a simple, yet most general composition operator which exhibits important properties, in particular associativity. We claim that this composition calculus provides not just another conceptual, formal framework, but that essentially all settings of modules and their composition can be based on this calculus. This claim is supported by a rich body of theorems, properties, special classes of modules, and case studies.
Software Engineering,Formal Languages and Automata Theory
What problem does this paper attempt to address?
The core problem that this paper attempts to solve is: **How to provide a unified theoretical basis for systems composed of interaction modules**. Specifically, the author believes that the traditional computability theory is no longer sufficient as the theoretical basis of informatics (computer science), especially when describing systems in the complex digital world composed of decentralized modules. Therefore, they propose a new theoretical framework - **composition calculus**, aiming to abstract and uniformly handle various modules and their combination methods. ### Problem Background 1. **Limitations of Traditional Theories**: - The basic theory of computer science has always been computability theory, which mainly focuses on the functions of a single program. - With the development of information technology, the computer has become a part of daily life, forming a new digital world that includes mechanical devices, organizations, and people. - In this new world, the modularization of systems and the interaction between modules become crucial, and the traditional computability theory cannot fully describe these characteristics. 2. **Challenges of Modular Systems**: - Modular systems are widely present in various fields, such as engineering, software development, etc. - Modules can be extremely heterogeneous, with almost no commonalities in internal structure or behavior, but they can still be combined into larger systems. - Currently, there is a lack of a unified understanding, framework, or theory to handle all different types of module combination operations. ### Solution To address the above challenges, the author proposes **composition calculus**, which is a general - purpose framework for describing and handling modules and their combinations. This framework has the following characteristics: - **Minimum Axiom Set**: A set of minimum axioms is defined to characterize systems in the digital world, which are composed of interaction modules. - **Combination Operator**: A simple but general - purpose combination operator is introduced, which has important properties, especially associativity, ensuring the consistency and uniqueness of combination operations. - **Wide Application**: Through multiple theorems, properties, special categories of modules, and case studies, the wide applicability and theoretical depth of this framework are proved. ### Main Contributions 1. **Proposing a New Theoretical Framework**: Composition calculus is not only a conceptual formal framework, but can also be used as the basis for almost all module combination settings. 2. **Providing Rich Theoretical Support**: Through a large number of theorems and properties, the effectiveness and universality of this framework are proved. 3. **Solving Key Problems in Module Combinations**: Such as associativity, cancellative, commutative, and equidivisibility, etc. In conclusion, this paper attempts to solve the current problem of insufficient theoretical basis for modular systems by introducing composition calculus, and provides a solid theoretical framework for future research and applications.