English
Related papers

Related papers: Logical relations for coherence of effect subtypin…

200 papers

It is well-known that constructing models of higher-order probabilistic programming languages is challenging. We show how to construct step-indexed logical relations for a probabilistic extension of a higher-order programming language with…

Logic in Computer Science · Computer Science 2015-04-20 Aleš Bizjak , Lars Birkedal

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

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

Programming languages with countable nondeterministic choice are computationally interesting since countable nondeterminism arises when modeling fairness for concurrent systems. Because countable choice introduces non-continuous behaviour,…

Logic in Computer Science · Computer Science 2015-07-01 Lars Birkedal , Aleš Bizjak , Jan Schwinghammer

Herman et al. pointed out that the insertion of run-time checks into a gradually typed program could hamper tail-call optimization and, as a result, worsen the space complexity of the program. To address the problem, they proposed a…

Programming Languages · Computer Science 2020-11-11 Yuya Tsuda , Atsushi Igarashi , Tomoya Tabuchi

This paper presents and extends our type theoretical framework for a compositional treatment of natural language semantics with some lexical features like coercions (e.g. of a town into a football club) and copredication (e.g. on a town as…

Logic in Computer Science · Computer Science 2013-05-06 Christian Retoré

Types in logic programming have focused on conservative approximations of program semantics by regular types, on one hand, and on type systems based on a prescriptive semantics defined for typed programs, on the other. In this paper, we…

Logic in Computer Science · Computer Science 2019-09-19 João Barbosa , Mário Florido , Vítor Santos Costa

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

A reliable technique for deductive program verification should be proven sound with respect to the semantics of the programming language. For each different language, the construction of a separate soundness proof is often a laborious…

Programming Languages · Computer Science 2021-08-05 Ximeng Li , Qianying Zhang , Guohui Wang , Zhiping Shi , Yong Guan

In game semantics and related approaches to programming language semantics, programs are modelled by interaction dialogues. Such models have recently been used in the design of new compilation methods, e.g. for hardware synthesis or for…

Logic in Computer Science · Computer Science 2015-07-01 Ulrich Schöpp

Program equivalence is the fulcrum for reasoning about and proving properties of programs. For noninterference, for example, program equivalence up to the secrecy level of an observer is shown. A powerful enabler for such proofs are logical…

Programming Languages · Computer Science 2022-08-31 Farzaneh Derakhshan , Stephanie Balzer

The compactness lemma in programming language theory states that any recursive function can be simulated by a finite unrolling of the function. One important use case it has is in the logical relations proof technique for proving properties…

Programming Languages · Computer Science 2024-05-06 Matias Scharager

Step-indexed semantic interpretations of types were proposed as an alternative to purely syntactic proofs of type safety using subject reduction. The types are interpreted as sets of values indexed by the number of computation steps for…

Programming Languages · Computer Science 2015-07-01 Catalin Hritcu , Jan Schwinghammer

Continuation Passing Style (CPS) is one of the most important issues in the field of functional programming languages, and the quest for a primitive notion of types for continuation is still open. Starting from the notion of ``test''…

Logic in Computer Science · Computer Science 2007-05-23 Stefano Guerrini , Andrea Masini

Subtyping, also known as subtype polymorphism, is a concept extensively studied in programming language theory, delineating the substitutability relation among datatypes. This property ensures that programs designed for supertype objects…

Artificial Intelligence · Computer Science 2025-02-14 Đorđe Marković , Marc Denecker

Appel and McAllester's "step-indexed" logical relations have proven to be a simple and effective technique for reasoning about programs in languages with semantically interesting types, such as general recursive types and general reference…

Programming Languages · Computer Science 2015-07-01 Derek Dreyer , Amal Ahmed , Lars Birkedal

Dependent types provide a lightweight and modular means to integrate programming and formal program verification. In particular, the types of programs written in dependently typed programming languages (Agda, Idris, F*, etc.) can be used to…

Logic in Computer Science · Computer Science 2017-10-10 Danel Ahman

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

In recent work we have shown how it is possible to define very precise type systems for object-oriented languages by abstractly compiling a program into a Horn formula f. Then type inference amounts to resolving a certain goal w.r.t. the…

Programming Languages · Computer Science 2010-06-09 Davide Ancona , Giovanni Lagorio

As is evident in the programming language literature, many practitioners favor specifying dynamic program behavior using big-step over small-step semantics. Unlike small-step semantics, which must dwell on every intermediate program state,…

Programming Languages · Computer Science 2025-10-23 David M Kahn , Jan Hoffmann , Runming Li
‹ Prev 1 2 3 10 Next ›