Building a Correct-by-Construction Type Checker for a Dependently Typed Core Language

Conference Paper (2025)
Author(s)

B. Liesnikov (TU Delft - Programming Languages)

J.G.H. Cockx (TU Delft - Programming Languages)

Research Group
Programming Languages
DOI related publication
https://doi.org/10.1007/978-981-97-8943-6_4
More Info
expand_more
Publication Year
2025
Language
English
Research Group
Programming Languages
Bibliographical Note
Green Open Access added to TU Delft Institutional Repository 'You share, we take care!' - Taverne project https://www.openaccess.nl/en/you-share-we-take-care Otherwise as indicated in the copyright section: the publisher is the copyright holder of this work and the author uses the Dutch legislation to make this work public.@en
Pages (from-to)
63-83
ISBN (print)
978-981-97-8942-9
ISBN (electronic)
978-981-97-8943-6
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Dependently typed languages allow us to state a program’s expected properties and automatically check that they are satisfied at compile time. Yet the implementations of these languages are themselves just software, so can we really trust them? The goal of this paper is to develop a lightweight technique to improve their trustworthiness by giving a formal specification of the typing rules and intrinsically verifying the type checker with respect to these rules. Concretely, we apply this technique to a subset of Agda’s internal language, implemented in Agda. Our development relies on erasure annotations to separate the specification from the runtime of the type checker. We provide guidelines for making design decisions for certified core type checkers and evaluate trade-offs.

Files

978-981-97-8943-6_4.pdf
(pdf | 2.39 Mb)
- Embargo expired in 28-04-2025
License info not available