English
Related papers

Related papers: Bootstrapping Inductive and Coinductive Types in H…

200 papers

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

Functors with an instance of the Traversable type class can be thought of as data structures which permit a traversal of their elements. This has been made precise by the correspondence between traversable functors and finitary containers…

Logic in Computer Science · Computer Science 2022-07-21 Gershom Bazerman

We present a new approach to the following meta-problem: given a quantitative property of trees, design a type system such that the desired property for the tree generated by an infinitary ground lambda-term corresponds to some property of…

Logic in Computer Science · Computer Science 2017-03-31 Paweł Parys

The central question that we address is: How can structured information be stored in a hierarchical Hopfield model involving hidden layers? To this end, we develop a formalism of strokes and concepts that allows us to appropriately…

Probability · Mathematics 2026-04-29 Markus Heydenreich , Christian Hirsch , Matthias Löwe

Non-well-founded trees are used in mathematics and computer science, for modelling non-well-founded sets, as well as non-terminating processes or infinite data-structures. Categorically, they arise as final coalgebras for polynomial…

Category Theory · Mathematics 2007-05-23 Benno van den Berg , Federico de Marchi

In a constructive setting, no concrete formulation of ordinal numbers can simultaneously have all the properties one might be interested in; for example, being able to calculate limits of sequences is constructively incompatible with…

Logic in Computer Science · Computer Science 2023-05-18 Nicolai Kraus , Fredrik Nordvall Forsberg , Chuangjie Xu

GADTs were introduced in Haskell's eco-system more than a decade ago, but their interaction with several mainstream features such as type classes and functional dependencies has a lot of room for improvement. More specifically, for some…

Programming Languages · Computer Science 2019-07-02 Koen Pauwels , Georgios Karachalias , Michiel Derhaeg , Tom Schrijvers

We present AlgCo (Algebraic Coinductives), a practical framework for inductive reasoning over commonly used coinductive types such as conats, streams, and infinitary trees with finite branching factor. The key idea is to exploit the notion…

Logic in Computer Science · Computer Science 2023-04-10 Alexander Bagnall , Gordon Stewart , Anindya Banerjee

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…

Logic in Computer Science · Computer Science 2019-03-14 Ranald Clouston , Aleš Bizjak , Hans Bugge Grathwohl , Lars Birkedal

We study the notion of extensibility in functional data types, as a new approach to the problem of decorating abstract syntax trees with additional sets of information. We observed the need for such extensibility while redesigning the data…

Programming Languages · Computer Science 2016-10-18 Shayan Najd , Simon Peyton Jones

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 propose a lightly-supervised approach for information extraction, in particular named entity classification, which combines the benefits of traditional bootstrapping, i.e., use of limited annotations and interpretability of extraction…

Computation and Language · Computer Science 2018-05-30 Marco A. Valenzuela-Escárcega , Ajay Nagesh , Mihai Surdeanu

This paper is an exploration in a functional programming framework of {\em isomorphisms} between elementary data types (natural numbers, sets, multisets, finite functions, permutations binary decision diagrams, graphs, hypergraphs,…

Programming Languages · Computer Science 2009-01-19 Paul Tarau

We develop a dependent type theory that is based purely on inductive and coinductive types, and the corresponding recursion and corecursion principles. This results in a type theory with a small set of rules, while still being fairly…

Logic in Computer Science · Computer Science 2016-05-10 Henning Basold , Herman Geuvers

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

Machine learning models achieve state-of-the-art performance on many supervised learning tasks. However, prior evidence suggests that these models may learn to rely on shortcut biases or spurious correlations (intuitively, correlations that…

Machine Learning · Computer Science 2021-08-31 Sindhu C. M. Gowda , Shalmali Joshi , Haoran Zhang , Marzyeh Ghassemi

We construct a left semi-model structure on the category of intensional type theories (precisely, on $\mathrm{CxlCat_{Id,1,\Sigma(,\Pi_{ext})}}$). This presents an $\infty$-category of such type theories; we show moreover that there is an…

Category Theory · Mathematics 2026-02-06 Chris Kapulkin , Peter LeFanu Lumsdaine

It is very costly to build up lexical resources and domain ontologies. Especially when confronted with a new application domain lexical gaps and a poor coverage of domain concepts are a problem for the successful exploitation of natural…

Computation and Language · Computer Science 2007-05-23 Dietmar Roesner , Manuela Kunze

We present a functional programming language for specifying constraints over tree-shaped data. The language allows for Haskell-like algebraic data types and pattern matching. Our constraint compiler CO4 translates these programs into…

Programming Languages · Computer Science 2013-05-24 Alexander Bau , Johannes Waldmann

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