The aim of the ATLaS project is to work on various important aspects of Higher-order Abstract GSOS. The project is funded by the Deutsche Forschungsgemeinschaft, the German Research Foundation, and will run from 01.2024 to 12.2026.
People
Main participants
- Stelios Tsampas (co-PI)
- Sergey Goncharov (co-PI)
- Henning Urbat
- Pouya Partow (PhD student)
- Lutz Schröder
- Stefan Milius
External collaborators
- Alessio Santamaria, University of Sussex
- Lars Birkedal, Aarhus University
- Amin Timany, Aarhus University
Programme
- Develop logical predicates in HO-GSOS ☑
- Develop logical relations in HO-GSOS ☑
- Apply our theory to develop new methods in call-by(-push)-value ☑
- Big-step semantics for HO-GSOS ☐
- Semantics for imperative languages ☐ (nearing completion)
- Abstract approaches to parametricity ☐
Publications
- Bialgebraic Reasoning on Stateful Languages, ICFP’25 [1]
- Big Steps in Higher-Order Mathematical Operational Semantics, ICFP’25 [2]
- Abstract Operational Methods for Call-by-Push-Value, POPL’25 [3]
- Bialgebraic Reasoning on Higher-Order Program Equivalence, LICS’24 [4]
- Logical Predicates in Higher-Order Mathematical Operational Semantics, FoSSaCS’24 [5]
Talks
- Henning Urbat: Abstract operational methods for call-by-push-value
POPL’25, Denver, United States, January 2025. - Sergey Goncharov: Introduction to Higher-Order Mathematical Operational Semantics
Birmingham Theory Seminar, November 2024. Abstract - Slides. - Stelios Tsampas: Higher-order Mathematical Operational Semantics
Aarhus University visit, September 2024. Slides. - Henning Urbat: Bialgebraic reasoning on higher-order program equivalence
LICS’24, Tallinn, Estonia, July 2024. Slides. - Henning Urbat: Operational techniques for higher-order coalgebras
Dutch Categories and Types Seminar, Leiden, Netherlands, June 2024. Slides. - Sergey Goncharov: Higher-Order Program Equivalence in the Abstract
Research Seminar at Uni Regensburg, May 2024. Abstract - Slides. - Stelios Tsampas: Logical Relations (and more) in Higher-order Mathematical Operational Semantics
Chocola Meeting, Lyon, May 2024. (Invited talk). Slides. - Stelios Tsampas: Logical Predicates in Higher-order Mathematical Operational Semantics
FoSSaCS’24, Luxembourg City, Luxembourg, April 2024. Slides. - Stelios Tsampas: Logical Predicates in Higher-order Mathematical Operational Semantics
WG6 Leuven, April 2024. Abstract - Slides - Video.
References
2025
-
Bialgebraic Reasoning on Stateful Languages
Sergey Goncharov, Stefan Milius, Lutz Schröder, Stelios Tsampas, and Henning Urbat
Proc. ACM Program. Lang., 2025
Reasoning about program equivalence in imperative languages is notoriously challenging, as the presence of states (in the form of variable stores) fundamentally increases the observational power of program terms. The key desideratum for any notion of equivalence is compositionality, guaranteeing that subprograms can be safely replaced by equivalent subprograms regardless of the context. To facilitate compositionality proofs and avoid boilerplate work, one would hope to employ the abstract bialgebraic methods provided by Turi and Plotkin’s powerful theory of mathematical operational semantics (a.k.a. abstract GSOS) or its recent extension by Goncharov et al. to higher-order languages. However, multiple attempts to apply abstract GSOS to stateful languages have thus failed. We propose a novel approach to the operational semantics of stateful languages based on the formal distinction between readers (terms that expect an initial input store before being executed), and writers (running terms that have already been provided with a store). In contrast to earlier work, this style of semantics is fully compatible with abstract GSOS, and we can thus leverage the existing theory to obtain coinductive reasoning techniques. We demonstrate that our approach generates non-trivial compositionality results for stateful languages with first-order and higher-order store and that it flexibly applies to program equivalences at different levels of granularity, such as trace, cost, and natural equivalence.
-
Big Steps in Higher-Order Mathematical Operational Semantics
Sergey Goncharov, Pouya Partow, and Stelios Tsampas
Proc. ACM Program. Lang., 2025
Small-step and big-step operational semantics are two fundamental styles of structural operational semantics (SOS), extensively used in practice. The former one is more fine-grained and is usually regarded as primitive, as it only defines a one-step reduction relation between a given program and its direct descendant under an ambient evaluation strategy. The latter one implements, in a self-contained manner, such a strategy directly by relating a program to the net result of the evaluation process. The agreement between these two styles of semantics is one of the key pillars in operational reasoning on programs; however, such agreement is typically proven from scratch every time on a case-by-case basis. A general, abstract mathematical argument behind this agreement is up till now missing. We cope with this issue within the framework of higher-order mathematical operational semantics by providing an abstract categorical notion of big-step SOS, complementing the existing notion of abstract higher-order GSOS. Moreover, we introduce a general construction for deriving the former from the latter, and prove an abstract equivalence result between the two.
-
Abstract Operational Methods for Call-by-Push-Value
Sergey Goncharov, Stelios Tsampas, and Henning Urbat
Proc. ACM Program. Lang., Jan 2025
Levy’s call-by-push-value is a comprehensive programming paradigm that combines elements from functional and imperative programming, supports computational effects and subsumes both call-by-value and call-by-name evaluation strategies. In the present work, we develop modular methods to reason about program equivalence in call-by-push-value, and in fine-grain call-by-value, which is a popular lightweight call-by-value sublanguage of the former. Our approach is based on the fundamental observation that presheaf categories of sorted sets are suitable universes to model call-by-(push)-value languages, and that natural, coalgebraic notions of program equivalence such as applicative similarity and logical relations can be developed within. Starting from this observation, we formalize fine-grain call-by-value and call-by-push-value in the higher-order abstract GSOS framework, reduce their key congruence properties to simple syntactic conditions by leveraging existing theory and argue that introducing changes to either language incurs minimal proof overhead.
2024
-
Bialgebraic Reasoning on Higher-Order Program Equivalence
Sergey Goncharov, Stefan Milius, Stelios Tsampas, and Henning Urbat
In 39th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS 2024), Jan 2024
-
Logical Predicates in Higher-Order Mathematical Operational Semantics
Sergey Goncharov, Alessio Santamaria, Lutz Schröder, Stelios Tsampas, and Henning Urbat
In 27th International Conference on Foundations of Software Science and Computation Structures (FoSSaCS 2024), Jan 2024