Ultrametric Semantics of Reactive Programs

  • Neelakantan Krishnaswami ,
  • Nick Benton

Proceedings of the 26th Annual IEEE Symposium on Logic in Computer Science |

Published by IEEE Computer Society

We describe a denotational model of higher-order functional reactive programming using ultrametric spaces and nonexpansive maps, which provide a natural Cartesian closed generalization of causal stream functions and guarded recursive definitions. We define a type theory corresponding to this semantics and show that it satisfies normalization. Finally, we show how to efficiently implement reactive programs written in this language using an imperatively updated dataflow graph, and give a separation logic proof that this low-level implementation is correct with respect to the high-level semantics.