85 research outputs found
Bounded Refinement Types
We present a notion of bounded quantification for refinement types and show
how it expands the expressiveness of refinement typing by using it to develop
typed combinators for: (1) relational algebra and safe database access, (2)
Floyd-Hoare logic within a state transformer monad equipped with combinators
for branching and looping, and (3) using the above to implement a refined IO
monad that tracks capabilities and resource usage. This leap in expressiveness
comes via a translation to "ghost" functions, which lets us retain the
automated and decidable SMT based checking and inference that makes refinement
typing effective in practice.Comment: 14 pages, International Conference on Functional Programming, ICFP
201
Generalizations of Hedbergâs Theorem
Streicherâs axiom K or the uniqueness of identity proofs (UIP) is the statement that every identity type has at most one inhabitant. The groupoid interpretation by Hofmann and Streicher shows that this is not provable for an arbitrary type, but a theorem by Hedberg gives a sufficient condition. Types satisfying UIP are known as h-sets. The main contributions of this paper are: (i) Natural, more general sufficient conditions for a type being an h-set. (ii) A new characterization of h-sets. (iii) A new result inspired by these characterizations, with some applications. All the proofs have been formalized in Agda
Dependent Types for Pragmatics
This paper proposes the use of dependent types for pragmatic phenomena such
as pronoun binding and presupposition resolution as a type-theoretic
alternative to formalisms such as Discourse Representation Theory and Dynamic
Semantics.Comment: This version updates the paper for publication in LEU
- âŠ