A Complementary Approach to Incorrectness Typing

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Li, Celia Mengyue, Pull, Sophie, Ramsay, Steven
Natura: Preprint
Pubblicazione: 2025
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866914544241082368
author Li, Celia Mengyue
Pull, Sophie
Ramsay, Steven
author_facet Li, Celia Mengyue
Pull, Sophie
Ramsay, Steven
contents We introduce a new two-sided type system for verifying the correctness and incorrectness of functional programs with atoms and pattern matching. A key idea in the work is that types should range over sets of normal forms, rather than sets of values, and this allows us to define a complement operator on types that acts as a negation on typing formulas. We show that the complement allows us to derive a wide range of refutation principles within the system, including the type-theoretic analogue of co-implication, and we use them to certify that a number of Erlang-like programs go wrong. An expressive axiomatisation of the complement operator via subtyping is shown decidable, and the type system as a whole is shown to be not only sound, but also complete for normal forms.
format Preprint
id arxiv_https___arxiv_org_abs_2510_13725
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle A Complementary Approach to Incorrectness Typing
Li, Celia Mengyue
Pull, Sophie
Ramsay, Steven
Programming Languages
We introduce a new two-sided type system for verifying the correctness and incorrectness of functional programs with atoms and pattern matching. A key idea in the work is that types should range over sets of normal forms, rather than sets of values, and this allows us to define a complement operator on types that acts as a negation on typing formulas. We show that the complement allows us to derive a wide range of refutation principles within the system, including the type-theoretic analogue of co-implication, and we use them to certify that a number of Erlang-like programs go wrong. An expressive axiomatisation of the complement operator via subtyping is shown decidable, and the type system as a whole is shown to be not only sound, but also complete for normal forms.
title A Complementary Approach to Incorrectness Typing
topic Programming Languages
url https://arxiv.org/abs/2510.13725