English
Related papers

Related papers: On Completeness of Logical Relations for Monadic T…

200 papers

Semantic data fuels many different applications, but is still lacking proper integration into programming languages. Untyped access is error-prone while mapping approaches cannot fully capture the conceptualization of semantic data. In this…

Programming Languages · Computer Science 2016-10-25 Martin Leinberger , Ralf Lämmel , Steffen Staab

In this paper, we take a pervasively effectful (in the style of ML) typed lambda calculus, and show how to extend it to permit capturing pure expressions with types. Our key observation is that, just as the pure simply-typed lambda calculus…

Programming Languages · Computer Science 2020-11-12 Vikraman Choudhury , Neel Krishnaswami

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

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

The objective of this paper is to develop a functional programming language for quantum computers. We develop a lambda calculus for the classical control model, following the first author's work on quantum flow-charts. We define a…

Logic in Computer Science · Computer Science 2009-02-26 Peter Selinger , Benoit Valiron

Contextual equivalence is the de facto standard notion of program equivalence. A key theorem is that contextual equivalence is an equational theory. Making contextual equivalence more intensional, for example taking into account the time…

Logic in Computer Science · Computer Science 2024-11-26 Beniamino Accattoli , Adrienne Lancelot , Giulio Manzonetto , Gabriele Vanoni

Mathematics has many useful properties for developing of complex software systems. One is that it can exactly describe a physical situation of the object or outcome of an action. Mathematics support abstraction and this is an excellent…

Software Engineering · Computer Science 2010-04-19 Manoranjan Kumar Singh , Rakesh. L

We present a marriage of functional and structured imperative programming that embeds in pure lambda calculus. We describe how we implement the core of this language in a monadic DSL which is structurally equivalent to our intended source…

Programming Languages · Computer Science 2017-03-17 Phil Scott , Steven Obua , Jacques Fleuriot

We aim to reason about the correctness of behaviour-preserving transformations of Erlang programs. Behaviour preservation is characterised by semantic equivalence. Based upon our existing formal semantics for Core Erlang, we investigate…

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

This dissertation is concerned with the study of program equivalence and algebraic effects as they arise in the theory of programming languages. Algebraic effects represent impure behaviour in a functional programming language, such as…

Programming Languages · Computer Science 2019-02-14 Cristina Matache

Relational program verification is a variant of program verification where one can reason about two programs and as a special case about two executions of a single program on different inputs. Relational program verification can be used for…

Programming Languages · Computer Science 2019-10-23 Alejandro Aguirre , Gilles Barthe , Marco Gaboardi , Deepak Garg , Pierre-Yves Strub

We define sound and adequate denotational and operational semantics for the stochastic lambda calculus. These two semantic approaches build on previous work that used similar techniques to reason about higher-order probabilistic programs,…

Logic in Computer Science · Computer Science 2021-05-18 Pedro Amorim , Dexter Kozen , Radu Mardare , Prakash Panangaden , Michael Roberts

We discuss proving correctness and completeness of definite clause logic programs. We propose a method for proving completeness, while for proving correctness we employ a method which should be well known but is often neglected. Also, we…

Logic in Computer Science · Computer Science 2017-01-31 Włodzimierz Drabent

We define an extension of lambda-calculus with dependents types that enables us to encode transparent and opaque probabilistic programs and prove a strong normalisation result for it by a reducibility technique. While transparent…

Logic in Computer Science · Computer Science 2026-03-10 Francesco A. Genco

Classical programming languages cannot model essential elements of complex systems such as true random number generation. This paper develops a formal programming language called the lambda-q calculus that addresses the fundamental…

Quantum Physics · Physics 2007-05-23 Philip Maymin

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

The algebraic lambda calculus and the linear algebraic lambda calculus are two extensions of the classical lambda calculus with linear combinations of terms. They arise independently in distinct contexts: the former is a fragment of the…

Logic in Computer Science · Computer Science 2012-08-01 Ali Assaf , Simon Perdrix

The theory of program modules is of interest to language designers not only for its practical importance to programming, but also because it lies at the nexus of three fundamental concerns in language design: the phase distinction,…

Programming Languages · Computer Science 2022-02-23 Jonathan Sterling , Robert Harper

An alternative proof of the completeness of relational algebra with respect to allowed formulas of first-order logic is presented. The proof relies on the well-known embedding of relational algebra into cylindric algebra, which makes it…

Logic in Computer Science · Computer Science 2026-03-17 Jan Laštovička

Program logics are a powerful formal method in the context of program verification. Can we develop a counterpart of program logics in the context of language verification? This paper proposes language logics, which allow for statements of…

Programming Languages · Computer Science 2024-08-06 Matteo Cimini