English
Related papers

Related papers: From F to DOT: Type Soundness Proofs with Definiti…

200 papers

In this paper we use pre existing language support for type modifiers and object capabilities to enable a system for sound runtime verification of invariants. Our system guarantees that class invariants hold for all objects involved in…

Programming Languages · Computer Science 2019-02-28 Isaac Oscar Gariano , Marco Servetto , Alex Potanin

Weak affine light typing (WALT) assigns light affine linear formulae as types to a subset of lambda-terms of System F. WALT is poly-time sound: if a lambda-term M has type in WALT, M can be evaluated with a polynomial cost in the dimension…

Logic in Computer Science · Computer Science 2008-04-07 Luca Roversi

The recently introduced dependent typed higher-order logic (DHOL) offers an interesting compromise between expressiveness and automation support. It sacrifices the decidability of its type system in order to significantly extend its…

Logic in Computer Science · Computer Science 2025-07-04 Colin Rothgang , Florian Rabe

We present a logic named L_{LF} whose intended use is to formalize properties of specifications developed in the dependently typed lambda calculus LF. The logic is parameterized by the LF signature that constitutes the specification. Atomic…

Logic in Computer Science · Computer Science 2022-04-12 Gopalan Nadathur , Mary Southern

Reference immutability is a type based technique for taming mutation that has long been studied in the context of object-oriented languages, like Java. Recently, though, languages like Scala have blurred the lines between functional…

Programming Languages · Computer Science 2023-11-14 Edward Lee , Ondřej Lhoták

We introduce the Delta-framework, LF-Delta, a dependent type theory based on the Edinburgh Logical Framework LF, extended with the strong proof-functional connectives, i.e. strong intersection, minimal relevant implication and strong union.…

Logic in Computer Science · Computer Science 2018-08-22 Furio Honsell , Luigi Liquori , Claude Stolze , Ivan Scagnetto

The aim of the paper is to provide solid foundations for a programming paradigm natively supporting the creation and manipulation of cyclic data structures. To this end, we describe coFJ, a Java-like calculus where objects can be infinite…

Programming Languages · Computer Science 2020-05-29 Davide Ancona , Pietro Barbieri , Francesco Dagnino , Elena Zucca

Dynamic languages such as Python and JavaScript widely use function decorators to extend behavior. In TypeScript, a common way to type such patterns uses Parameters<T> and ReturnType<T>. In practice, this idiom relies on a function-type…

Programming Languages · Computer Science 2026-03-25 Siyuan He , Songlin Jia , Tiark Rompf

The dependently-typed lambda calculus LF is often used as a vehicle for formalizing rule-based descriptions of object systems. Proving properties of object systems encoded in this fashion requires reasoning about formulas over LF typing…

Logic in Computer Science · Computer Science 2025-10-01 Chase Johnson , Gopalan Nadathur

The recently proposed CP language adopts Compositional Programming: a new modular programming style that solves challenging problems such as the Expression Problem. CP is implemented on top of a polymorphic core language with disjoint…

Programming Languages · Computer Science 2023-11-03 Andong Fan , Xuejing Huang , Han Xu , Yaozhu Sun , Bruno C. d. S. Oliveira

Refinement types are types equipped with predicates that specify preconditions and postconditions of underlying functional languages. We propose a general semantic construction of dependent refinement type systems from underlying type…

Logic in Computer Science · Computer Science 2020-10-19 Satoshi Kura

Operational semantics have been enormously successful, in large part due to its flexibility and simplicity, but they are not compositional. Denotational semantics, on the other hand, are compositional but the lattice-theoretic models are…

Programming Languages · Computer Science 2017-10-24 Jeremy G. Siek

Session types have emerged as a powerful paradigm for structuring communication-based programs. They guarantee type soundness and session fidelity for concurrent programs with sophisticated communication protocols. As type soundness proofs…

Programming Languages · Computer Science 2019-08-09 Peter Thiemann

We consider cyclic proof systems in which derivations are graphs rather than trees. Such systems typically come with a condition that isolates which derivations are admitted as 'proofs', known as a the soundness condition. This soundness…

Logic · Mathematics 2025-07-29 Graham E. Leigh , Dominik Wehr

Reachability Logic is a formalism that can be used, among others, for expressing partial-correctness properties of transition systems. In this paper we present three proof systems for this formalism, all of which are sound and complete and…

Logic in Computer Science · Computer Science 2019-09-05 Vlad Rusu , David Nowak

Type classes are a popular tool for implementing generic algorithms and data structures without loss of efficiency, bridging the gap between parametric and ad-hoc polymorphism. Since their initial development in Haskell, they now feature…

Programming Languages · Computer Science 2025-03-03 Dimi Racordon , Eugene Flesselle , Cao Nguyen Pham

Eight categorical soundness and completeness theorems are established within the framework of algebraic theories. Exactly six of the eight deduction systems exhibit complete semantics within the cartesian monoidal category of sets. The…

Category Theory · Mathematics 2024-06-25 David Forsman

Capitalizing on previous encodings and formal developments about nominal calculi and type systems, we propose a weak Higher-Order Abstract Syntax formalization of the type language of pure System F<: within Coq, a proof assistant based on…

Logic in Computer Science · Computer Science 2013-04-01 Alberto Ciaffaglione , Ivan Scagnetto

Just like any other branch of mathematics, denotational semantics of programming languages should be formalised in type theory, but adapting traditional domain theoretic semantics, as originally formulated in classical set theory to type…

Logic in Computer Science · Computer Science 2018-05-07 Rasmus E. Møgelberg , Marco Paviotti

This thesis introduces the "method of structural refinement", which serves as a means of transforming the relational semantics of a modal and/or constructive logic into an 'economical' proof system by connecting two proof-theoretic…

Logic in Computer Science · Computer Science 2021-08-02 Tim Lyon