Modeling problems using predicates that induce a partial order among global states was introduced as a way to permit asynchronous execution in multiprocessor systems. A key property of them is that the predicate induces one lattice in the state space which guarantees that the execution is correct even if nodes execute with old information about their neighbours. Unfortunately, many interesting problems do not exhibit lattice linearity. This issue was alleviated with the introduction of eventually lattice linear algorithms. Such algorithms induce a partial order in a subset of the state space even though the problem cannot be defined by a predicate under which the states form a partial order. This paper focuses on analyzing and differentiating between lattice linear problems and algorithms. It also introduces a new class of algorithms called (fully) lattice linear algorithms. A characteristic of these algorithms is that the entire reachable state space is partitioned into one or more lattices and the initial state locks into one of these lattices. Thus, under a few additional constraints, the initial state can uniquely determine the final state. For demonstration, we present lattice linear self-stabilizing algorithms for minimal dominating set and graph colouring problems, and a parallel processing 2-approximation algorithm for vertex cover. The algorithm for minimal dominating set converges in $n$ moves, and that for graph colouring converges in $n+2m$ moves. These algorithms preserve this time complexity while allowing the nodes to execute asynchronously and take actions based on old or inconsistent information about their neighbours. They present an improvement to the existing algorithms present in the literature. The algorithm for vertex cover is the first lattice linear approximation algorithm for an NP-Hard problem; it converges in $n$ moves.
翻译:使用导致全球各州间部分秩序的上游模拟问题被引入了一种允许多处理器系统中非同步执行的方法。 其关键属性之一是, 上游在州空间中诱发一个宽度, 保证执行正确, 即使节点是用其邻居的旧信息执行的。 不幸的是, 许多有趣的问题没有表现出细度线性。 随着最终引入 lattice 线性算法, 这一问题得到了缓解。 这种算法在州空间的一个子中引发部分顺序。 尽管问题无法通过国家组成部分顺序的上游来定义。 本文的重点是分析并区分拉ttice 线性问题和算法。 它还引入了一种新的算法, 叫做( 完全) lattice线性线性线性线性算法。 这些算法的一个特征是, 整个可到达的状态被分割成一个或更多的线性线性线性线性算法。 因此, 在少数额外的制约下, 初始状态可以决定最终状态 。 为了演示, 我们展示 $ 线性直线性直线性直线性算法的算法, 将一个最小的轨算算算出一个最低的轨算法, 。 。 将一个最低的轨算算法 。 以最低的轨算算法化为最低的 。 。 。 。 这些算算法 以目前压的 基的 的 的 的 的 的 的 的 的 的 平的 平的 平的算法变法 的 。 在 的 的 的 的 的 的 的 的 的 的 的 平的 平的 的 的 的 的 的 的 的 的 的 的 正在的 的 平的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 平的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 正在的 的 的 的