中文
相关论文

相关论文: Course-of-Value Induction in Cedille

200 篇论文

In the Calculus of Dependent Lambda Eliminations (CDLE), a pure Curry-style type theory, it is possible to generically {\lambda}-encode inductive datatypes which support course-of-values (CoV) induction. We present a datatype subsystem for…

编程语言 · 计算机科学 2019-11-05 Christopher Jenkins , Colin McDonald , Aaron Stump

In the calculus of dependent lambda eliminations (CDLE), it is possible to define inductive datatypes via lambda encodings that feature constant-time destructors and a course-of-values induction scheme. This paper begins to address the…

编程语言 · 计算机科学 2020-05-05 Christopher Jenkins , Aaron Stump , Larry Diehl

It is common to model inductive datatypes as least fixed points of functors. We show that within the Cedille type theory we can relax functoriality constraints and generically derive an induction principle for Mendler-style lambda-encoded…

编程语言 · 计算机科学 2018-03-08 Denis Firsov , Richard Blair , Aaron Stump

Large eliminations provide an expressive mechanism for arity- and type-generic programming. However, as large eliminations are closely tied to a type theory's primitive notion of inductive type, this expressivity is not expected within…

编程语言 · 计算机科学 2021-12-16 Christopher Jenkins , Andrew Marmaduke , Aaron Stump

We introduce the notion of identity coercions between non-indexed and indexed variants of inductive datatypes, such as lists and vectors. An identity coercion translates one type to another such that the coercion function definitionally…

编程语言 · 计算机科学 2018-02-05 Larry Diehl , Aaron Stump

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…

计算机科学中的逻辑 · 计算机科学 2015-09-11 Paolo Torrini , Tom Schrijvers

Guided by Tarksi's fixpoint theorem in order theory, we show how to derive monotone recursive types with constant-time roll and unroll operations within Cedille, an impredicative, constructive, and logically consistent pure typed lambda…

编程语言 · 计算机科学 2023-06-22 Christopher Jenkins , Aaron Stump

Calculi with control operators have been studied to reason about control in programming languages and to interpret the computational content of classical proofs. To make these calculi into a real programming language, one should also…

计算机科学中的逻辑 · 计算机科学 2012-10-12 Robbert Krebbers

User defined recursive types are a fundamental feature of modern functional programming languages like Haskell, Clean, and the ML family of languages. Properties of programs defined by recursion on the structure of recursive types are…

编程语言 · 计算机科学 2013-12-11 James Caldwell

This work proposes a dependent type theory that combines functions and session-typed processes (with value dependencies) through a contextual monad, internalising typed processes in a dependently-typed lambda-calculus. The proposed…

编程语言 · 计算机科学 2018-01-25 Bernardo Toninho , Nobuko Yoshida

We present the guarded lambda-calculus, an extension of the simply typed lambda-calculus with guarded recursive and coinductive types. The use of guarded recursive types ensures the productivity of well-typed programs. Guarded recursive…

计算机科学中的逻辑 · 计算机科学 2019-03-14 Ranald Clouston , Aleš Bizjak , Hans Bugge Grathwohl , Lars Birkedal

This paper formalizes and proves correct a compilation scheme for mutually-recursive definitions in call-by-value functional languages. This scheme supports a wider range of recursive definitions than previous methods. We formalize our…

编程语言 · 计算机科学 2010-02-01 Tom Hirschowitz , Xavier Leroy , J. B. Wells

Proof search has been used to specify a wide range of computation systems. In order to build a framework for reasoning about such specifications, we make use of a sequent calculus involving induction and co-induction. These proof principles…

计算机科学中的逻辑 · 计算机科学 2009-09-30 Alwen Tiu , Alberto Momigliano

We present the guarded lambda-calculus, an extension of the simply typed lambda-calculus with guarded recursive and coinductive types. The use of guarded recursive types ensures the productivity of well-typed programs. Guarded recursive…

编程语言 · 计算机科学 2015-01-16 Ranald Clouston , Aleš Bizjak , Hans Bugge Grathwohl , Lars Birkedal

We study induction on the program structure as a proof method for bisimulation-based compiler correctness. We consider a first-order language with mutually recursive function definitions, system calls, and an environment semantics. The…

编程语言 · 计算机科学 2016-11-30 Sigurd Schneider , Gert Smolka , Sebastian Hack

We propose a framework for reasoning about programs that manipulate coinductive data as well as inductive data. Our approach is based on using equational programs, which support a seamless combination of computation and reasoning, and using…

计算复杂性 · 计算机科学 2012-01-06 Daniel Leivant , Ramyaa Ramyaa

We present a deductive approach for the analysis of secure information flows with support for fine-grained policies that include declassifications in the form of delimited information release. By explicitly tracking the dependencies of…

计算机科学中的逻辑 · 计算机科学 2015-09-15 Bart van Delft , Richard Bubel

We propose a call-by-value lambda calculus extended with a new construct inspired by abductive inference and motivated by the programming idioms of machine learning. Although syntactically simple the abductive construct has a complex and…

编程语言 · 计算机科学 2017-10-12 Koko Muroya , Steven Cheung , Dan R. Ghica

Great advances in program analysis would be enabled if it were possible to derive the function of a program from inputs to outputs (or from initial states to final states, depending on how we model program semantics). Efforts to do so have…

计算机科学中的逻辑 · 计算机科学 2023-10-10 Wided Ghardallou , Hessamaldin Mohammadi , Elijah Brick , Ali Mili

Continuation Calculus (CC), introduced by Geron and Geuvers, is a simple foundational model for functional computation. It is closely related to lambda calculus and term rewriting, but it has no variable binding and no pattern matching. It…

计算机科学中的逻辑 · 计算机科学 2014-09-12 Herman Geuvers , Wouter Geraedts , Bram Geron , Judith van Stegeren
‹ 上一页 1 2 3 10 下一页 ›