KIT | KIT-Bibliothek | Impressum | Datenschutz

Stateful Differential Operators for Incremental Computing

Xu, Runqing ORCID iD icon 1; Erdweg, Sebastian ORCID iD icon 1
1 Institut für Programmstrukturen und Datenorganisation (IPD), Karlsruher Institut für Technologie (KIT)

Abstract (englisch):

Differential operators map input changes to output changes and form the building blocks of efficient incremental computations. For example, differential operators for relational algebra are used to perform live view maintenance in database systems. However, few differential operators are known and it is unclear how to develop and verify new efficient operators. In particular, we found that differential operators often need to use internal state to selectively cache relevant information, which is not supported by prior work. To this end, we designed a specification for \emph{stateful differential operators} that allows custom state, yet places sufficient constraints to ensure correctness. We model our specification in Rocq and show that the specification not only guides the design of novel differential operators, but also can capture some of the most sophisticated existing differential operators: database join and Datalog aggregation. We show how to describe complex incremental computations in OCaml by composing stateful differential operators, which we have extracted from Rocq.


Volltext §
DOI: 10.5445/IR/1000187587
Veröffentlicht am 27.11.2025
Cover der Publikation
Zugehörige Institution(en) am KIT Institut für Programmstrukturen und Datenorganisation (IPD)
Publikationstyp Forschungsbericht/Preprint
Publikationsjahr 2026
Sprache Englisch
Identifikator KITopen-ID: 1000187587
Verlag Association for Computing Machinery (ACM)
Umfang 29 S.
Schlagwörter Incremental computing, formal specification
KIT – Die Universität in der Helmholtz-Gemeinschaft
KITopen Landing Page