English
Related papers

Related papers: First-Class Subtypes

200 papers

Sound exhaustiveness checking of pattern-matching is an essential feature of functional programming languages, and OCaml supports it for GADTs. However this check is incomplete, in that it may fail to detect that a pattern can match no…

Programming Languages · Computer Science 2017-02-09 Jacques Garrigue , Jacques Le Normand

The calculus of Dependent Object Types (DOT) has enabled a more principled and robust implementation of Scala, but its support for type-level computation has proven insufficient. As a remedy, we propose $F^\omega_{..}$, a rigorous…

Programming Languages · Computer Science 2021-07-06 Sandro Stucki , Paolo G. Giarrusso

Digital humanities are rooted in text analysis. However, most visualization paradigms use only categoric, ordered or quantitative data. Literal text must be considered a base data type to encode into visualizations. Literal text offers…

Human-Computer Interaction · Computer Science 2020-09-08 Richard Brath

Datatype-generic programming increases program abstraction and reuse by making functions operate uniformly across different types. Many approaches to generic programming have been proposed over the years, most of them for Haskell, but…

Programming Languages · Computer Science 2012-02-15 José Pedro Magalhães , Andres Löh

Haskell provides type-class-bounded and parametric polymorphism as opposed to subtype polymorphism of object-oriented languages such as Java and OCaml. It is a contentious question whether Haskell 98 without extensions, or with common…

Programming Languages · Computer Science 2007-05-23 Oleg Kiselyov , Ralf Laemmel

GADTs can be represented either as their Church encodings a la Atkey, or as fixpoints a la Johann and Polonsky. While a GADT represented as its Church encoding need not support a map function satisfying the functor laws, the fixpoint…

Logic in Computer Science · Computer Science 2022-04-11 Patricia Johann , Enrico Ghiorzi , Daniel Jeffries

We consider type inference for guarded recursive data types (GRDTs) -- a recent generalization of algebraic data types. We reduce type inference for GRDTs to unification under a mixed prefix. Thus, we obtain efficient type inference.…

Programming Languages · Computer Science 2007-05-23 Peter J. Stuckey , Martin Sulzmann

We propose to use Church encodings in typed lambda-calculi as the basis for an automata-theoretic counterpart of implicit computational complexity, in the same way that monadic second-order logic provides a counterpart to descriptive…

Logic in Computer Science · Computer Science 2019-07-02 Lê Thành Dũng Nguyên

It is natural for probabilistic programs to use conditionals to express alternative substructures in models, and loops (recursion) to express repeated substructures in models. Thus, probabilistic programs with conditionals and recursion…

Programming Languages · Computer Science 2020-10-26 David Chiang , Chung-chieh Shan

Automated theorem proving in first-order logic is an active research area which is successfully supported by machine learning. While there have been various proposals for encoding logical formulas into numerical vectors -- from simple…

Artificial Intelligence · Computer Science 2020-03-17 Ibrahim Abdelaziz , Veronika Thost , Maxwell Crouse , Achille Fokoue

In modern OCaml, single-argument datatype declarations (variants with a single constructor, records with a single field) can sometimes be `unboxed'. This means that their memory representation is the same as their single argument (omitting…

Programming Languages · Computer Science 2018-12-13 Simon Colin , Rodolphe Lepigre , Gabriel Scherer

Generators of the algebra of first class functions in a system with second class constraints are found. It is shown that first class functions form algebras with respect to the Dirac bracket and pointwise multiplication.The subspace of…

Mathematical Physics · Physics 2007-05-23 A. V. Bratchikov

We investigate a technique from the literature, called the phantom-types technique, that uses parametric polymorphism, type constraints, and unification of polymorphic types to model a subtyping hierarchy. Hindley-Milner type systems, such…

Programming Languages · Computer Science 2007-05-23 Matthew Fluet , Riccardo Pucella

First-order logic is a natural way of expressing properties of computation. It is traditionally used in various program logics for expressing the correctness properties and certificates. Although such representations are expressive for some…

Programming Languages · Computer Science 2021-04-15 Yurii Kostyukov , Dmitry Mordvinov , Grigory Fedyukovich

We introduce first order alternating automata, a generalization of boolean alternating automata, in which transition rules are described by multisorted first order formulae, with states and internal variables given by uninterpreted…

Formal Languages and Automata Theory · Computer Science 2018-11-20 Radu Iosif , Xiao Xu

Various feature descriptions are being employed in logic programming languages and constrained-based grammar formalisms. The common notational primitive of these descriptions are functional attributes called features. The descriptions…

cmp-lg · Computer Science 2008-02-03 Rolf Backofen , Gert Smolka

In this article we show that hybrid type-logical grammars are a fragment of first-order linear logic. This embedding result has several important consequences: it not only provides a simple new proof theory for the calculus, thereby…

Logic in Computer Science · Computer Science 2014-05-27 Richard Moot

First-order logic is the basis for many knowledge representation formalisms and methods. Providing technological support for learning to write first-order formulas for natural language specifications requires methods to test formulas for…

Logic in Computer Science · Computer Science 2026-02-24 Fabian Vehlken , Thomas Zeume , Emilio Carrasco Bustamante , Maëlle Cornély , Lukas Pradel

We study various representations for cyclic lambda-terms as higher-order or as first-order term graphs. We focus on the relation between 'lambda-higher-order term graphs' (lambda-ho-term-graphs), which are first-order term graphs endowed…

Logic in Computer Science · Computer Science 2013-02-27 Clemens Grabmayer , Jan Rochel

We present a way of topologizing sets of Galois types over structures in abstract elementary classes with amalgamation. In the elementary case, the topologies thus produced refine the syntactic topologies familiar from first order logic. We…

Logic · Mathematics 2010-02-24 Michael Lieberman