English
Related papers

Related papers: Dependent Pearl: Normalization by realizability

200 papers

We introduce a simple extension of the $\lambda$-calculus with pairs---called the distributive $\lambda$-calculus---obtained by adding a computational interpretation of the valid distributivity isomorphism $A \Rightarrow (B\wedge C)\ \…

Logic in Computer Science · Computer Science 2020-10-23 Beniamino Accattoli , Alejandro Díaz-Caro

We present an approach to program reasoning which inserts between a program and its verification conditions an additional layer, the denotation of the program expressed in a declarative form. The program is first translated into its…

Logic in Computer Science · Computer Science 2012-02-23 Wolfgang Schreiner

To support the understanding of declarative probabilistic programming languages, we introduce a lambda-calculus with a fair binary probabilistic choice that chooses between its arguments with equal probability. The reduction strategy of the…

Logic in Computer Science · Computer Science 2022-05-31 David Sabel , Manfred Schmidt-Schauß , Luca Maio

We give an arithmetical proof of the strong normalization of the $\lambda$-calculus (and also of the $\lambda\mu$-calculus) where the type system is the one of simple types with recursive equations on types. The proof using candidates of…

Logic · Mathematics 2009-05-08 René David , Karim Nour

We present a type theory combining both linearity and dependency by stratifying typing rules into a level for logics and a level for programs. The distinction between logics and programs decouples their semantics, allowing the type system…

Programming Languages · Computer Science 2025-10-08 Qiancheng Fu , Hongwei Xi

Formal mathematics and computer science proofs are formalized using Hilbert-Russell-style logical systems which are designed to not admit paradoxes and self-refencing reasoning. These logical systems are natural way to describe and reason…

Programming Languages · Computer Science 2024-09-10 Ronie Salgado

Logical relations built on top of an operational semantics are one of the most successful proof methods in programming language semantics. In recent years, more and more expressive notions of operationally-based logical relations have been…

Logic in Computer Science · Computer Science 2024-08-07 Francesco Dagnino , Francesco Gavazzo

We investigate the possibility of a semantic account of the execution time (i.e. the number of beta-steps leading to the normal form, if any) for the shuffling calculus, an extension of Plotkin's call-by-value lambda-calculus. For this…

Logic in Computer Science · Computer Science 2019-04-25 Giulio Guerrieri

Relational descriptions have been used in formalizing diverse computational notions, including, for example, operational semantics, typing, and acceptance by non-deterministic machines. We therefore propose a (restricted) logical theory…

Logic in Computer Science · Computer Science 2010-09-02 Andrew Gacek , Dale Miller , Gopalan Nadathur

Based on an analysis of the inference rules used, we provide a characterization of the situations in which classical provability entails intuitionistic provability. We then examine the relationship of these derivability notions to uniform…

Logic in Computer Science · Computer Science 2016-08-31 Gopalan Nadathur

In this dissertation we provide mathematical evidence that the concept of learning can be used to give a new and intuitive computational semantics of classical proofs in various fragments of Predicative Arithmetic. First, we extend Kreisel…

Logic · Mathematics 2015-03-17 Federico Aschieri

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

The sequent calculus is a proof system which was designed as a more symmetric alternative to natural deduction. The {\lambda}{\mu}{\mu}-calculus is a term assignment system for the sequent calculus and a great foundation for compiler…

Programming Languages · Computer Science 2025-04-29 David Binder , Marco Tzschentke , Marius Müller , Klaus Ostermann

We investigate the possibility of a semantic account of the execution time (i.e. the number of \beta_v-steps leading to the normal form, if any) for the shuffling calculus, an extension of Plotkin's call-by-value {\lambda}-calculus. For…

Logic in Computer Science · Computer Science 2018-12-31 Giulio Guerrieri

We present a sequent calculus for abstract focussing, equipped with proof-terms: in the tradition of Zeilberger's work, logical connectives and their introduction rules are left as a parameter of the system, which collapses the synchronous…

Logic in Computer Science · Computer Science 2015-11-16 Stéphane Graham-Lengrand

Auditing is an increasingly important operation for computer programming, for example in security (e.g. to enable history-based access control) and to enable reproducibility and accountability (e.g. provenance in scientific programming).…

Logic in Computer Science · Computer Science 2017-09-12 Wilmer Ricciotti , James Cheney

Formal deductive systems are very common in computer science. They are used to represent logics, programming languages, and security systems. Moreover, writing programs that manipulate them and that reason about them is important and…

Programming Languages · Computer Science 2018-05-21 Francisco Ferreira Ruiz

The development of logic has largely been through the 'deductive' paradigm: conclusions are inferred from established premisses. However, the use of logic in the context of both human and machine reasoning is typically through the dual…

Logic in Computer Science · Computer Science 2025-04-29 Alexander V. Gheorghiu , David J. Pym

A non-deterministic call-by-need lambda-calculus \calc with case, constructors, letrec and a (non-deterministic) erratic choice, based on rewriting rules is investigated. A standard reduction is defined as a variant of left-most outermost…

Programming Languages · Computer Science 2007-05-23 Manfred Schmidt-Schauß , Michael Huber

Users of program analyses expect that results change predictably in response to changes in their programs, but many analyses fail to provide such robustness. This paper introduces a theoretical framework that provides a unified language to…

Programming Languages · Computer Science 2026-04-14 Zachary Kincaid , Shaowei Zhu