Creative Commons Attribution 3.0 Unported license
B-terms are built from the B combinator alone defined by B == lambda f.lambda g.lambda x. f~(g~x), which is well-known as a function composition operator. This paper investigates an interesting property of B-terms, that is, whether repetitive right applications of a B-term cycles or not. We discuss conditions for B-terms to have and not to have the property through a sound and complete equational axiomatization. Specifically, we give examples of B-terms which have the property and show that there are infinitely many B-terms which do not have the property. Also, we introduce a canonical representation of B-terms that is useful to detect cycles, or equivalently, to prove the property, with an efficient algorithm.
@InProceedings{ikebuchi_et_al:LIPIcs.FSCD.2018.18,
author = {Ikebuchi, Mirai and Nakano, Keisuke},
title = {{On Repetitive Right Application of B-Terms}},
booktitle = {3rd International Conference on Formal Structures for Computation and Deduction (FSCD 2018)},
pages = {18:1--18:15},
series = {Leibniz International Proceedings in Informatics (LIPIcs)},
ISBN = {978-3-95977-077-4},
ISSN = {1868-8969},
year = {2018},
volume = {108},
editor = {Kirchner, H\'{e}l\`{e}ne},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.FSCD.2018.18},
URN = {urn:nbn:de:0030-drops-91882},
doi = {10.4230/LIPIcs.FSCD.2018.18},
annote = {Keywords: Combinatory logic, B combinator, Lambda calculus}
}