Guarded Computational Type Theory

04/24/2018
by   Jonathan Sterling, et al.
0

Nakano's later modality can be used to specify and define recursive functions which are causal or synchronous; in concert with a notion of clock variable, it is possible to also capture the broader class of productive (co)programs. Until now, it has been difficult to combine these constructs with dependent types in a way that preserves the operational meaning of type theory and admits a hierarchy of universes. We present an operational account of guarded dependent type theory with clocks called Guarded Computational Type Theory, featuring a novel clock intersection connective that enjoys the clock irrelevance principle, as well as a predicative hierarchy of universes which does not require any indexing in clock contexts. Guarded Computational Type Theory is simultaneously a programming language with a rich specification logic, as well as a computational metalanguage that can be used to develop semantics of other languages and logics.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/11/2018

Denotational semantics for guarded dependent type theory

We present a new model of Guarded Dependent Type Theory (GDTT), a type t...
research
09/15/2023

A Two-Level Linear Dependent Type Theory

We present a type theory combining both linearity and dependency by stra...
research
12/05/2017

Computational Higher Type Theory III: Univalent Universes and Exact Equality

This is the third in a series of papers extending Martin-Löf's meaning e...
research
05/28/2018

A Generalized Modality for Recursion

Nakano's later modality allows types to express that the output of a fun...
research
03/06/2023

Asynchronous Modal FRP

Over the past decade, a number of languages for functional reactive prog...
research
03/09/2018

Clocked Definitions in HOL

Many potentially non-terminating functions cannot be directly defined in...
research
10/10/2022

Classifying topoi in synthetic guarded domain theory

Several different topoi have played an important role in the development...

Please sign up or login with your details

Forgot password? Click here to reset