English
Related papers

Related papers: Logical Relations for Monadic Types

200 papers

Software security can be ensured by specifying and verifying security properties of software using formal methods with strong theoretical bases. In particular, programs can be modeled in the framework of lambda-calculi, and interesting…

Logic in Computer Science · Computer Science 2009-04-08 Slawomir Lasota , David Nowak , Yu Zhang

A $\lambda$-calculus is introduced in which all programs can be evaluated in probabilistic polynomial time and in which there is sufficient structure to represent sequential cryptographic constructions and adversaries for them, even when…

Programming Languages · Computer Science 2024-10-24 Ugo Dal Lago , Zeinab Galal , Giulia Giusti

We extend intersection types to a computational $\lambda$-calculus with algebraic operations \`a la Plotkin and Power. We achieve this by considering monadic intersections, whereby computational effects appear not only in the operational…

Programming Languages · Computer Science 2024-01-24 Francesco Gavazzo , Riccardo Treglia , Gabriele Vanoni

Logical relations constitute a key method for reasoning about contextual equivalence of programs in higher-order languages. They are usually developed on a per-case basis, with a new theory required for each variation of the language or of…

Logic in Computer Science · Computer Science 2024-05-17 Sergey Goncharov , Stefan Milius , Stelios Tsampas , Henning Urbat

We introduce a new form of logical relation which, in the spirit of metric relations, allows us to assign each pair of programs a quantity measuring their distance, rather than a boolean value standing for their being equivalent. The…

Logic in Computer Science · Computer Science 2019-04-30 Ugo Dal Lago , Francesco Gavazzo , Akira Yoshimizu

Mechanical proofs by logical relations often involve tedious reasoning about substitution. In this paper, we show that this is not necessarily the case, by developing, in Agda, a proof that all simply typed lambda calculus expressions…

Programming Languages · Computer Science 2023-09-28 Emmanuel Suárez Acevedo , Stephanie Weirich

Proofs by logical relations play a key role to establish rich properties such as normalization or contextual equivalence. They are also challenging to mechanize. In this paper, we describe the completeness proof of algorithmic equality for…

Logic in Computer Science · Computer Science 2015-07-30 Andrew Cave , Brigitte Pientka

Logical relations are one of the most powerful techniques in the theory of programming languages, and have been used extensively for proving properties of a variety of higher-order calculi. However, there are properties that cannot be…

Programming Languages · Computer Science 2020-02-21 Gilles Barthe , Raphaëlle Crubillé , Ugo Dal Lago , Francesco Gavazzo

Type-and-effect systems incorporate information about the computational effects, e.g., state mutation, probabilistic choice, or I/O, a program phrase may invoke alongside its return value. A semantics for type-and-effect systems involves a…

Programming Languages · Computer Science 2018-04-11 Ohad Kammar , Dylan McDermott

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

Pitts and Stark's $\nu$-calculus is a paradigmatic total language for studying the problem of contextual equivalence in higher-order languages with name generation. Models for the $\nu$-calculus that validate basic equivalences concerning…

Logic in Computer Science · Computer Science 2023-06-22 Nick Benton , Martin Hofmann , Vivek Nigam

We study polymorphic type assignment systems for untyped lambda-calculi with effects, based on Moggi's monadic approach. Moving from the abstract definition of monads, we introduce a version of the call-by-value computational…

Logic in Computer Science · Computer Science 2020-02-10 Ugo de'Liguoro , Riccardo Treglia

We present a simple technique for semantic, open logical relations arguments about languages with recursive types, which, as we show, follows from a principled foundation in categorical semantics. We demonstrate how it can be used to give a…

Programming Languages · Computer Science 2022-10-25 Fernando Lucatelli Nunes , Matthijs Vákár

We extend the {\lambda}-calculus with constructs suitable for relational and functional-logic programming: non-deterministic choice, fresh variable introduction, and unification of expressions. In order to be able to unify…

Programming Languages · Computer Science 2021-03-02 Pablo Barenbaum , Federico Lochbaum , Mariana Milicich

Logical relations (LR) have been around for many years, and today they are used in many formal results. However, it can be difficult to LR beginners to find a good place to start to learn. Papers often use highly specialized LRs that use…

Programming Languages · Computer Science 2019-07-26 Lau Skorstengaard

We study the reduction in a lambda-calculus derived from Moggi's computational one, that we call the computational core. The reduction relation consists of rules obtained by orienting three monadic laws. Such laws, in particular…

Logic in Computer Science · Computer Science 2022-11-30 Claudia Faggian , Giulio Guerrieri , Ugo de'Liguoro , Riccardo Treglia

We define an equivalence relation on propositions and a proof system where equivalent propositions have the same proofs. The system obtained this way resembles several known non-deterministic and algebraic lambda-calculi.

Logic in Computer Science · Computer Science 2013-04-01 Alejandro Díaz-Caro , Gilles Dowek

While argument mining has achieved significant success in classifying argumentative relations between statements (support, attack, and neutral), we have a limited computational understanding of logical mechanisms that constitute those…

Computation and Language · Computer Science 2021-05-18 Yohan Jo , Seojin Bang , Chris Reed , Eduard Hovy

We describe a type system for the linear-algebraic lambda-calculus. The type system accounts for the part of the language emulating linear operators and vectors, i.e. it is able to statically describe the linear combinations of terms…

Logic in Computer Science · Computer Science 2012-08-01 Pablo Arrighi , Alejandro Díaz-Caro , Benoît Valiron

Monadic decomposibility --- the ability to determine whether a formula in a given logical theory can be decomposed into a boolean combination of monadic formulas --- is a powerful tool for devising a decision procedure for a given logical…

Formal Languages and Automata Theory · Computer Science 2019-05-09 Pablo Barcelo , Chih-Duo Hong , Xuan-Bach Le , Anthony W. Lin , Reino Niskanen
‹ Prev 1 2 3 10 Next ›