Recursive Predicate for Building Chains

From Lojban
Jump to navigation Jump to search

Our motivation is the following: we want a predicate that takes two arbitrary sumti of the same type, a binary predicate, and a number, to construct a chain of applications of that predicate along intermediate values to "connect" the two sumti. This is the nature of constructs such as great-great-grandfather and three days from now and the friend of a friend of a friend of mine, which as we have seen through usage, are difficult to concisely express. However, the underlying principle of all these constructs words is the same. We propose a predicate to construct such chains, of arbitrary length, defined as follows in Lojban:

.i lo ka broda cu ka ko'a ko'e fo'a fo'e ce'ai lo du'u fo'a li pa dubmau kei goi dy zo'u ge ganai me'au dy gi ko'a me'au fo'e lo broda be ko'e bei li mo'e fo'a vu'u pa bei fo'e gi ga me'au dy gi ko'a ko'e me'au fo'e

Note that the definition is primitive recursive in its third argument. The predicate yields a non-terminating computation for values in its x3 that are less than or equal to zero.

The definition uses the experimental cmavo ce'ai and me'au, but they are used only for convenience here. It is left as an exercise to the reader to rewrite the definition to use {ce'u goi} and {ckini}, respectively.

From this predicate, we have the following relation, which shows what happens in the cases where we supply the number 3 as the x3.

.i go ko'a brode lo brode be lo brode be ko'e gi ko'a ko'e broda li ci lo ka [ce'u] [ce'u] brode

Even a tentative translation of the definition to English would be somewhat difficult; we will simply list how the sumti places interact without giving a definition as one would expect in a dictionary.

  • x1, x2: arbitrary sumti of the same type
  • x3: the number of applications separating these sumti in the chain
  • x4: a binary predicate used to build the chain connecting the x1 and x2.

Of course, we can apply the usual technique of the flipping principle to make concise and easily-interpretable tanru: ko'a ko'e brode broda li ci


  • the day three days from now -> lo bavlamdei broda be fi li ci
  • my great-great-grandfather (a parent of a parent of a parent of a parent of a parent of mine) -> lo rirni broda be mi bei li mu
  • a friend of a friend of a friend of mine -> lo pendo broda be mi bei li vo
  • The idea of the food chain is naturally evoked by lo si'o broda fo lo ka citka.

All that remains is to choose an adequate word for this predicate. We would expect to use a zi'evla, at least until we realize that this word is so useful that we choose to make it a gismu.

  • Ilmen: I've assigned ki'inmoi to that predicate. mi'e la .ilmen. mu'o 12:49, 3 May 2016 (PDT)