arXiv · 2505.09960
Quantitative Types for the Functional Machine Calculus
Abstract
The Functional Machine Calculus (FMC, Heijltjes 2022) extends the lambda-calculus with the computational effects of global mutable store, input/output, and probabilistic choice while maintaining confluent reduction and simply-typed strong normalization. Based in a simple call-by-name stack machine in the style of Krivine, the FMC models effects through additional argument stacks, and introduces sequential composition through a continuation stack to encode call-by-value behaviour, where simple types guarantee termination of the machine. The present paper provides a discipline of quantitative types, also known as non-idempotent intersection types, for the FMC, in two variants. In the weak variant, typeability coincides with termination of the stack machine and with spine normalization, while exactly measuring the transitions in machine evaluation. The strong variant characterizes strong normalization through a notion of perpetual evaluation, while giving an upper bound to the length of reductions. Through the encoding of effects, quantitative typeability coincides with termination for higher-order mutable store, input/output, and probabilistic choice.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Willem Heijltjes. 2025-05-15. Quantitative Types for the Functional Machine Calculus. https://doi.org/10.4230/lipics.fscd.2025.21
Cite the original work for its findings. Save a collection to share your selection of sources.