A Lambda Term Representation Inspired by Linear Ordered Logic

A Lambda Term Representation Inspired by Linear Ordered Logic
Notice: This research summary and analysis were automatically generated using AI technology. For absolute accuracy, please refer to the [Original Paper Viewer] below or the Original ArXiv Source.

We introduce a new nameless representation of lambda terms inspired by ordered logic. At a lambda abstraction, number and relative position of all occurrences of the bound variable are stored, and application carries the additional information where to cut the variable context into function and argument part. This way, complete information about free variable occurrence is available at each subterm without requiring a traversal, and environments can be kept exact such that they only assign values to variables that actually occur in the associated term. Our approach avoids space leaks in interpreters that build function closures. In this article, we prove correctness of the new representation and present an experimental evaluation of its performance in a proof checker for the Edinburgh Logical Framework. Keywords: representation of binders, explicit substitutions, ordered contexts, space leaks, Logical Framework.


💡 Research Summary

The paper introduces a novel nameless representation for λ‑terms that embeds precise information about free‑variable occurrences directly into the syntax tree, drawing inspiration from ordered (non‑commutative) linear logic. Traditional approaches such as de Bruijn indices or explicit‑substitution calculi either separate binding information between λ‑abstractions and variable occurrences, requiring a traversal to discover which variables are bound, or they build closures whose environments contain values for every syntactically in‑scope variable, even when many of those values are never used. The latter leads to space leaks because the garbage collector cannot reclaim the unused values.

The authors’ key insight is to treat the context of free variables as an ordered list, mirroring the ordered context discipline of non‑commutative linear logic where hypotheses must be used in the order they appear. In this setting, an application node stores a single integer m that denotes how many free‑variable occurrences belong to the function part; the remaining occurrences belong to the argument part. Consequently, during evaluation the environment can be split at the exact position m without any additional analysis.

A λ‑abstraction is annotated with a vector ~k =


Comments & Academic Discussion

Loading comments...

Leave a Comment