Florian Rabe 0001

dblp:81/4104-1 · DBLP profile ↗
← Back
42ranked-venue papers
16as first author
12since 2021 · last 2026
0000-0003-3040-3655ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 38 · 16 first-author · 10 since 2021Artificial intelligence and machine learning · 28 · 9 first-author · 10 since 2021Software engineering, systems software and programming languages · 26 · 9 first-author · 9 since 2021Databases, data management, data science and information retrieval · 1
YearPublicationVenuePosition
2026 Polymorphism Meets DHOL
abstract
DHOL is an extensional, classical logic that equips the well-known higher-order logic (HOL) with dependent types. This allows for concise encodings of important domains like size-bounded data structures, category theory, or proof theory. Automation support is obtained by translating DHOL to HOL, for which powerful modern automated theorem provers are available. However, a critically missing feature of DHOL is polymorphism. We develop the syntax and semantics of polymorphic DHOL and extend the translation accordingly. We implement the translation in the logic-embedding tool and evaluate it on a range of TPTP formalizations. The logic-embedding tool, together with an off-the-shelf HOL theorem prover easily creates a PDHOL theorem prover for experimenting.
Rhea Ranalter, Florian Rabe 0001, Cezary Kaliszyk
FSCD2
2026 Semantics for Dependently-Typed HOL
abstract
Abstract Both higher-order logic and dependent types are popular features for languages used for the formalization of complex domains. Recently DHOL was introduced as a language that provides the expressivity of dependent types while retaining the general feel of higher-order logic. Since then multiple extensions and theorem provers have been developed, and DHOL was adopted as the first TPTP standard for using dependent types in automated theorem provers. However, the literature lacks a model theoretical semantics for DHOL. The present paper fills in this gap, covering dependent types, rank-1 polymorphism, and functions with preconditions. It introduces both standard models and an appropriate generalization of Henkin-style models and proves soundness and completeness. Considerable care went into keeping the formulation as close to the usual definitions for HOL and elegant enough to serve as a reference point for language extensions and theorem provers for DHOL.
Florian Rabe 0001
IJCAR (2)1
2025 Formally Verified Cloud-Scale Authorization
abstract
All critical systems must evolve to meet the needs of a growing and diversifying user base. But supporting that evolution is challenging at increasing scale: Maintainers must find a way to ensure that each change does only what is intended, and will not inadvertently change behavior for existing users. This paper presents how we addressed this challenge for the Amazon Web Services (AWS) authorization engine, invoked 1 billion times per second, by using formal verification. Over a period of four years, we built a new authorization engine, one that behaves functionally the same as its predecessor, using the verification-aware programming language Dafny. We can now confidently deploy enhancements and optimizations while maintaining the highest assurance of both correctness and backward compatibility. We deployed the new engine in 2024 without incident and customers immediately enjoyed a threefold performance improvement. The methodology we followed to build this new engine was not an off-the-shelf application of an existing verification tool, and this paper presents several key insights: 1) Rather than prove correct the existing engine, written in Java, we found it more effective to write a new engine in Dafny, a language built for verification from the ground up, and then compile the result to Java. 2) To ensure performance, debuggability, and to gain trust from stakeholders, we needed to generate readable, idiomatic Java code, essentially a transliteration of the source Dafny. 3) To ensure that the specification matches the system's actual behavior, we performed extensive differential and shadow testing throughout the development process, ultimately comparing against 1015production samples prior to deployment. Our approach demonstrates how formal verification can be effectively applied to evolve critical legacy software at scale.
Aleks Chakarov, Jaco Geldenhuys, Matthew Heck, Michael Hicks 0001, Sam Huang, Georges-Axel Jaloyan, Anjali Joshi, K. Rustan M. Leino, Mikael Mayer, Sean McLaughlin, Akhilesh Mritunjai, Clément Pit-Claudel, Sorawee Porncharoenwase, Florian Rabe 0001, Marianna Rapoport, Giles Reger, Cody Roux, Neha Rungta, Robin Salkeld, Matthias Schlaipfer, Daniel Schoepe, Johanna Schwartzentruber, Serdar Tasiran, Aaron Tomb, Emina Torlak, Jean-Baptiste Tristan, Lucas G. Wagner, Michael W. Whalen, Remy Willems, Tongtong Xiang, Taejoon Byun, Joshua M. Cohen, Ruijie Fang, Junyoung Jang 0001, Jakob Rath, Syeda Hira Taqdees, Dominik Wagner 0001, Yongwei Yuan
ICSE14
2025 Lightweight Realms
Michael Kohlhase, Florian Rabe 0001, Marcel Schütz
CICM2
2025 Global, Regional, and Local Contexts
Florian Rabe 0001
CICM1
2024 A Logical Framework Perspective on Conservativity
Florian Rabe 0001
CICM1
2023 Theorem Proving in Dependently-Typed Higher-Order Logic
abstract
Abstract Higher-order logic HOL offers a very simple syntax and semantics for representing and reasoning about typed data structures. But its type system lacks advanced features where types may depend on terms. Dependent type theory offers such a rich type system, but has rather substantial conceptual differences to HOL, as well as comparatively poor proof automation support. We introduce a dependently-typed extension DHOL of HOL that retains the style and conceptual framework of HOL. Moreover, we build a translation from DHOL to HOL and implement it as a preprocessor to a HOL theorem prover, thereby obtaining a theorem prover for DHOL.
Colin Rothgang, Florian Rabe 0001, Christoph Benzmüller
CADE2
2023 Morphism Equality in Theory Graphs
Florian Rabe 0001, Franziska Weber
CICM1
2023 Extracting Theory Graphs from Aldor Libraries
Florian Rabe 0001, Stephen M. Watt
CICM1
2021 A Language with Type-Dependent Equality
Florian Rabe 0001
CICM1
2021 A New Export of the Mizar Mathematical Library
Colin Rothgang, Artur Kornilowicz, Florian Rabe 0001
CICM3
2021 Experiences from Exporting Major Proof Assistant Libraries
abstract
Abstract The interoperability of proof assistants and the integration of their libraries is a highly valued but elusive goal in the field of theorem proving. As a preparatory step, in previous work, we translated the libraries of multiple proof assistants, specifically the ones of Coq, HOL Light, IMPS, Isabelle, Mizar, and PVS into a universal format: OMDoc/MMT. Each translation presented great theoretical, technical, and social challenges, some universal and some system-specific, some solvable and some still open. In this paper, we survey these challenges and compare and evaluate the solutions we chose. We believe similar library translations will be an essential part of any future system interoperability solution, and our experiences will prove valuable to others undertaking such efforts.
Michael Kohlhase, Florian Rabe 0001
J. Autom. Reason.2
2020 Representing Structural Language Features in Formal Meta-languages
Dennis Müller 0001, Florian Rabe 0001, Colin Rothgang, Michael Kohlhase
CICM2
2020 Towards a Heterogeneous Query Language for Mathematical Knowledge
Katja Bercic, Michael Kohlhase, Florian Rabe 0001
CICM3
2020 A Survey of Languages for Formalizing Mathematics
Cezary Kaliszyk, Florian Rabe 0001
CICM2
2020 TGView3D: A System for 3-Dimensional Visualization of Theory Graphs
Richard Marcus, Michael Kohlhase, Florian Rabe 0001
CICM3
2019 The Coq Library as a Theory Graph
Dennis Müller 0001, Florian Rabe 0001, Claudio Sacerdoti Coen
CICM2
2019 Integrating Semantic Mathematical Documents and Dynamic Notebooks
Kai Amann, Michael Kohlhase, Florian Rabe 0001, Tom Wiesing
CICM3
2019 Towards a Unified Mathematical Data Infrastructure: Database and Interface Generation
Katja Bercic, Michael Kohlhase, Florian Rabe 0001
CICM3
2019 Relational Data Across Mathematical Libraries
Andrea Condoluci, Michael Kohlhase, Dennis Müller 0001, Florian Rabe 0001, Claudio Sacerdoti Coen, Markus Wenzel 0001
CICM4
2019 MMTTeX: Connecting Content and Narration-Oriented Document Formats
Florian Rabe 0001
CICM1
2019 Diagram Combinators in MMT
Florian Rabe 0001, Yasmine Sharoda
CICM1
2019 How to Calculate with Nondeterministic Functions
Richard S. Bird, Florian Rabe 0001
MPC2
2018 Automatically Finding Theory Morphisms for Knowledge Management
Dennis Müller 0001, Michael Kohlhase, Florian Rabe 0001
CICM3
2018 A Modular Type Reconstruction Algorithm
abstract
M mt is a framework for designing and implementing formal systems in a way that systematically abstracts from theoretical and practical aspects of their type of theoretical and logical foundations. Thus, definitions, theorems, and algorithms can be stated independently of the foundation, and language designers can focus on the essentials of a particular foundation and inherit a large-scale implementation from M mt at low cost. Going beyond the similarly motivated approach of meta-logical frameworks, M mt does not even commit to a particular meta-logic—that makes M mt level results harder to obtain but also more general. We present one such result: a type reconstruction algorithm that realizes the foundation-independent aspects generically relative to a set of rules that supply the foundation-specific knowledge. Maybe surprisingly, we see that the former covers most of the algorithm, including the most difficult details. Thus, we can easily instantiate our algorithm with rule sets for several important language features including, e.g., dependent function types. Moreover, our design is modular such that we obtain a type reconstruction algorithm for any combination of these features.
Florian Rabe 0001
ACM Trans. Comput. Log.1
2017 Making PVS Accessible to Generic Services by Interpretation in a Universal Format
Michael Kohlhase, Dennis Müller 0001, Sam Owre, Florian Rabe 0001
ITP4
2017 Classification of Alignments Between Concepts of Formal Mathematical Systems
Dennis Müller 0001, Thibault Gauthier, Cezary Kaliszyk, Michael Kohlhase, Florian Rabe 0001
CICM5
2017 How to identify, translate and combine logics?
abstract
We give general definitions of logical frameworks and logics. Examples include the logical frameworks LF and Isabelle and the logics represented in them. We apply this to give general definitions for equivalence of logics, translation between logics and combination of logics. We also establish general criteria for the soundness and completeness of these. Our key messages are that the syntax and proof systems of logics are theories; that both semantics and translations are theory morphisms; and that combinations are colimits. Our approach is based on the Mmt language, which lets us combine formalist declarative representations (and thus the associated tool support) with abstract categorical conceptualizations.
Florian Rabe 0001
J. Log. Comput.1
2017 Morphism axioms
Florian Rabe 0001
Theor. Comput. Sci.1
2016 Interoperability in the OpenDreamKit Project: The Math-in-the-Middle Approach
Paul-Olivier Dehaye, Mihnea Iancu, Michael Kohlhase, Olexandr Konovalov, Samuel Lelièvre, Dennis Müller 0001, Markus Pfeiffer, Florian Rabe 0001, Nicolas M. Thiéry, Tom Wiesing
CICM8
2015 Formal Logic Definitions for Interchange Languages
Feryal Fulya Horozal, Florian Rabe 0001
CICM2
2015 Generic Literals
Florian Rabe 0001
CICM1
2015 Lax Theory Morphisms
abstract
When relating formal languages, e.g., in logic or type theory, it is often important to establish representation theorems. These interpret one language in terms of another in a way that preserves semantic properties such as provability or typing. Metalanguages for stating representation theorems can be divided into two groups: First, computational languages are very expressive (usually Turing-complete), but verifying the representation theorems is very difficult (often prohibitively so); second, declarative languages are restricted to certain classes of representation theorems (often based on theory morphisms), for which correctness is decidable. Neither is satisfactory, and this article contributes to the investigation of the trade-off between these two methods. Concretely, we introduce lax theory morphisms, which combine some of the advantages of each: they are substantially more expressive than conventional theory morphisms, but they share many of the invariants that make theory morphisms easy to work with. Specifically, we introduce lax morphisms between theories of a dependently typed logical framework, but our approach and results carry over to most declarative metalanguages. We demonstrate the usefulness of lax theory morphisms by stating and verifying a type erasure translation from typed to untyped first-order logic. The translation is stated as a single lax theory morphism, and the invariants of the framework guarantee its correctness. This is the first time such a complex translation has be verified in a declarative framework.
Florian Rabe 0001
ACM Trans. Comput. Log.1
2014 Flexary Operators for Formalized Mathematics
Feryal Fulya Horozal, Florian Rabe 0001, Michael Kohlhase
CICM2
2014 Towards Knowledge Management for HOL Light
Cezary Kaliszyk, Florian Rabe 0001
CICM2
2013 A scalable module system
Florian Rabe 0001, Michael Kohlhase
Inf. Comput.1
2013 The Mizar Mathematical Library in OMDoc: Translation and Applications
Mihnea Iancu, Michael Kohlhase, Florian Rabe 0001, Josef Urban
J. Autom. Reason.3
2013 A logical framework combining model and proof theory
abstract
Mathematical logic and computer science have driven the design of a growing number of logics and related formalisms such as set theories and type theories. In response to this population explosion, logical frameworks have been developed as formal meta-languages in which to represent, structure, relate and reason about logics. Research on logical frameworks has diverged into separate communities, often with conflicting backgrounds and philosophies. In particular, two of the most important logical frameworks are the framework of institutions, from the area of model theory based on category theory, and the Edinburgh Logical Framework LF, from the area of proof theory based on dependent type theory. Even though their ultimate motivations overlap – for example in applications to software verification – they have fundamentally different perspectives on logic. In the current paper, we design a logical framework that integrates the frameworks of institutions and LF in a way that combines their complementary advantages while retaining the elegance of each of them. In particular, our framework takes a balanced approach between model theory and proof theory, and permits the representation of logics in a way that comprises all major ingredients of a logic: syntax, models, satisfaction, judgments and proofs. This provides a theoretical basis for the systematic study of logics in a comprehensive logical framework. Our framework has been applied to obtain a large library of structured and machine-verified encodings of logics and logic translations.
Florian Rabe 0001
Math. Struct. Comput. Sci.1
2013 Logical relations for a logical framework
abstract
Logical relations are a central concept used to study various higher-order type theories and occur frequently in the proofs of a wide variety of meta-theorems. Besides extending the logical relation principle to more general languages, an important research question has been how to represent and thus verify logical relation arguments in logical frameworks. We formulate a theory of logical relations for Dependent Type Theory (DTT) with β η-equality which guarantees that any valid logical relation satisfies the Basic Lemma. Our definition is syntactic and reflective in the sense that a relation at a type is represented as a DTT type family but also permits expressing certain semantic definitions. We use the Edinburgh Logical Framework (LF) incarnation of DTT and implement our notion of logical relations in the type-checker Twelf. This enables us to formalize and mechanically decide the validity of logical relation arguments. Furthermore, our implementation includes a module system so that logical relations can be built modularly. We validate our approach by formalizing and verifying several syntactic and semantic meta-theorems in Twelf. Moreover, we show how object languages encoded in DTT can inherit a notion of logical relation from the logical framework.
Florian Rabe 0001, Kristina Sojakova
ACM Trans. Comput. Log.1
2011 Formalising foundations of mathematics
abstract
Over recent decades there has been a trend towards formalised mathematics, and a number of sophisticated systems have been developed both to support the formalisation process and to verify the results mechanically. However, each tool is based on a specific foundation of mathematics, and formalisations in different systems are not necessarily compatible. Therefore, the integration of these foundations has received growing interest. We contribute to this goal by using LF as a foundational framework in which the mathematical foundations themselves can be formalised and therefore also the relations between them. We represent three of the most important foundations – Isabelle/HOL, Mizar and ZFC set theory – as well as relations between them. The relations are formalised in such a way that the framework permits the extraction of translation functions, which are guaranteed to be well defined and sound. Our work provides the starting point for a systematic study of formalised foundations in order to compare, relate and integrate them.
Mihnea Iancu, Florian Rabe 0001
Math. Struct. Comput. Sci.2
2011 Representing model theory in a type-theoretical logical framework
Feryal Fulya Horozal, Florian Rabe 0001
Theor. Comput. Sci.2
2010 Publishing Math Lecture Notes as Linked Data
Catalin David, Michael Kohlhase, Christoph Lange 0002, Florian Rabe 0001, Nikita Zhiltsov, Vyacheslav Zholudev
ESWC (2)4