
An
Algebra
for
HigherOrder
Terms
Title: 
An Algebra for HigherOrder Terms 
Author:

Lars Hupel

Submission date: 
20190115 
Abstract: 
In this formalization, I introduce a higherorder term algebra,
generalizing the notions of free variables, matching, and
substitution. The need arose from the work on a verified
compiler from Isabelle to CakeML. Terms can be thought of as
consisting of a generic (free variables, constants, ap plication) and
a specific part. As example applications, this entry provides
instantiations for deBruijn terms, terms with named variables, and
Blanchetteâ€™s
λfree higherorder terms. Furthermore, I
implement translation functions between deBruijn terms and named
terms and prove their correctness. 
BibTeX: 
@article{Higher_Order_TermsAFP,
author = {Lars Hupel},
title = {An Algebra for HigherOrder Terms},
journal = {Archive of Formal Proofs},
month = jan,
year = 2019,
note = {\url{http://isaafp.org/entries/Higher_Order_Terms.html},
Formal proof development},
ISSN = {2150914x},
}

License: 
BSD License 
Depends on: 
Automatic_Refinement, Datatype_Order_Generator, Lambda_Free_RPOs, ListIndex 
