DeepAI AI Chat
Log In Sign Up

A unified treatment of structural definitions on syntax for capture-avoiding substitution, context application, named substitution, partial differentiation, and so on

04/08/2022
by   Tom Hirschowitz, et al.
0

We introduce a category-theoreticabstraction of a syntax with auxiliary functions, called an admissiblemonad morphism. Relying on an abstract form of structural recursion,we then design generic tools to construct admissible monad morphismsfrom basic data. These tools automate ubiquitous standard patternslike (1) defining auxiliary functions in successive, potentiallydependent layers, and (2) proving properties of auxiliary functions byinduction on syntax. We cover significant examples from theliterature, including the standard lambda-calculus withcapture-avoiding substitution, a lambda-calculus with bindingevaluation contexts, the lambda-mu-calculus with named substitution, andthe differential lambda-calculus.

READ FULL TEXT

page 1

page 2

page 3

page 4

04/24/2023

On the Expressive Power of Schemes

We present a calculus, called the scheme-calculus, that permits to expre...
10/29/2020

Linearizing Combinators

In 2017, Bauer, Johnson, Osborne, Riehl, and Tebbe (BJORT) showed that t...
02/04/2020

Cartesian Difference Categories: Extended Report

Cartesian differential categories are categories equipped with a differe...
09/15/2020

String Diagrams for Regular Logic (Extended Abstract)

Regular logic can be regarded as the internal language of regular catego...
09/13/2022

Monadic and Comonadic Aspects of Dependency Analysis

Dependency analysis is vital to several applications in computer science...
09/06/2022

Variable binding and substitution for (nameless) dummies

By abstracting over well-known properties of De Bruijn's representation ...
04/08/2022

SeCaV: A Sequent Calculus Verifier in Isabelle/HOL

We describe SeCaV, a sequent calculus verifier for first-order logic in ...