On the formalization of the notion of a concurrent algorithm
C. A. Middelburg
TL;DR
The paper formalizes the notion of concurrent algorithms by introducing concurrent proto-algorithms and treating concurrent algorithms as equivalence classes under defined relations. It builds a formal framework using an alphabet $\\Sigma$, concurrent-$\\Sigma$-algorithm component graphs, and a $\\Sigma$-interpretation to capture the pattern of concurrent computation, along with algorithmic and computational step functions, and notions of simulation and isomorphism. It extends the theory to non-deterministic components and establishes that any concurrent proto-algorithm is algorithmically equivalent to some non-deterministic sequential proto-algorithm, linking concurrency and non-determinism in a precise, structural way. These results provide a unified, model-based perspective on parallel and interactive computation, with implications for understanding the sameness of computation patterns across diverse parallel models.
Abstract
Previous papers give accounts of quests for satisfactory formalizations of the classical informal notion of an algorithm and the contemporary informal notion of an interactive algoritm. In this paper, an attempt is made to generalize the results of the former quest to the contemporary informal notion of a concurrent algorithm. The notion of a concurrent proto-algorithm is introduced. The thought is that concurrent algorithms are equivalence classes of concurrent proto-algorithms under an appropriate equivalence relation. Three equivalence relations are defined. Two of them are deemed to be bounds for an appropriate equivalence relation and the third is likely an appropriate one. The connection between concurrency and non-determinism in the presented setting is also addressed.
