2 research outputs found
Formalizing Determinacy of Concurrent Revisions
Concurrent revisions is a concurrency control model designed to guarantee
determinacy, meaning that the outcomes of programs are uniquely determined.
This paper describes an Isabelle/HOL formalization of the model's operational
semantics and proof of determinacy. We discuss and resolve subtle ambiguities
in the operational semantics and simplify the proof of determinacy. Although
our findings do not appear to correspond to bugs in implementations, the
formalization highlights some of the challenges involved in the design and
verification of concurrency control models.Comment: To appear in: Proceedings of the 9th ACM SIGPLAN International
Conference on Certified Programs and Proofs (CPP '20), January 20--21, 2020,
New Orleans, LA, USA. ACM, New York, NY, US
A Unifying Theory for Graph Transformation
The field of graph transformation studies the rule-based transformation of graphs. An important branch is the algebraic graph transformation tradition, in which approaches are defined and studied using the language of category theory. Most algebraic graph transformation approaches (such as DPO, SPO, SqPO, and AGREE) are opinionated about the local contexts that are allowed around matches for rules, and about how replacement in context should work exactly. The approaches also differ considerably in their underlying formal theories and their general expressiveness (e.g., not all frameworks allow duplication). This dissertation proposes an expressive algebraic graph transformation approach, called PBPO+, which is an adaptation of PBPO by Corradini et al. The central contribution is a proof that PBPO+ subsumes (under mild restrictions) DPO, SqPO, AGREE, and PBPO in the important categorical setting of quasitoposes. This result allows for a more unified study of graph transformation metatheory, methods, and tools. A concrete example of this is found in the second major contribution of this dissertation: a graph transformation termination method for PBPO+, based on decreasing interpretations, and defined for general categories. By applying the proposed encodings into PBPO+, this method can also be applied for DPO, SqPO, AGREE, and PBPO