A meta-theory for big-step semantics
Francesco Dagnino

TL;DR
This paper develops a meta-theory for big-step semantics, enabling it to distinguish between stuck and diverging computations, thus facilitating reasoning about infinite computations and properties like type soundness.
Contribution
It introduces an abstract framework and proof technique to extend big-step semantics to characterize both stuck and diverging computations, overcoming longstanding limitations.
Findings
Extended semantics can distinguish stuck and diverging computations.
The proof technique applies even when subject reduction fails.
The approach simplifies reasoning about infinite computations.
Abstract
It is well-known that big-step semantics is not able to distinguish stuck and non-terminating computations. This is a strong limitation as it makes very difficult to reason about properties involving infinite computations, such as type soundness, which cannot even be expressed. We show that this issue is only apparent: the distinction between stuck and diverging computations is implicit in any big-step semantics and it just needs to be uncovered. To achieve this goal, we develop a systematic study of big-step semantics: we introduce an abstract definition of what a big-step semantics is, we define a notion of computation by formalising the evaluation algorithm implicitly associated with any big-step semantics, and we show how to canonically extend a big-step semantics to characterise stuck and diverging computations. Building on these notions, we describe a general proof technique to…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, Reasoning, and Knowledge · Advanced Algebra and Logic · Logic, programming, and type systems
