Reproduce “Certificate-Carrying Transformation of Event-Driven Block Programs” on OpenResearch

Turn your favorite coding agents into research agents that review literature, develop hypotheses, and run experiments.

Universal app for Apple silicon and Intel. Requires macOS 11 or later.

About this paper

Yuan Si, Jialu Zhang

CertiBlock introduces a system for formally verifying program transformations in event-driven, block-based languages like Scratch, utilizing a trusted checker to validate optimizations proposed by an untrusted engine. This approach provides a checked guarantee of behavior preservation for concurrent, visually rich programs, achieving a 94.3% acceptance rate on real Scratch projects with median verification times of 2ms.

Key insights

  • Formal verification principles can be successfully adapted to end-user, block-based programming languages by employing a strict trusted checker/untrusted optimizer discipline.
  • The concept of "observation lenses" provides a flexible and explicit way to define behavior preservation, allowing transformations to be certified against different user perspectives (e.g., player vs. editor).
  • Cooperative scheduling, characteristic of many event-driven systems, enables powerful yet sound optimizations like dead-store elimination for visual properties, which are provable via the cooperative-frame theorem.

Summary by alphaXiv.

Tip: change arxiv.org to autoarxiv.org in any arXiv abstract link to open the paper here.