English
Related papers

Related papers: Type Classes for Mathematics in Type Theory

200 papers

Capitalizing on previous encodings and formal developments about nominal calculi and type systems, we propose a weak Higher-Order Abstract Syntax formalization of the type language of pure System F<: within Coq, a proof assistant based on…

Logic in Computer Science · Computer Science 2013-04-01 Alberto Ciaffaglione , Ivan Scagnetto

Type soundness is an important property of modern programming languages. In this paper we explore the idea that "well-typed languages are sound": the idea that the appropriate typing discipline over language specifications guarantees that…

Programming Languages · Computer Science 2016-11-17 Matteo Cimini , Dale Miller , Jeremy G. Siek

The Dependent Object Type (DOT) calculus was designed to put Scala on a sound basis, but while DOT relies on structural subtyping, Scala is a fundamentally class-based language. This impedance mismatch means that a proof of DOT soundness by…

Programming Languages · Computer Science 2023-07-13 Guillaume Martres

Metatheorems about type theories are often proven by interpreting the syntax into models constructed using categorical gluing. We propose to use only sconing (gluing along a global section functor) instead of general gluing. The sconing is…

Logic in Computer Science · Computer Science 2023-05-10 Rafaël Bocquet , Ambrus Kaposi , Christian Sattler

We present a first step towards the Coq implementation of the Theory of Tagged Objects formalism. The concept of tagged types is encoded, and the soundness proofs are discussed with some future work suggestions.

Programming Languages · Computer Science 2025-02-18 Matthew Gates , Alex Potanin

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

Humans can generate reasonable answers to novel queries (Schulz, 2012): if I asked you what kind of food you want to eat for lunch, you would respond with a food, not a time. The thought that one would respond "After 4pm" to "What would you…

Artificial Intelligence · Computer Science 2022-10-05 Felix A. Sosa , Tomer Ullman

In many instances in first order logic or computable algebra, classical theorems show that many problems are undecidable for general structures, but become decidable if some rigidity is imposed on the structure. For example, the set of…

Discrete Mathematics · Computer Science 2017-08-08 Emmanuel Jeandel

This paper shows how a recently developed view of typing as small-step abstract reduction, due to Kuan, MacQueen, and Findler, can be used to recast the development of simple type theory from a rewriting perspective. We show how standard…

Programming Languages · Computer Science 2015-07-01 Aaron Stump , Garrin Kimmell , Hans Zantema , Ruba El Haj Omar

We present a unified theory for formal mathematical systems including recursive systems closely related to formal grammars, including the predicate calculus as well as a formal induction principle. We introduce recursive systems generating…

Logic · Mathematics 2021-12-21 Matthias Kunik

Several approaches exist to data-mining big corpora of formal proofs. Some of these approaches are based on statistical machine learning, and some -- on theory exploration. However, most are developed for either untyped or simply-typed…

Programming Languages · Computer Science 2017-05-23 Ekaterina Komendantskaya , Jonathan Heras

Coroutine, as a powerful programming construct, is widely used in asynchronous applications to replace thread-based programming or the callback hell. Using coroutines makes code more readable and maintainable, for its ability to transfer…

Programming Languages · Computer Science 2026-02-24 Qiqi Gu , Wei Ke

We present gradual type theory, a logic and type theory for call-by-name gradual typing. We define the central constructions of gradual typing (the dynamic type, type casts and type error) in a novel way, by universal properties relative to…

Programming Languages · Computer Science 2023-06-22 Max S. New , Daniel R. Licata

Metric algebras are metric variants of $\Sigma$-algebras. They are first introduced in the field of universal algebra to deal with algebras equipped with metric structures such as normed vector spaces. Recently a similar notion of…

Logic in Computer Science · Computer Science 2016-12-27 Wataru Hino

We report on a half-semester course focused around implementation of type systems in programming languages. The course assumes basics of classical compiler construction, in particular, the abstract syntax representation, the Visitor…

Programming Languages · Computer Science 2024-07-12 Abdelrahman Abounegm , Nikolai Kudasov , Alexey Stepanov

Proof assistants and programming languages based on type theories usually come in two flavours: one is based on the standard natural deduction presentation of type theory and involves eliminators, while the other provides a syntax in…

Logic in Computer Science · Computer Science 2015-07-30 Nicolas Guenot , Daniel Gustafsson

Procedural computer languages have long been used in many aspects of mathematics pedagogy. In this work, we examine the use of Prolog, a declarative language for the same purpose. We find the facts+rules aspect of Prolog to be a novel…

Computers and Society · Computer Science 2021-08-24 Tom Bensky

We introduce the notion of a logical model category which is a Quillen model category satisfying some additional conditions. Those conditions provide enough expressive power that one can soundly interpret dependent products and sums in it.…

Logic · Mathematics 2012-08-30 Peter Arndt , Chris Kapulkin

Type-and-effect systems help the programmer to organize data and computational effects in a program. While for traditional type systems expressive variants with sophisticated inference algorithms have been developed and widely used in…

Programming Languages · Computer Science 2025-10-24 Patrycja Balik , Szymon Jędras , Piotr Polesiuk

In this paper, we explore a connection between type universes and memory allocation. Type universe hierarchies are used in dependent type theories to ensure consistency, by forbidding a type from quantifying over all types. Instead, the…

Programming Languages · Computer Science 2024-07-10 Paulette Koronkevich , William J. Bowman