Incremental computing offers the potential for significant performance gains by efficiently updating computations in response to changing data. However, traditional approaches are either problem-specific or use an inefficient all-or-nothing strategy of rerunning affected computations entirely. This paper presents differential semantics, a novel approach that directly embeds the propagation of changes into the semantics of a general-purpose programming language. Given a precise description of input changes, differential semantics rules define how these changes are tracked and propagated through core language constructs like assignments, conditionals, and loops to produce corresponding output changes. We formalize differential semantics and verify key properties, including correctness, using the Coq proof assistant. We also develop and formally prove a set of optimizations, particularly for loop handling, that enable asymptotic performance improvements. An implementation of the semantics as a differential interpreter achieves order-of-magnitude speedups over recomputation on the Bellman-Ford shortest path algorithm.
Mon 30 JunDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
14:00 - 15:45 | Concurrency and TypesTechnical Papers at Auditorium M003 Chair(s): João Costa Seco NOVA-LINCS; Nova University of Lisbon | ||
14:00 21mTalk | Contrasting Deadlock-Free Session Processes Technical Papers DOI | ||
14:21 21mTalk | Fair Termination of Asynchronous Binary Sessions Technical Papers Luca Padovani Department of Computer Science and Engineering - Università di Bologna, Gianluigi Zavattaro Department of Computer Science and Engineering - Università di Bologna | ||
14:42 21mTalk | Incremental Computing by Differential Execution Technical Papers | ||
15:03 21mTalk | Multiparty Asynchronous Session Types: A Mechanised Proof of Subject Reduction Technical Papers Dawit Tirore IT University of Copenhagen, Denmark, Jesper Bengtson IT University of Copenhagen, Marco Carbone IT University of Copenhagen | ||
15:24 21mTalk | Validating Persistency Semantics with Memory Hierarchy Timing Attack Technical Papers Vasileios Klimis Queen Mary University of London |