Exclusive orExclusive or or exclusive disjunction or exclusive alternation, also known as non-equivalence which is the negation of equivalence, is a logical operation that is true if and only if its arguments differ (one is true, the other is false). It is symbolized by the prefix operator and by the infix operators XOR (ˌɛks_ˈɔ:r, ˌɛks_ˈɔ:, 'ksɔ:r or 'ksɔ:), EOR, EXOR, , , , ⩛, , and . It gains the name "exclusive or" because the meaning of "or" is ambiguous when both operands are true; the exclusive or operator excludes that case.
Operation (mathematics)In mathematics, an operation is a function which takes zero or more input values (also called "operands" or "arguments") to a well-defined output value. The number of operands is the arity of the operation. The most commonly studied operations are binary operations (i.e., operations of arity 2), such as addition and multiplication, and unary operations (i.e., operations of arity 1), such as additive inverse and multiplicative inverse. An operation of arity zero, or nullary operation, is a constant.
Reverse Polish notationReverse Polish notation (RPN), also known as reverse Łukasiewicz notation, Polish postfix notation or simply postfix notation, is a mathematical notation in which operators follow their operands, in contrast to Polish notation (PN), in which operators precede their operands. It does not need any parentheses as long as each operator has a fixed number of operands. The description "Polish" refers to the nationality of logician Jan Łukasiewicz, who invented Polish notation in 1924.
Additive inverseIn mathematics, the additive inverse of a number a (sometimes called the opposite of a) is the number that, when added to a, yields zero. The operation taking a number to its additive inverse is known as sign change or negation. For a real number, it reverses its sign: the additive inverse (opposite number) of a positive number is negative, and the additive inverse of a negative number is positive. Zero is the additive inverse of itself. The additive inverse of a is denoted by unary minus: −a (see also below).
Higher-order functionIn mathematics and computer science, a higher-order function (HOF) is a function that does at least one of the following: takes one or more functions as arguments (i.e. a procedural parameter, which is a parameter of a procedure that is itself a procedure), returns a function as its result. All other functions are first-order functions. In mathematics higher-order functions are also termed operators or functionals. The differential operator in calculus is a common example, since it maps a function to its derivative, also a function.
Function (mathematics)In mathematics, a function from a set X to a set Y assigns to each element of X exactly one element of Y. The set X is called the domain of the function and the set Y is called the codomain of the function. Functions were originally the idealization of how a varying quantity depends on another quantity. For example, the position of a planet is a function of time. Historically, the concept was elaborated with the infinitesimal calculus at the end of the 17th century, and, until the 19th century, the functions that were considered were differentiable (that is, they had a high degree of regularity).
CurryingIn mathematics and computer science, currying is the technique of translating the evaluation of a function that takes multiple arguments into evaluating a sequence of functions, each with a single argument. For example, currying a function that takes three arguments creates a nested unary function , so that the code gives the same value as the code or called in sequence, In a more mathematical language, a function that takes two arguments, one from and one from , and produces outputs in by currying is translated into a function that takes a single argument from and produces as outputs functions from to This is a natural one-to-one correspondence between these two types of functions, so that the sets together with functions between them form a .
Partial applicationIn computer science, partial application (or partial function application) refers to the process of fixing a number of arguments to a function, producing another function of smaller arity. Given a function , we might fix (or 'bind') the first argument, producing a function of type . Evaluation of this function might be represented as . Note that the result of partial function application in this case is a function that takes two arguments. Partial application is sometimes incorrectly called currying, which is a related, but distinct concept.
Successor functionIn mathematics, the successor function or successor operation sends a natural number to the next one. The successor function is denoted by S, so S(n) = n + 1. For example, S(1) = 2 and S(2) = 3. The successor function is one of the basic components used to build a primitive recursive function. Successor operations are also known as zeration in the context of a zeroth hyperoperation: H0(a, b) = 1 + b. In this context, the extension of zeration is addition, which is defined as repeated succession.
Argument of a functionIn mathematics, an argument of a function is a value provided to obtain the function's result. It is also called an independent variable. For example, the binary function has two arguments, and , in an ordered pair . The hypergeometric function is an example of a four-argument function. The number of arguments that a function takes is called the arity of the function. A function that takes a single argument as input, such as , is called a unary function.