English
Related papers

Related papers: Coinductive big-step operational semantics

200 papers

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

We introduce a sound and complete coinductive proof system for reachability properties in transition systems generated by logically constrained term rewriting rules over an order-sorted signature modulo builtins. A key feature of the…

Logic in Computer Science · Computer Science 2018-04-24 Ştefan Ciobâcă , Dorel Lucanu

We present the guarded lambda-calculus, an extension of the simply typed lambda-calculus with guarded recursive and coinductive types. The use of guarded recursive types ensures the productivity of well-typed programs. Guarded recursive…

Programming Languages · Computer Science 2015-01-16 Ranald Clouston , Aleš Bizjak , Hans Bugge Grathwohl , Lars Birkedal

We investigate a variant of the fuel-based approach to modeling diverging computation in type theories and use it to abstractly capture the essence of oracle Turing machines. The resulting objects we call continuous machines. We prove that…

Logic in Computer Science · Computer Science 2020-05-05 Michal Konečný , Florian Steinberg , Holger Thies

Trace semantics has been defined for various kinds of state-based systems, notably with different forms of branching such as non-determinism vs. probability. In this paper we claim to identify one underlying mathematical structure behind…

Logic in Computer Science · Computer Science 2015-07-01 Ichiro Hasuo , Bart Jacobs , Ana Sokolova

In functional programming, datatypes a la carte provide a convenient modular representation of recursive datatypes, based on their initial algebra semantics. Unfortunately it is highly challenging to implement this technique in proof…

Logic in Computer Science · Computer Science 2015-09-11 Paolo Torrini , Tom Schrijvers

In this paper, we propose a novel strategy defined as Chain-of-Description (CoD) Prompting, tailored for Multi-Modal Large Language Models. This approach involves having the model first provide a detailed description of the multi-modal…

Computation and Language · Computer Science 2025-02-25 Jiaxin Guo , Daimeng Wei , Zongyao Li , Hengchao Shang , Yuanchang Luo , Hao Yang

Applicative bisimulation is a coinductive technique to check program equivalence in higher-order functional languages. It is known to be sound, and sometimes complete, with respect to context equivalence. In this paper we show that…

Logic in Computer Science · Computer Science 2015-06-23 Ugo Dal Lago , Alessandro Rioli

We present a big-step and small-step operational semantics for Yul -- the intermediate language used by the Solidity compiler to produce EVM bytecode -- in a mathematical notation that is congruous with the literature of programming…

Programming Languages · Computer Science 2024-07-02 Vasileios Koutavas , Yu-Yang Lin , Nikos Tzevelekos

We propose a method to adapt functional logic programming to deal with reasoning on coinductively interpreted programs as well as on inductively interpreted programs. In order to do so, we consider a class of objects interesting for this…

Programming Languages · Computer Science 2012-03-06 Ronald de Haan

A desired but challenging property of compiler verification is compositionality, in the sense that the compilation correctness of a program can be deduced incrementally from that of its substructures ranging from statements, functions, and…

Programming Languages · Computer Science 2026-03-31 Zhang Cheng , Jiyang Wu , Di Wang , Qinxiang Cao

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

The aim of the paper is to provide solid foundations for a programming paradigm natively supporting the creation and manipulation of cyclic data structures. To this end, we describe coFJ, a Java-like calculus where objects can be infinite…

Programming Languages · Computer Science 2020-05-29 Davide Ancona , Pietro Barbieri , Francesco Dagnino , Elena Zucca

We give an explicit coinduction principle for recursively-defined stochastic processes. The principle applies to any closed property, not just equality, and works even when solutions are not unique. The rule encapsulates low-level analytic…

Logic in Computer Science · Computer Science 2015-07-01 Dexter Kozen

There is an apparent similarity between the descriptions of small-step operational semantics of imperative programs and the semantics of finite automata, so defining an abstraction mapping from semantics to automata and proving a simulation…

Programming Languages · Computer Science 2014-09-30 Nadezhda Baklanova , Wilmer Ricciotti , Jan-Georg Smaus , Martin Strecker

This paper extends the dual calculus with inductive types and coinductive types. The paper first introduces a non-deterministic dual calculus with inductive and coinductive types. Besides the same duality of the original dual calculus, it…

Logic in Computer Science · Computer Science 2015-07-01 Daisuke Kimura , Makoto Tatsuta

We develop semantics and syntax for bicategorical type theory. Bicategorical type theory features contexts, types, terms, and directed reductions between terms. This type theory is naturally interpreted in a class of structured…

Logic in Computer Science · Computer Science 2023-10-13 Benedikt Ahrens , Paige Randall North , Niels van der Weide

We describe a way to represent computable functions between coinductive types as particular transducers in type theory. This generalizes earlier work on functions between streams by P. Hancock to a much richer class of coinductive types.…

Logic in Computer Science · Computer Science 2023-06-22 Pierre Hyvernat

In call-by-value languages, some mutually-recursive value definitions can be safely evaluated to build recursive functions or cyclic data structures, but some definitions (let rec x = x + 1) contain vicious circles and their evaluation…

Programming Languages · Computer Science 2020-12-24 Alban Reynaud , Gabriel Scherer , Jeremy Yallop

We study bisimulation and context equivalence in a probabilistic $\lambda$-calculus. The contributions of this paper are threefold. Firstly we show a technique for proving congruence of probabilistic applicative bisimilarity. While the…

Programming Languages · Computer Science 2013-11-08 Ugo Dal Lago , Davide Sangiorgi , Michele Alberti
‹ Prev 1 3 4 5 6 7 10 Next ›