This paper introduces a novel paradigm for the analysis and verification of concurrent programs -- the Singularity Theory. We model the execution space of a concurrent program as a branched topological space, where program states are points and state transitions are paths. Within this framework, we characterize deadlocks as attractors and livelocks as non-contractible loops in the execution space. By employing tools from algebraic topology, particularly homotopy and homology groups, we define a series of concurrent topological invariants to systematically detect and classify these concurrent "singularities" without exhaustively traversing all states. This work aims to establish a geometric and topological foundation for concurrent program verification, transcending the limitations of traditional model checking.
翻译:本文提出了一种用于分析与验证并发程序的新范式——奇点理论。我们将并发程序的执行空间建模为一个分支拓扑空间,其中程序状态为点,状态转移为路径。在此框架下,我们将死锁表征为执行空间中的吸引子,将活锁表征为不可缩的环路。通过运用代数拓扑工具,特别是同伦群与同调群,我们定义了一系列并发拓扑不变量,以系统性地检测并分类这些并发“奇点”,而无需穷举遍历所有状态。本研究旨在为并发程序验证建立几何与拓扑基础,以超越传统模型检测方法的局限性。