We present a lattice of distributed program specifications, whose ordering represents implementability/refinement. Specifications are modelled by families of subsets of relative execution traces, which encode the local orderings of state transitions, rather than their absolute timing according to a global clock. This is to overcome fundamental physical difficulties with synchronisation. The lattice of specifications is assembled and analysed with several established mathematical tools. Sets of nondegenerate cells of a simplicial set are used to model relative traces, presheaves model the parametrisation of these traces by a topological space of variables, and information algebras reveal novel constraints on program correctness. The latter aspect brings the enterprise of program specification under the widening umbrella of contextual semantics introduced by Abramsky et al. In this model of program specifications, contextuality manifests as a failure of a consistency criterion comparable to Lamport's definition of sequential consistency. The theory of information algebras also suggests efficient local computation algorithms for the verification of this criterion. The novel constructions in this paper have been verified in the proof assistant Isabelle/HOL.
翻译:我们展示了分布式程序规格的一格,其顺序代表可执行性/精炼性。规格由相对执行痕迹的子组组成,该子组编码了国家转换的本地顺序,而不是按照全球时钟的绝对时间。这是为了克服同步化的基本物理困难。规格的一格用若干既定的数学工具进行组装和分析。一套简易集的非降解性细胞用于模拟相对痕量,先示式模型用变量的表层空间来模拟这些痕迹的平衡性,信息代数显示程序正确性的新限制。后一面将程序规格的形成在Abramsky 等人提出的环境语义学扩展伞下。在这个方案规格模型中,背景质量表现为与Lamport的顺序一致性定义相类似的一致性标准不相符。信息代数理论还提出用于核实这一标准的有效本地计算算法。本文中的新构思已在证据助理Isabelle/HOL中核实。