English
Related papers

Related papers: Inductive Reasoning for Coinductive Types

200 papers

Coinductive reasoning about infinitary structures such as streams is widely applicable. However, practical frameworks for developing coinductive proofs and finding reasoning principles that help structure such proofs remain a challenge,…

Programming Languages · Computer Science 2020-01-13 Yannick Zakowski , Paul He , Chung-Kil Hur , Steve Zdancewic

Inference systems are a widespread framework used to define possibly recursive predicates by means of inference rules. They allow both inductive and coinductive interpretations that are fairly well-studied. In this paper, we consider a…

Logic in Computer Science · Computer Science 2023-06-22 Francesco Dagnino

In this article we present a method for formally proving the correctness of the lazy algorithms for computing homographic and quadratic transformations -- of which field operations are special cases-- on a representation of real numbers by…

Logic in Computer Science · Computer Science 2015-07-01 Milad Niqui

Domain theory has been developed as a mathematical theory of computation and to give a denotational semantics to programming languages. It helps us to fix the meaning of language concepts, to understand how programs behave and to reason…

Logic in Computer Science · Computer Science 2026-03-03 Simcha van Collem , Niels van der Weide , Herman Geuvers

A fertile field of research in theoretical computer science investigates the representation of general recursive functions in intensional type theories. Among the most successful approaches are: the use of wellfounded relations,…

Logic in Computer Science · Computer Science 2017-01-11 Venanzio Capretta

The set of integer number lists with finite length, and the set of binary trees with integer labels are both countably infinite. Many inductively defined types also have countably many elements. In this paper, we formalize the syntax of…

Logic in Computer Science · Computer Science 2021-07-19 Qinxiang Cao , Xiwei Wu

Coinduction refers to both a technique for the definition of infinite streams, so-called codata, and a technique for proving the equality of coinductively specified codata. This article first reviews coinduction in declarative programming.…

Programming Languages · Computer Science 2020-07-23 François Bry

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 Constructive Type Theory, recursive and corecursive definitions are subject to syntactic restrictions which guarantee termination for recursive functions and productivity for corecursive functions. However, many terminating and…

Logic in Computer Science · Computer Science 2008-07-10 Yves Bertot , Ekaterina Komendantskaya

Traditionally, formal languages are defined as sets of words. More recently, the alternative coalgebraic or coinductive representation as infinite tries, i.e., prefix trees branching over the alphabet, has been used to obtain compact and…

Logic in Computer Science · Computer Science 2023-06-22 Dmitriy Traytel

Proof search has been used to specify a wide range of computation systems. In order to build a framework for reasoning about such specifications, we make use of a sequent calculus involving induction and co-induction. These proof principles…

Logic in Computer Science · Computer Science 2009-09-30 Alwen Tiu , Alberto Momigliano

"Interaction trees" (ITrees) are a general-purpose data structure for representing the behaviors of recursive programs that interact with their environments. A coinductive variant of "free monads," ITrees are built out of uninterpreted…

Programming Languages · Computer Science 2019-11-18 Li-yao Xia , Yannick Zakowski , Paul He , Chung-Kil Hur , Gregory Malecha , Benjamin C. Pierce , Steve Zdancewic

Computational content encoded into constructive type theory proofs can be used to make computing experiments over concrete data structures. In this paper, we explore this possibility when working in Coq with chain complexes of infinite type…

Logic in Computer Science · Computer Science 2010-04-29 César Domínguez , Julio Rubio

This article contains a proposal to add coinduction to the computational apparatus of natural language understanding. This, we argue, will provide a basis for more realistic, computationally sound, and scalable models of natural language…

Computation and Language · Computer Science 2020-12-11 Wlodek W. Zadrozny

We present a coinductive framework for defining and reasoning about the infinitary analogues of equational logic and term rewriting in a uniform, coinductive way. The setup captures rewrite sequences of arbitrary ordinal length, but it has…

Logic in Computer Science · Computer Science 2019-03-14 Jörg Endrullis , Helle Hvid Hansen , Dimitri Hendriks , Andrew Polonsky , Alexandra Silva

In the impredicative type theory of System F ({\lambda}2), it is possible to create inductive data types, such as natural numbers and lists. It is also possible to create coinductive data types such as streams. They work well in the sense…

Logic in Computer Science · Computer Science 2025-05-21 Steven Bronsveld , Herman Geuvers , Niels van der Weide

We exploit (co)inductive specifications and proofs to approach the evaluation of low-level programs for the Unlimited Register Machine (URM) within the Coq system, a proof assistant based on the Calculus of (Co)Inductive Constructions type…

Logic in Computer Science · Computer Science 2011-11-15 Alberto Ciaffaglione

We accommodate the Integrated Connectionist/Symbolic Architecture (ICS) of [32] within the categorical compositional semantics (CatCo) of [13], forming a model of categorical compositional cognition (CatCog). This resolves intrinsic…

Artificial Intelligence · Computer Science 2016-08-15 Yaared Al-Mehairi , Bob Coecke , Martha Lewis

This paper studies emulation of induction by coinduction in a call-by-name language with control operators. Since it is known that call-by-name programming languages with control operators cannot have general initial algebras, interaction…

Logic in Computer Science · Computer Science 2013-09-06 Yoshihiko Kakutani , Daisuke Kimura

We introduce a generalized notion of inference system to support more flexible interpretations of recursive definitions. Besides axioms and inference rules with the usual meaning, we allow also coaxioms, which are, intuitively, axioms which…

Logic in Computer Science · Computer Science 2023-06-22 Francesco Dagnino
‹ Prev 1 2 3 10 Next ›