EDBT 2026 Demo / reviewers in the wild / expert
Johannes Åman Pohjola
dblp:11/10317
· DBLP profile ↗
19ranked-venue papers
8as first author
7since 2021 · last 2025
0000-0002-6406-7875ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Theory of computation · 10 · 5 first-author · 4 since 2021Software engineering, systems software and programming languages · 8 · 4 first-author · 2 since 2021Artificial intelligence and machine learning · 3 · 1 first-author · 1 since 2021Computer networks · 1 · 1 first-author
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | A Rely-Guarantee-Based Simulation for Cooperative Semantics
Kevin Tran, Johannes Åman Pohjola, Rob Sison, Gerwin Klein |
ICTAC | 2 |
| 2025 | A Verified Cost Model for Call-By-Push-ValueabstractThe call-by-push-value λ-calculus allows for syntactically specifying the order of evaluation as part of the term language. Hence, it serves as a unifying language for embedding various evaluation strategies including call-by-value and call-by-name. Given the impact of call-by-push-value, it is remarkable that its adequacy as a model for computational complexity theory has not yet been studied. In this paper, we show that the call-by-push-value λ-calculus is reasonable for both time and space complexity. A reasonable cost model can encode other reasonable cost models with polynomial overhead in time and constant factor overhead in space. We achieve this by encoding call-by-push-value λ-calculus into Turing machines, following a simulation strategy by Forster et al.; for the converse direction, we prove that Levy’s encoding of the call-by-value λ-calculus has reasonable complexity bounds. The main results have been formalised in the HOL4 theorem prover. Zhuo Zoey Chen, Johannes Åman Pohjola, Christine Rizkallah |
ITP | 2 |
| 2025 | Fast, Verified Computation for HOL ITPsabstractAbstract We add an efficient function for computation to the kernels of higher-order logic interactive theorem provers. First, we develop and prove sound our approach for Candle. Candle is a port of HOL Light which has been proved sound with respect to the inference rules of its higher-order logic; we extend its implementation and soundness proof. Second, we replicate our now-verified implementation for HOL4 with only minor changes, and build additional automation for ease of use. The automation exists outside of the HOL4 kernel, and requires no additional trust. We exercise our new computation function and associated automation on the evaluation of the CakeML compiler backend within HOL4’s logic, demonstrating an order of magnitude speedup. This is an extended version of our previous conference paper [2], which described implementation and soundness proofs for Candle. Our HOL4 implementation and automation are new, as are the CakeML benchmarks. Oskar Abrahamsson, Magnus O. Myreen, Michael Norrish, Hrutvik Kanabar, Johannes Åman Pohjola |
J. Autom. Reason. | 5 |
| 2023 | Pancake: Verified Systems Programming Made SweeterabstractWe introduce Pancake, a new language for verifiable, low-level systems programming, especially device drivers. Pancake eschews complex type systems to make the language attractive to systems programmers, while at the same time aiming to ease the formal verification of code. We describe the design of the language and its verified compiler, and examine its usability, performance and current limitations through case studies of device drivers and related systems components for an seL4-based operating system. Johannes Åman Pohjola, Syeda Hira Taqdees, Miki Tanaka, Krishnan Winter, Tsun Wang Sau, Benjamin Nott, Tiana J. Tsang Ung, Craig McLaughlin, Remy Seassau, Magnus O. Myreen, Michael Norrish, Gernot Heiser |
PLOS@SOSP | 1 |
| 2023 | PureCake: A Verified Compiler for a Lazy Functional LanguageabstractWe present PureCake, a mechanically-verified compiler for PureLang, a lazy, purely functional programming language with monadic effects. PureLang syntax is Haskell-like and indentation-sensitive, and its constraint-based Hindley-Milner type system guarantees safe execution. We derive sound equational reasoning principles over its operational semantics, dramatically simplifying some proofs. We prove end-to-end correctness for the compilation of PureLang down to machine code---the first such result for any lazy language---by targeting CakeML and composing with its verified compiler. Multiple optimisation passes are necessary to handle realistic lazy idioms effectively. We develop PureCake entirely within the HOL4 interactive theorem prover. Hrutvik Kanabar, Samuel Vivien, Oskar Abrahamsson, Magnus O. Myreen, Michael Norrish, Johannes Åman Pohjola, Riccardo Zanetti |
Proc. ACM Program. Lang. | 6 |
| 2022 | A Verified Cyclicity Checker: For Theories with Overloaded Constants
Arve Gengelbach, Johannes Åman Pohjola |
ITP | 2 |
| 2022 | Kalas: A Verified, End-To-End Compiler for a Choreographic Language
Johannes Åman Pohjola, Alejandro Gómez-Londoño, James Shaker, Michael Norrish |
ITP | 1 |
| 2020 | A Mechanised Semantics for HOL with Ad-hoc OverloadingabstractIsabelle/HOL augments classical higher-order logic with ad-hoc overloading of constant definitions— that is, one constant may have several definitions for non-overlapping types. In this paper, we present a mechanised proof that HOL with ad-hoc overloading is consistent. All our results have been formalised in the HOL4 theorem prover. Johannes Åman Pohjola, Arve Gengelbach |
LPAR | 1 |
| 2020 | Psi-Calculi Revisited: Connectivity and Compositionality
Johannes Åman Pohjola |
Log. Methods Comput. Sci. | 1 |
| 2020 | Do you have space for dessert? a verified space cost semantics for CakeML programsabstractGarbage collectors relieve the programmer from manual memory management, but lead to compiler-generated machine code that can behave differently (e.g. out-of-memory errors) from the source code. To ensure that the generated code behaves exactly like the source code, programmers need a way to answer questions of the form: what is a sufficient amount of memory for my program to never reach an out-of-memory error? This paper develops a cost semantics that can answer such questions for CakeML programs. The work described in this paper is the first to be able to answer such questions with proofs in the context of a language that depends on garbage collection. We demonstrate that positive answers can be used to transfer liveness results proved for the source code to liveness guarantees about the generated machine code. Without guarantees about space usage, only safety results can be transferred from source to machine code. Our cost semantics is phrased in terms of an abstract intermediate language of the CakeML compiler, but results proved at that level map directly to the space cost of the compiler-generated machine code. All of the work described in this paper has been developed in the HOL4 theorem prover. Alejandro Gómez-Londoño, Johannes Åman Pohjola, Syeda Hira Taqdees, Magnus O. Myreen, Yong Kiam Tan |
Proc. ACM Program. Lang. | 2 |
| 2019 | Psi-Calculi Revisited: Connectivity and Compositionality
Johannes Åman Pohjola |
FORTE | 1 |
| 2019 | Characteristic Formulae for Liveness Properties of Non-Terminating CakeML ProgramsabstractThere are useful programs that do not terminate, and yet standard Hoare logics are not able to prove liveness properties about non-terminating programs. This paper shows how a Hoare-like programming logic framework (characteristic formulae) can be extended to enable reasoning about the I/O behaviour of programs that do not terminate. The approach is inspired by transfinite induction rather than coinduction, and does not require non-terminating loops to be productive. This work has been developed in the HOL4 theorem prover and has been integrated into the ecosystem of proof tools surrounding the CakeML programming language. Johannes Åman Pohjola, Henrik Rostedt, Magnus O. Myreen |
ITP | 1 |
| 2019 | A Verified Generational Garbage Collector for CakeMLabstractThis paper presents the verification of a generational copying garbage collector for the CakeML runtime system. The proof is split into an algorithm proof and an implementation proof. The algorithm proof follows the structure of the informal intuition for the generational collector’s correctness, namely, a partial collection cycle in a generational collector is the same as running a full collection on part of the heap, if one views pointers to old data as non-pointers. We present a pragmatic way of dealing with ML-style mutable state, such as references and arrays, in the proofs. The development has been fully integrated into the in-logic bootstrapped CakeML compiler, which now includes command-line arguments that allow configuration of the generational collector. All proofs were carried out in the HOL4 theorem prover. Adam Sandberg Ericsson, Magnus O. Myreen, Johannes Åman Pohjola |
J. Autom. Reason. | 3 |
| 2017 | A Verified Generational Garbage Collector for CakeML
Adam Sandberg Ericsson, Magnus O. Myreen, Johannes Åman Pohjola |
ITP | 3 |
| 2016 | Bisimulation up-to techniques for psi-calculiabstractPsi-calculi is a parametric framework for process calculi similar to popular pi-calculus extensions such as the explicit fusion calculus, the applied pi-calculus and the spi calculus. Remarkably, machine-checked proofs of standard algebraic and congruence properties of bisimilarity apply to all calculi within the framework. Bisimulation up-to techniques are methods for reducing the size of relations needed in bisimulation proofs. In this paper, we show how these bisimulation proof methods can be adapted to psi-calculi. We formalise all our definitions and theorems in Nominal Isabelle, and show examples where the use of up to-techniques yields drastically simplified proofs of known results. We also prove new structural laws about the replication operator. Johannes Åman Pohjola, Joachim Parrow |
CPP | 1 |
| 2016 | The Expressive Power of Monotonic Parallel Composition
Johannes Åman Pohjola, Joachim Parrow |
ESOP | 1 |
| 2015 | Broadcast psi-calculi with an application to wireless protocols
Johannes Borgström, Shuqin Huang, Magnus Johansson 0001, Palle Raabjerg, Björn Victor, Johannes Åman Pohjola, Joachim Parrow |
Softw. Syst. Model. | 6 |
| 2014 | Higher-order psi-calculiabstractIn earlier work we explored the expressiveness and algebraic theory Psi-calculi, which form a parametric framework for extensions of the pi-calculus. In the current paper we consider higher-order psi-calculi through a technically surprisingly simple extension of the framework, and show how an arbitrary psi-calculus can be lifted to its higher-order counterpart in a canonical way. We illustrate this with examples and establish an algebraic theory of higher-order psi-calculi. The formal results are obtained by extending our proof repositories in Isabelle/Nominal. Joachim Parrow, Johannes Borgström, Palle Raabjerg, Johannes Åman Pohjola |
Math. Struct. Comput. Sci. | 4 |
| 2011 | Broadcast Psi-calculi with an Application to Wireless Protocols
Johannes Borgström, Shuqin Huang, Magnus Johansson 0001, Palle Raabjerg, Björn Victor, Johannes Åman Pohjola, Joachim Parrow |
SEFM | 6 |