Ternary operation

From testwiki
Revision as of 00:40, 4 February 2025 by imported>Rgdboer (Examples: lk Directed line segment, correct equality)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Template:Short description In mathematics, a ternary operation is an n-ary operation with n = 3. A ternary operation on a set A takes any given three elements of A and combines them to form a single element of A.

In computer science, a ternary operator is an operator that takes three arguments as input and returns one output.[1]

Examples

Given A, B and point P, geometric construction yields V, the projective harmonic conjugate of P with respect to A and B.

The function T(a,b,c)=ab+c is an example of a ternary operation on the integers (or on any structure where + and × are both defined). Properties of this ternary operation have been used to define planar ternary rings in the foundations of projective geometry.

In the Euclidean plane with points a, b, c referred to an origin, the ternary operation [a,b,c]=ab+c has been used to define free vectors.[2] Since (abc) = d implies ba = cd, the directed line segments ba and cd are equipollent and are associated with the same free vector. Any three points in the plane a, b, c thus determine a parallelogram with d at the fourth vertex.

In projective geometry, the process of finding a projective harmonic conjugate is a ternary operation on three points. In the diagram, points A, B and P determine point V, the harmonic conjugate of P with respect to A and B. Point R and the line through P can be selected arbitrarily, determining C and D. Drawing AC and BD produces the intersection Q, and RQ then yields V.

Suppose A and B are given sets and (A,B) is the collection of binary relations between A and B. Composition of relations is always defined when A = B, but otherwise a ternary composition can be defined by [p,q,r]=pqTr where qT is the converse relation of q. Properties of this ternary relation have been used to set the axioms for a heap.[3]

In Boolean algebra, T(A,B,C)=AC+(1A)B defines the formula (AB)(¬AC).

Computer science

In computer science, a ternary operator is an operator that takes three arguments (or operands).[1] The arguments and result can be of different types. Many programming languages that use C-like syntax[4] feature a ternary operator, ?:, which defines a conditional expression. In some languages, this operator is referred to as the conditional operator.

In Python, the ternary conditional operator reads x if C else y. Python also supports ternary operations called array slicing, e.g. a[b:c] return an array where the first element is a[b] and last element is a[c-1].[5] OCaml expressions provide ternary operations against records, arrays, and strings: a.[b]<-c would mean the string a where index b has value c.[6]

The multiply–accumulate operation is another ternary operator.

Another example of a ternary operator is between, as used in SQL.

The Icon programming language has a "to-by" ternary operator: the expression 1 to 10 by 2 generates the odd integers from 1 through 9.

In Excel formulae, the form is =if(C, x, y).

See also

References

Template:Reflist

  1. 1.0 1.1 Template:Cite web
  2. Jeremiah Certaine (1943) The ternary operation (abc) = a b−1c of a group, Bulletin of the American Mathematical Society 49: 868–77 Template:MR
  3. Christopher Hollings (2014) Mathematics across the Iron Curtain: a history of the algebraic theory of semigroups, page 264, History of Mathematics 41, American Mathematical Society Template:ISBN
  4. Template:Cite web
  5. Template:Cite web
  6. Template:Cite web