mekso at-most-4-ary operator: a rounding function; ordered input list is (x,n,m,t) and the output is b(-t) × round(bt × x), with rounding preference n and where the fractional part of bt × x being 1/2 causes the function to map bt × x to the nearest integer of form 2Z+m, for base b and an integer Z determined by context
x must be a real number; n must be exactly one of exactly the following: -1, 0, 1; m must be 0 xor 1 if defined at all; t must be an integer if defined at all; the output is a real number. n does not have a contextless default value. m is defined iff n = 0; if m is undefined, then its slot is automatically and implicitly deleted from this word in that context (so the operator is at-most-3-ary and a third argument would fill the 't' slot under the condition that t is defined). If m is defined, then its contextless default value is m = 0. It first determines the base being used for interpretation of digit strings (determined by context or by explicit specification (JUhAU)) for x; this determination takes place even before inputs are accepted after x; let this base be represented by b throughout this description. If the base is not a positional system wherein each digit represents a corresponding multiple of a fixed natural number raised to the power of its position (as determined relative to the radix point) and wherein the overall number is the sum of these results/representands, then t is defined; if the base is sufficiently bad or unclear, then t is undefined; if t is undefined, then its slot is automatically and implicitly deleted from this word in that context (so the operator is at-most-3-ary and its input acceptance is terminated by the n or m slot, whichever one is later yet defined) and b = 1 for the purposes of this definition (but not for any digit-to-number interpretation/conversion!). If t is defined, then its contextless default value is t = 0. The rounding function, determined by n, is performed (bt)×x. If n = 1, then the rounding function is the ceiling function: (bt)×x is mapped to the least integer that is greater than or equal to it. If n = -1, then the rounding function is the floor function: (bt)×x is mapped to the greatest integer that is less than or equal to it. These integers are both determined by the ordering and metric. If n = 0, then the rounding function maps (bt)×x to the integer that minimizes the metric distance between itself and (bt)×x if a unique such integer exists (id est: (bt)×x is mapped to the nearest integer, where "nearest"-ness is determined according to the order and metric); if no such unique integer exists, then (bt)×x is mapped to the unique integer among these aforementioned options for which there exists an integer Z such that 2Z+m is the integer in question; if no unique such integer exists, then the function is undefined. Thus n = 0 produces the commonly used unbiased nearest-integer rounding function. In each of these cases, the output of the rounding function is then multiplied by b(-t). Thus, it rounds at the tth digit, so to speak. The order on, and the operators and metric endowing, the metric space and field of all real numbers is determined by context or by explicit specification.