Population protocols are a distributed computation model in which a collection of anonymous, finite-state agents interact in randomly chosen pairs and update their states according to a fixed transition function. The computation is defined by the eventual stabilization of the population to a consensus that represents the output. In practice, it is natural to allow each agent to carry a unique identifier and compare it with that of another agent before interacting. We model this extension by having agents be totally ordered and interactions between two agents to be fireable only if their pair of identifiers falls in some condition set. For instance, $\mathsf{PP}[<]$ allows for two agents to interact only if the first one appears before the second one. We study population protocols over ordered agents $\mathsf{PP}[N]$ where $N$ is a set of predicates available to restrict transition firing. We also study $\textsf{IO-PP}[N]$, the immediate observation fragment of $\mathsf{PP}[N]$ where only one agent changes state per interaction. Our main result is that $\textsf{IO-PP}[<]$ recognizes exactly the unambiguous star-free languages, which admits many other characterizations, such as two-variable first-order logic or two-way deterministic partially-ordered automata. We also provide a logic and an automaton model that fits in $\mathsf{PP}[<]$. We further show that if the successor predicate appears in a set $N$ of $\mathsf{NSPACE}(n)$-computable predicates, then $\textsf{IO-PP}[N]=\mathsf{PP}[N]=\mathsf{NSPACE}(n)$. Finally, we investigate the problem of deciding whether a given population protocol always stabilizes to a consensus. While this problem is decidable for unordered population protocols, we show that this is undecidable already for $\mathsf{PP}[<]$ and $\textsf{IO-PP}[+1]$, but conditionally decidable for $\textsf{IO-PP}[<]$.
翻译:群体协议是一种分布式计算模型,其中一组匿名的有限状态主体随机成对交互,并根据固定转移函数更新状态。计算过程通过群体最终稳定到代表输出的共识来定义。在实践中,允许每个主体携带唯一标识符并在交互前与另一主体比较标识符是自然的。我们通过将主体完全有序化,并仅当两个标识符对满足某个条件集时才能触发主体间的交互来建模这一扩展。例如,$\mathsf{PP}[<]$仅允许当第一个主体出现在第二个之前时两者才能交互。我们研究有序主体上的群体协议$\mathsf{PP}[N]$,其中$N$是用于限制转移触发的谓词集合。我们还研究$\textsf{IO-PP}[N]$,即$\mathsf{PP}[N]$的即时观察片段,其中每次交互仅有一个主体改变状态。我们的主要结果是$\textsf{IO-PP}[<]$恰好识别无歧义的无星语言,该语言具有多种其他刻画,例如二元一阶逻辑或双向确定性偏序自动机。我们还提出了一个适合$\mathsf{PP}[<]$的逻辑和自动机模型。进一步地,我们证明如果后继谓词出现在$\mathsf{NSPACE}(n)$可计算谓词的集合$N$中,则$\textsf{IO-PP}[N]=\mathsf{PP}[N]=\mathsf{NSPACE}(n)$。最后,我们研究了判定给定群体协议是否总是稳定到共识的问题。虽然该问题对于无序群体协议是可判定的,但我们证明对于$\mathsf{PP}[<]$和$\textsf{IO-PP}[+1]$已是不可判定的,但对于$\textsf{IO-PP}[<]$是有条件可判定的。