Cost-Aware Type Theory

11/07/2020
by   Yue Niu, et al.
0

Although computational complexity is a fundamental aspect of program behavior, it is often at odds with common type theoretic principles such as function extensionality, which identifies all functions with the same input-output behavior. We present a computational type theory called 𝐂𝐀𝐓𝐓 that has a primitive notion of cost (the number of evaluation steps). We introduce a new dependent function type "funtime" whose semantics can be viewed as a cost-aware version of function extensionality. We prove a collection of lemmas for 𝐂𝐀𝐓𝐓, including a novel introduction rule for the new funtime type. 𝐂𝐀𝐓𝐓 can be simultaneously viewed as a framework for analyzing computational complexity of programs and as the beginnings of a semantic foundation for characterizing feasible mathematical proofs.

READ FULL TEXT
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 2

page 3

page 4

07/09/2021

A cost-aware logical framework

We present calf, a cost-aware logical framework for studying quantitativ...
03/23/2021

Combinators: A Centennial View

We give a modern computational introduction to the S,K combinators inven...
11/13/2019

Naive cubical type theory

This paper proposes a way of doing type theory informally, assuming a cu...
01/31/2018

Call-by-name Gradual Type Theory

We present gradual type theory, a logic and type theory for call-by-name...
02/02/2018

Zero-Cost Coercions for Program and Proof Reuse

We introduce the notion of identity coercions between non-indexed and in...
03/15/2021

Classical (Co)Recursion: Mechanics

Primitive recursion is a mature, well-understood topic in the theory and...
11/09/2017

Higher-order Cons-free Interpreters

Constructor rewriting systems are said to be cons-free if any constructo...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.