🤖 AI Summary
Existing smart contract languages lack a formal semantics suitable for parallel blockchain environments, making rigorous reasoning about concurrent execution challenging. This work proposes the first compositional operational semantics for Crystality, a language designed for parallel EVM execution, by decomposing the system into engine and global components to explicitly capture parallel structure. The semantics enables concise proofs of key properties such as locality, global isolation, and strong commutativity of independent steps. Furthermore, it formally establishes equivalence with the original monolithic semantics through transaction-level and code-level bidirectional simulation theorems, supported by configuration encoding and decoding functions. This foundation facilitates rigorous correctness verification of parallel smart contracts.
📝 Abstract
Parallel execution has become a key approach to improving blockchain scalability, but the lack of formal semantics for smart contract languages in such settings makes rigorous reasoning difficult. Crystality is a smart contract language designed for parallel EVMs, supporting scoped state and asynchronous relay across execution engines. This paper introduces a compositional operational semantics for Crystality. Unlike the original monolithic semantics, the new semantics decomposes the system into engine components and a global component, making the structure of parallel execution explicit. The compositional formulation enables simple proofs of key structural properties, including locality, global isolation, and strong commutativity of independent local steps. Furthermore, we prove that the compositional semantics is semantically equivalent to the original one via a transaction-level bisimulation theorem based on encoding and decoding functions between configurations, and two code-level bisimulation theorems for local and global execution.