English
Related papers

Related papers: A Complementary Approach to Incorrectness Typing

200 papers

When using existing ACL2 datatype frameworks, many theorems require type hypotheses. These hypotheses slow down the theorem prover, are tedious to write, and are easy to forget. We describe a principled approach to types that provides…

Logic in Computer Science · Computer Science 2015-09-22 Sol Swords , Jared Davis

Semantic subtyping is an approach to define subtyping relations for type systems featuring union and intersection type connectives. It has been studied only for strict languages, and it is unsound for non-strict semantics. In this work, we…

Programming Languages · Computer Science 2021-11-15 Tommaso Petrucciani , Giuseppe Castagna , Davide Ancona , Elena Zucca

We define a novel, extensional, three-valued semantics for higher-order logic programs with negation. The new semantics is based on interpreting the types of the source language as three-valued Fitting-monotonic functions at all levels of…

Programming Languages · Computer Science 2019-07-25 Angelos Charalambidis , Panos Rondogiannis , Ioanna Symeonidou

The breakthrough of quantum error correction brought with it the picture of quantum information as a sort of combination of two complementary types of classical information, "amplitude" and "phase". Here I show how this intuition can be…

Quantum Physics · Physics 2016-05-09 Joseph M. Renes

Complementable operators extend classical matrix decompositions, such as the Schur complement, to the setting of infinite-dimensional Hilbert spaces, thereby broadening their applicability in various mathematical and physical contexts. This…

Functional Analysis · Mathematics 2025-01-14 Sachin Manjunath Naik , P. Sam Johnson

We show that the question whether a term is typable is decidable for type systems combining inclusion polymorphism with parametric polymorphism provided the type constructors are at most unary. To prove this result we first reduce the…

Logic in Computer Science · Computer Science 2007-05-23 Sabine Glesner , Karl Stroetmann

We present a logically principled foundation for systematizing, in a way that works with any computational effect and evaluation order, SMT constraint generation seen in refinement type systems for functional programming languages. By…

Programming Languages · Computer Science 2023-08-21 Dimitrios J. Economou , Neel Krishnaswami , Jana Dunfield

We define the syntax and reduction relation of a recursively typed lambda calculus with a parallel case-function (a parallel conditional). The reduction is shown to be confluent. We interpret the recursive types as information systems in a…

Logic in Computer Science · Computer Science 2008-06-12 Fritz Müller

Our research is part of a wider project that aims to investigate and reason about the correctness of scheme-based source code transformations of Erlang programs. In order to formally reason about the definition of a programming language and…

Programming Languages · Computer Science 2020-08-19 Péter Bereczky , Dániel Horpácsi , Simon Thompson

Programming benefits from a clear separation between pure, mathematical computation and impure, effectful interaction with the world. Existing approaches to enforce this separation include monads, type-and-effect systems, and capability…

Programming Languages · Computer Science 2025-10-10 Yuyan Bao , Tiark Rompf

The aim of staged compilation is to enable metaprogramming in a way such that we have guarantees about the well-formedness of code output, and we can also mix together object-level and meta-level code in a concise and convenient manner. In…

Programming Languages · Computer Science 2022-09-21 András Kovács

Topological collections allow to consider uniformly many data structures in programming languages and are handled by functions defined by pattern matching called transformations. We present two type systems for languages with topological…

Programming Languages · Computer Science 2009-12-25 Julien Cohen

Bidirectional typechecking, in which terms either synthesize a type or are checked against a known type, has become popular for its scalability (unlike Damas-Milner type inference, bidirectional typing remains decidable even for very…

Programming Languages · Computer Science 2020-08-25 Jana Dunfield , Neelakantan R. Krishnaswami

A key challenge when statically typing so-called dynamic languages is the ubiquity of value-based overloading, where a given function can dynamically reflect upon and behave according to the types of its arguments. Thus, to establish basic…

Programming Languages · Computer Science 2015-05-01 Panagiotis Vekris , Benjamin Cosman , Ranjit Jhala

Polymorphic variants are a useful feature of the OCaml language whose current definition and implementation rely on kinding constraints to simulate a subtyping relation via unification. This yields an awkward formalization and results in a…

Programming Languages · Computer Science 2016-07-06 Giuseppe Castagna , Tommaso Petrucciani , Kim Nguyen

Universal quantifiers occur frequently in proof obligations produced by program verifiers, for instance, to axiomatize uninterpreted functions and to express properties of arrays. SMT-based verifiers typically reason about them via…

Programming Languages · Computer Science 2021-12-15 Alexandra Bugariu , Arshavir Ter-Gabrielyan , Peter Müller

Refinement types sharpen systems of simple and dependent types by offering expressive means to more precisely classify well-typed terms. We present a system of refinement types for LF in the style of recent formulations where only canonical…

Programming Languages · Computer Science 2015-07-01 William Lovas , Frank Pfenning

We describe a new method of finding interpolants for classical logic using certain refutation system as a starting point. Refutation can be thought of as an alternative approach to the analysis of formal systems: instead of focusing on…

Logic in Computer Science · Computer Science 2026-03-18 Adam Trybus , Karolina Rożko , Tomasz Skura

Alternating automata have been widely used to model and verify systems that handle data from finite domains, such as communication protocols or hardware. The main advantage of the alternating model of computation is that complementation is…

Formal Languages and Automata Theory · Computer Science 2017-08-17 Radu Iosif , Xiao Xu

Bidirectional typing is a discipline in which the typing judgment is decomposed explicitly into inference and checking modes, allowing to control the flow of type information in typing rules and to specify algorithmically how they should be…

Logic in Computer Science · Computer Science 2024-04-22 Thiago Felicissimo
‹ Prev 1 3 4 5 6 7 10 Next ›