BPFK Section: MEX Operators

From Lojban
Jump to: navigation, search
This page is imported from version 37 of the page BPFK Section: MEX Operators from the lojban Tiki.

Contents

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.