BPFK Section: MEX Operators
- This page is imported from version 37 of the page BPFK Section: MEX Operators from the lojban Tiki.
Proposed Definitions And Examples
cmavo: fu'u (VUhU0)
Proposed definition
An elliptical/unspecified mathematical operator. This is semantic analogue of {zo'e}, {co'e}
See Also
Proposed keyword
- unspecified operator
Usage Examples
- li pa fu'u pa du li re
- 1 'something' 1 is 2
cmavo: ge'a (VUhU0)
Proposed definition
A null operator, in the sense that it returns all its arguments unchanged. Used as syntactic glue in poly-ary operators, such as to pass three arguments to a ternary operator in infix notation.
See Also
- {tu'o} — Null operand
Proposed keyword
- null operator
Usage Examples
- papano bi'eju'u re gei pipanopano bi'eju'u re ge'a re
- .1010 (base 2) × 2 ~94~ 110 (base 2) (CLL, 18.14.4)
cmavo: fe'i (VUhU1)
Proposed definition
The n-ary operation of division. Divides the first argument by all subsequent ones in a left associative manner: x1 / x2 / x3 ...
See Also
Proposed keyword
- Division
- Divides
Usage Examples
- li na'u tanjo te'u vei pai fe'i vo [ve'o] du li pa
- tan( pi / 4 ) = 1 (CLL, variation of 18.18.1)
Notes
- The operands of fe'i are numbers, and a fe'i expression evaluates to a number.
- When fe'i has only one operand, it is the identity function.
- Distinct from the fraction slash {fi'u} in that it is an operator (and not of selma'o PA).
cmavo: pi'i (VUhU1)
Proposed definition
The n-ary operation of multiplication. Multiplies all the arguments together in a left associative manner: x1 * x2 * x3 ...
See Also
Proposed keywords
- multiplication
- multiply
- times
Usage Examples
- li ci su'i vo pi'i mu du li cimu
- 3 + 4 × 5 = 35 (CLL, 18.5.8)
Notes
- When reducing a pi'i expression from left to right, the types of the two operands considered at each point must together take one of the following forms:
- number and number -- standard mathematical multiplication; evalutes to a number
- number and matrix or matrix and number -- scaling the elements of a matrix by a factor; evaluates to a matrix
- number and array of numbers or array of numbers and number -- scaling the elements of an array by a factor; evaluates to an array of numbers
- matrix and matrix -- standard matrix multiplication; the number of columns in the first matrix must equal the number of rows in the right matrix, otherwise the result is undefined; evaluates to a matrix
- matrix and array of numbers -- The operator sa'i is implicitly applied to the array, and the expression is then evaluated as a matrix-matrix multiplication, yielding a one-column matrix that is then implicitly converted to an array of the numbers in its column.
- When pi'i has only one operand, it is the identity function.
cmavo: su'i (VUhU1)
Proposed definition
The n-ary operation of addition. Adds all the arguments together in a left associative manner: x1 + x2 + x3 ...
See Also
- {ma'u}
Proposed keywords
- plus
- add
- addition
Usage Examples
- li pa su'i pa du li re
- 1 + 1 = 2 (CLL, 18.5.1)
- li ma'u pa su'i ni'u pa du li no
- +1 + -1 = 0 (CLL, 18.5.5)
Notes
- {su'i} is the operation of addition, addition from the plus sign that indicates a positive number {ma'u}
cmavo: vu'u (VUhU1)
Proposed definition
The n-ary operation of subtraction. Takes the first argument as subtracts all subsequent ones in a left associative manner: x1 - x2 - x3 ...
See Also
- {va'a}
- {ni'u}
Proposed keyword
- subtract
- minus
Usage Examples
- li ci vu'u re du li ma'u
- the-number 3 - 2 = some-positive-number (CLL, 18.8.14)
- li tu'o va'a ny. du li no vu'u ny.
- -n = 0 - n (CLL, 18.14.1)
Notes
This is the operator for subtraction. It is distinct from {va'a} which is the operator for negation, and also from {ni'u} which is a minus sign and is part of the number
cmavo: fa'i (VUhU2)
Proposed definition
The unary operation of inverting. It returns the reciprocal of the given number: 1 / x1
See Also
- {fi'u}
Proposed keyword
- inverse
- reciprocal
Usage Examples
- li fa'i vei pa su'i pa du li fi'u re
- Reciprocal of (1 + 1) = 1/2
Notes
This is performs similar to {fi'u}. There are differences though. This is an operator and thus may take a mekso operand as an argument, whereas {fi'u} is part of PA and so is part a number.
cmavo: gei (VUhU2)
Proposed definition
This operator is a trinary operator that mimics scientific notation. It is designed so that arguments can be omitted to give magnitudes quickly. gei x1 x2 x3 = x_2 * (x_3 ~94~ x_1). x_3 defaults to 10; so gei x1 x2 = x2 * 10 ~94~ x1. x_2 defaults to 1; so gei x1 = 10 ~94~ x1
See Also
Proposed keyword
- scientific notation
Usage Examples
- li cinonoki'oki'o du li bi gei ci
- 300,000,000 = 3 * 10~94~8 (CLL, 18.14.2)
- gei reno
- 10~94~20 (CLL, 18.14.3)
- papano bi'eju'u re gei pipanopano bi'eju'u re ge'a re
- .1010_2 * 2 ~94~ 110_2 (CLL, 18.14.4)
Notes
cmavo: ju'u (VUhU2)
Proposed definition
The binary operation that indicates the number base of its first argument: x1 is in base x2
See Also
Proposed keyword
- base
- number base
- radix
Usage Examples
- li pa no pa no ju'u re du li pa no
- 1010 base 2 = 10 (CLL, 18.10.1)
- li daufeigai ju'u paxa du li rezevobi
- ABC base 16 = 2748 (CLL, 18.10.2)
- li pa pi'e re pi'e ci ju'u reno du li vovoci
- 1;2;3 base 20 = 443 (CLL, 18.10.7)
- li pa pi'e vo pi ze ju'u reno du li re vo pi ci mu
- 1;4.7 base 20 = 24.35 (CLL, 18.10.10)
Notes
For bases up to 16 Lojban has numerals you can use. But for bases greater than 16, use {pi'e} to separate the place values. {pi} is used as radix point in any base.
Issues
Ilmen: Does it make sense to have {ju'u} being a mathematical operator and not a PA? The number base of a positional number notation is an inherent part thereof, and not the operand of some function converting a number into another one.
cmavo: pa'i (VUhU2)
Proposed definition
The binary operation that returns the ratio of its two arguments: the ratio of x1 to x2.
See Also
Proposed keyword
- ratio
Usage Examples
( ! no correct natural usage ! )
Artificial Example:
li pa pa'i pa du li mo'e lo ninmu pa'i mo'e lo nanmu
"the ratio 1 to 1 is equal to the ratio of men to woman"
Notes
No examples in CLL and none turned up searching lojban.org
cmavo: te'a (VUhU2)
Proposed definition
The binary operation of exponentiation: x1 to the power of x2
Proposed keyword
- exponential
- power
Usage Examples
- li vei ny. su'i pa ve'o pi'i vei ny. su'i pa [ve'o] du li ny. [bi'e] te'a re su'i re bi'e pi'i ny. su'i pa
- (n + 1)(n + 1) = n~94~2 + 2n + 1 (CLL, 18.5.10)
Notes
cmavo: cu'a (VUhU3)
Proposed definition
The unary operation of taking an absolute value or norm: the absolute value of x1
See Also
Proposed keyword
- absolute value
- norm
Usage Examples
24 Mar 2005 07:54:02 <Broca> doi jbokaj li cu'a ni'u re
- li cu'a ni'u re du li re
- |-2| = 2
Notes
cmavo: de'o (VUhU3)
Proposed definition
The binary operation of logarithm. The default value of x2 is either 10 or e, depending on context. log x1 in base x2
See Also
Proposed keyword
- log
- ln
- logarithm
Examples of cu'a Usage
- li de'o pa du li no
- ln 1 = 0
Notes
cmavo: fe'a (VUhU3)
Proposed definition
The binary operation of taking an nth root. The default is to take a square root. The x2-th root of x1.
See Also
Proposed keyword
- root
- square root
- nth root
Examples of fe'a Usage
- li fe'a vei by. bi'ete'a re vu'u vo bi'epi'i .abu bi'epi'i cy. ve'o
- the square root of (b^2 - 4ac) (CLL, 18.17.6)
Notes
cmavo: ne'o (VUhU3)
Proposed definition
The factorial function. The factorial of x1.
See Also
Proposed keyword
- factorial
- gamma function
Usage Examples
- li ne'o mu du li pareno
- 5! = 120
Notes
The definition could easily be expanded to non integer arguments by identification with a suitable modification of the gamma function (z! = \Gamma(z-1)). It depends how stringent the community wants to be with the initial definitions and how much they want to leave up to usage.
cmavo: va'a (VUhU3)
Proposed definition
The unary operation giving the additive inverse of a number. For most people, this is a fancy way of saying the negative of a number.
See Also
- {ni'u}
- {vu'u}
Proposed keyword
- additive inverse
Usage Examples
- li py. su'i va'a ny. ku'e su'i zy du li xy.
- p + (-n) + z = x (CLL, 18.6.2)
Notes
- This is distinct from the minus sign {ni'u} and subtraction {vu'u}.
- This operator (and multiplicative inverse now that I think of it) could be made more useful if there was an explicit link to abstract algebra (specifically groups and rings). Consider it on my maybe-to-do list. mi'e Ross
cmavo: pi'a (VUhU4)
Proposed definition
This n-ary operator takes vectors as operands and forms them into the rows of a matrix. The matrix with rows x1, x2, x3, ...
See Also
- {jo'i}
- {sa'i}
Proposed keyword
- matrix
- row matrix
- row
Examples of pi'a Usage
- jo'i biboi paboi xa pi'a jo'i ciboi muboi ze ge'a jo'i voboi soboi re
- {| class="wikitable"
| 8||1||6 |- | 3||5|| 7 |- | 4||9||2 |} (CLL, 18.15.2)
re'a (VUhU4)
Proposed definition
The unary operation of transposing a matrix.
See Also
Proposed keyword
- transpose
- matrix transposition
Usage Examples
- li re'a vei jo'i paboi re pi'a jo'i ciboi vo du li jo'i paboi ci pi'a jo'i reboi vo
- The transpose of the matrix ( (1 2)(3 4) ) = ( (1 3)(2 4) )
cmavo: ri'o (VUhU4)
Proposed Definition
The trinary operation of taking the definite integral of a function. The integral of x1 with respect to x2 over range x3
See Also
Proposed Keywords
- integral
- integration
Usage Examples
- li ri'o pa xy. no bi'e bi'o pa du li pa
- The integral of 1 with respect to x from 0 to 1 is equal to 1
Notes
This definition should be extended somehow to accommodate indefinite integration. I suggest that indefinite integration should be the interpretation when x3 is omitted. I'm not sure whether the grammar is capable of polymorphic operators like this. Other options/ways to get this behaviour is to default x3 to no bi'o ty (recover indefinite integrals as parameter integrals), or make it the indefinite when x3 is filled with mo'e zi'o.
This definition is (rather sneakily) fully compatible with a Lebesgue definition of integration. Just give a measurable function as x1, a measure to x2 and measurable set to x3.
cmavo: sa'i (VUhU4)
Proposed Definition
This n-ary operator takes vectors as operands and forms them into the columns of a matrix. The matrix with the columns x1, x2, x3, ...
See also
- {pi'a}
- {jo'i}
Proposed Keywords
- matrix
- column matrix
- columns
Examples of sa'i Usage
- jo'i biboi ciboi vo sa'i jo'i paboi muboi so ge'a jo'i xaboi zeboi re
- {| class="wikitable"
| 8||1||6 |- | 3||5||7 |- | 4||9||2 |}(CLL, 18.15.3)
cmavo: sa'o (VUhU4)
Proposed Definition
The trinary operation of taking the derivative of a function. The derivative of x1 with respect to x2 of degree x3. The default value of x3 is 1.
See Also
Proposed Keywords
- derivative
- derive
Examples of sa'o Usage
- li sa'o xy. xy. du li ma'o pa
- The derivative of x with respect to x is the function 1
cmavo: si'i (VUhU4)
Proposed Definition
The trinary operation which lays out the summation of an indexed sequence of expressions. Also known in mathematics as sigma notation. The sum of x1 in a variable x2 over range x3
See Also
Proposed Keywords
- sum
- sigma summation
Usage Examples
- li si'i ky. ky. vei no bi'o ny. du li pimu pi'i ny. pi'i vei ny. su'i pa
- The sum of k from 0 to n is equal to 0.5 x n x ( n+1 )
Impact
There is no changes to the definitions. I've tried to make them follow the CLL as closely as possible. Further since there is so little mekso literature, there is almost nothing to 'break' anyway. I have made a few suggestions to extend the definitions to expand the functionality some operators. This can be ratified formally if the bpfk/community feels that they add to utility more than they subtract in flexibility.
I (mi'e Ross) am not the first person to take up this section. Minimiscience did some work before I came along. He (She?) is obviously a programmer and seem to have been caught up in designing a consistent type system. Evidence of the beginnings of the system has been moved to the section below this. I am of the opinion that we will never be able to describe how these operators work in every context and so we should stick to giving the base definition and allow authors/speakers to use the operators in other contexts in accordance with common mathematical convention. For the moment, the only hangover of Minimiscience's type system in the above definitions is for {pi'i}.
This said, I think there is merit in the idea to specify default values for omitted arguments or alternatively treat the functions as polymorphic and give definitions of different combinations of arguments it gets given. The latter seems blotted/ overkill but would give definite meanings to operators that get passed tu'o. I haven't done either above.
Minimiscience's Type System
- When an expression is here said to be "undefined," it means that, in the absence of external information about the interpretation of the expression, it is semantically void, meaningless, and/or nonsensical.
- Mathematical operators take one or more operands, which are here referred to by an 'x' subscripted with a number.
- Operators defined here as "unary" are defined as operating on their first operand that is not equal to tu'o (referred to as "the operand" within the respective definitions), regardless of where it occurs in the operand list.
- See also: CLL section 18.16, example 16.3 and the paragraph before it, in which the operand of va'a is in the x_1 place; CLL section 18.14, example 14.1, in which the operand of va'a is in the x_2 place.
- If all operands of an operator are tu'o, the value of the expression is equal to tu'o.
- If an operand described in an operator's definition is missing from the operator's operand list and there is no default value given, the missing operand shall be interpreted as tu'o.
- If one or more extra operands not described in an operator's definition are present in the operator's operand list, they affect the evaluation in an undefined or unspecified manner analogous to sumti attached to a selbri with do'e.
- Lojban mathematical operators are defined in terms of conventional mathematical operators, and thus there is an implicit type system used in determining the value of an expression. Mekso operands may be of any of the following types:
- number -- a "number" production in the formal grammar, usually corresponding to an element of the complex plane
- array -- an array, vector, ordered list/set, or tuple of one or more mekso values, constructed using jo'i
- matrix -- a composition of one or more arrays of numbers, all of the same size, constructed using pi'a or sa'i
- function
- If an operator is applied to operands of a type which its definition does not address, the expression is undefined.
- The operand tu'o is polymorphic; its type in an expression is determined by its surrounding context.
- Operator-specific type information (currently in the "Notes" subsections) needs to be included in the main definitions somehow without being too clunky.