DeepAI AI Chat
Log In Sign Up

Focusing on Liquid Refinement Typing

by   Dimitrios J. Economou, et al.

We present a foundation systematizing, in a way that works for any evaluation order, the variety of mechanisms for SMT constraint generation found in index refinement and liquid type systems. Using call-by-push-value, we design a polarized subtyping relation allowing us to prove that our logically focused typing algorithm is sound, complete, and decidable, even in cases seemingly likely to produce constraints with existential variables. We prove type soundness with respect to an elementary domain-theoretic denotational semantics. Soundness implies, relatively simply, our system's totality and logical consistency.


page 1

page 2

page 3

page 4


Data Flow Refinement Type Inference

Refinement types enable lightweight verification of functional programs....

Refinement Types: A Tutorial

Refinement types enrich a language's type system with logical predicates...

A Probabilistic and Non-Deterministic Call-by-Push-Value Language

There is no known way of giving a domain-theoretic semantics to higher-o...

Denotational semantics of recursive types in synthetic guarded domain theory

Just like any other branch of mathematics, denotational semantics of pro...

A Categorical Normalization Proof for the Modal Lambda-Calculus

We investigate a simply typed modal λ-calculus, λ^→□, due to Pfenning, W...

Defunctionalization of Higher-Order Constrained Horn Clauses

Building on the successes of satisfiability modulo theories (SMT), Bjørn...

Protocol Analysis with Time

We present a framework suited to the analysis of cryptographic protocols...