## Abstract

Ellipses are a meta-linguistic notation for denoting terms the size of which are specified by a meta-variable that ranges over the natural numbers. In this work, we present a systematic approach for encoding such meta-expressions in the λ-calculus, without ellipses: Terms that are parameterized by meta-variables are replaced with corresponding λ-abstractions over actual variables. We call such λ-terms arity-generic. Concrete terms, for particular choices of the parameterizing variable are obtained by applying an arity- generic λ-term to the corresponding numeral, obviating the need to use ellipses. For example, to find the multiple fixed points of n equations, n different λ-terms are needed, every one of which is indexed by two meta-variables, and defined using three levels of ellipses. A single arity-generic λ-abstraction that takes two Church numerals, one for the number of fixed-point equations, and one for their arity, replaces all these multiple fixed-point combinators. We show how to define arity-generic generalizations of two historical fixed-point combinators, the first by Curry, and the second by Turing, for defining multiple fixed points. These historical fixed-point combinators are related by a construction due to Böhm: We show that likewise, their arity-generic generalizations are related by an arity-generic generalization of Böhm’s construction. We further demonstrate this approach to arity-generic λ-definability with additional λ-terms that create, project, extend, reverse, and map over ordered n-tuples, as well as an arity-generic generator for one-point bases.

Original language | American English |
---|---|

Article number | 25 |

Journal | Logical Methods in Computer Science |

Volume | 11 |

Issue number | 3 |

DOIs | |

State | Published - 30 Sep 2015 |

## Keywords

- Arity-generic expressions
- Bases
- Definability
- Fixed-point combinators
- LISP/Scheme
- Lambda calculus
- Variadic functions

## All Science Journal Classification (ASJC) codes

- Theoretical Computer Science
- General Computer Science