Fixed point combinators (and their generalization: looping combinators) are classic notions belonging to the heart of lambda-calculus and logic. We start with an exploration of the structure of fixed point combinators (fpc's), vastly generalizing the well-known fact that if Y is an fpc, Y(SI) is again an fpc, generating the Boehm sequence of fpc's. Using the infinitary lambda-calculus we devise infinitely many other generation schemes for fpc's. In this way we find schemes and building blocks to construct new fpc's in a modular way. Having created a plethora of new fixed point combinators, the task is to prove that they are indeed new. That is, we have to prove their beta-inconvertibility. Known techniques via Boehm Trees do not apply, because all fpc's have the same Boehm Tree (BT). Therefore, we employ `clocked BT's', with annotations that convey information of the tempo in which the data in the BT are produced. BT's are thus enriched with an intrinsic clock behaviour, leading to a refined discrimination method for lambda-terms. The corresponding equality is strictly intermediate between beta-convertibility and BT-equality, the equality in the classical models of lambda-calculus. An analogous approach pertains to Levy-Longo Berarducci trees. Finally, we increase the discrimination power by a precision of the clock notion that we call `atomic clock'.
The theory of sage birds (technically called fixed point combinators) is a fascinating and basic part of combinatory logic; we have only scratched the surface. R. Smullyan [17].
Böhm trees constitute a well-known method to discriminate λ-terms M , N : if BT(M ) and BT(N ) are not identical, then M and N are β-inconvertible, M = β N . But how do we prove β-inconvertibility of λ-terms with the same BT?
This question was raised in Scott [16] for the interesting equation BY = BY S between terms that as Scott noted are presumably β-inconvertible, yet BTequal (= BT ). Scott used his Induction Rule to prove that BY = BT BY S; instead we will employ below the infinitary λ-calculus with the same effect, but with more convenience for calculations as a direct generalization of finitary λ-calculus. Often one can solve such a β-discrimination problem by finding a suitable invariant for all the β-reducts of M , N . Below we will do this by way of preparatory example for the fpc’s in the Böhm sequence. But a systematic method for this discrimination problem has been lacking, and such a method is one of the two contributions of this paper. Actually, the need for such a strategic method was forced upon us, by the other contribution, because Scott’s equation BY = BY S turned out to be the key unlocking a plethora of new fpc’s. The new generation schemes are of the form: if Y is a fpc, then Y P 1 . . . P n is a fpc, abbreviated as Y ⇒ Y P 1 . . . P n . So P 1 . . . P n is a ‘fpc-generating’ vector, and can be considered as a building block to make new fpc’s. But are they indeed new? A well-known example of a (singleton)-fpc-generating vector is δ, where δ = SI, giving rise when starting from Curry’s fpc to the Böhm sequence of fpc’s. Here another interesting equation is turning up, namely Y = Y δ, for an arbitrary fpc Y , considered by Statman and Intrigila. In fact, it is implied by Scott’s equation:
The first equation BY = BY S will yield many new fcp’s, built in a modular way; the last equation Y = Y δ addresses the question whether they are indeed new. Finding ad hoc invariant proofs for their novelty is too cumbersome. But fortunately, it turns out that although the new fpc’s all have the same BT, namely λf.f ω , they differ in the way this BT is formed, in the ’tempo of formation’, where the ticks of the clock are head reduction steps. More generally, we can discern a clock-like behaviour of BT’s, that enables us to discriminate the terms in question. However, this refined discrimination method does not work for all λ-terms; only for a class of ‘simple’ terms, that still is fairly extensive; it includes all fpc’s that are constructed in the modular way that we present, thereby solving our novelty problem. In fact, we gain some more ground: though our discrimination method works best for pairs of simple terms, it can also fruitfully be applied to compare a simple term with a non-simple term, and with some more effort, we can even compare and discriminate two non-simple terms.
Even so, many pairs of fpc’s cannot yet be discriminated, because they not only have the same BT, they also have the same clocked BT. Therefore, in a final grading up of the precision, we introduce ‘atomic clocks’, where the actual position of a head reduction step is administrated. All this pertains not only to the BT-semantics, but also to Lévy-Longo Trees (LLT) (or lazy trees), and Berarducci Trees (BeT) (or syntactic trees). Many problems stay open, in particular problems generalizing the equation of Statman and Intrigila, when arbitrary fpc’s are considered -indeed, we have only scratched the surface.
To make this paper moderately self-contained, and to fix notations, we lay out some ingredients. For λ-calculus we refer to [2] and [5]. For an introduction to Böhm, Berarducci and Lévy-Longo trees, we refer to [2,1,6,3]. Definition 1. λ-terms are defined by the grammar:
We let Ter (λ) denote the set of λ-terms, and use M, N, . . . to range over the elements of Ter (λ). The relation → β is the compatible closure (i.e., closure under term formation) of the β-rule:
where M [N/x] denotes the result of substituting N for all free occurrences of x in M . Furthermore, we use ։ β to denote the reflexive-transitive closure of → β .
We write M = β N to denote that M is β-convertible with N , i.e., = β is the equivalence closure of → β . For syntactic equality (modulo renaming of bound variables), we use ≡. We will often omit the subscript β in → β and ։ β , but not so for = β , in order to reserve = for definitional equality. A λ-term M are called normal form if there exists no N with M → N . We say that a term M has a normal form if it reduces to one. For λ-terms M having a normal form we write M for the unique normal form N with M ։ N (note that uniqueness follows from confluence of the λ-calculus).
Some commonly used combinators are:
A position is a sequence over {0, 1, 2}. The subterm M | p of M at position p is defined by:
A wfpc is alterna
This content is AI-processed based on open access ArXiv data.